biztalk server assessment and architecture review
TRANSCRIPT
BizTalk Summit 2013 - London
BizTalk Server 2013 Assessment and Architecture reviewNino CudeleMicrosoft Integration MVPItaly.
• The document• BizTalk Assessment• The Keys
• The story• The strategy• Define achievements • Define objectives• Define results
• The challenge
Agenda
The document
• Structure Ready• Key Learnings Ready• Assessment Ready• Recommendations Ready• Guidelines Ready• Useful for Supplier and Customers
6 month… How much for the document?
In Norway…
Key Integration
More simple...
Disaster recovery
Virtualization
High Availability
Monitoring and Operations
MaxconnectionConfigurationInternet Information Server TEMP Folder ….
Operating System: Database
Clustering and Database LocationConfiguration of BizTalk Server databasesSAN Configuration….
BizTalk Server
Host ConfigurationCLR Thread Pool Host MemoryHost ThrottlingAppDomain ConfigurationTracking HostTracking EventsOrchestration Dehydration/Rehydration Tuning…
ESB ToolkitAccelerators - RFID
Key Areas
• You will have all resource you need• You will have all documentation you
need• You’ll can use all people you want• You will have all information you need• You will have all experts you need• The infrastructure is the best that
you’ll can see ever• You must only ask and you’ll have a
correct response
The perfect world (Customer)
• How much does it cost?• How many people you need?• How many time you need?• Poor documentation• Poor expertise• Little patience (business must run!)
The reality (Customer)
The challenge• What we must check?• What we can use?• Where?• When?• Why?
The approach…
In real time on real cases and on real scenarios
DEMO
The big strategy
Define resultsDefine ObjectivesDefine Achievements
PrepareSurrounded
Organize
DocumentationProvideDeliver
DiscoverIdentifyConduct
Define Achievements • Identify the key persons in company• Surrounded by people prepare and
specialize on individual technologies• Organize a KickOff to present the teams• Explain the evolution strategy• Streams• BizTalk Server• SQL Server• Others streams…
• Assessment Method (for each stream)• Plan of activities
• Prepare tools and document structure
Define objectives• Discover potential enhancements to improve the
scalability and performance of the BizTalk applications
• Identify opportunities for improvement in the infrastructure design
• Conduct a code review to • individuate possible bottlenecks • improve the overall quality of software• Transfer Knowledge to the project team
Define Timeline
Meeting Schedule
Activity Schedule
Figure 6: Establishing a Conservative Schedule
Define results• A document that provide all information about
infrastructure• Provide• best practices to maximize performance• best practices to stability, reliability• best practices to manageability and availability• best practices and guidance regarding possible improvements to the
architecture and code.
• Deliver knowledge to the development team.
Common BizTalk Performance Stuff• Event Logs
• BizTalk Orchestration Debugger
• BizTalk Administration Console
• Group Hub/HAT• BizTalk Host Throttling• .NET Config Settings• Network Monitor• Server Performance
Advisor (SPA)• Archive/Purge Jobs
• SQL Server Profiler• BizTalk Best Practices
Analyzer• Visual Studio Profiler• DebugDiag• Performance Counters• BizTalk Tracing• Adapter Settings• Registry Keys• DTCPing• SQL Query Analyzer• Batch Size?
should categorize the most frequent
BizTalk Server deep stuff
Host ConfigurationCLR Thread Pool Host MemoryHost ThrottlingAppDomain ConfigurationTracking HostTracking EventsOrchestration Dehydration/Rehydration TuningScaling Up and Scaling OutBizTalk Server FixesOrchestrations and Helper ComponentsNesting OrchestrationsInline Sends and Messaging Only Patterns
View in details
PipelinesSchemas and MapsCode Best PracticesWCF Adapters Low LatencyLogging and Error HandlingStoring Configuration DataApplication InstrumentationCachingBusiness Rules EngineBusiness Activity MonitoringPerformance Assessment Software Lifecycle ManagementOperational Readiness
Initial BizTalk Counters• BizTalk : Messaging• Documents received/sec• Documents
processed/sec• XLANG/s
Orchestrations• Orchestrations
completed/sec• Orchestrations
dehydrated/sec• Persistence points/sec• Pending work items
• BizTalk : Message Agent• Message Delivery
Throttling State• Message Publishing
Throttling State
• BizTalk : Message Box : General Counters• Spool Size• Tracking Data Size
• BizTalk : Message Box : Host Counters• Host Queue -- Length
Operating System
MaxconnectionInternet Information Server (IIS)TEMP Folder Windows Server PatchesDisk DefragmentationPage FileNetworkMSDTCSubnetsWindows ServicesAntivirusAnd others…
View in details
Operating System Counters• Logical/Physical Disk• % Idle Time• Average
Seconds/Read/Write• Memory• Free System Page Table
Entries• Pool Non Paged Bytes• Pool Paged Bytes• Available Megabytes• Pages/second
• Processor• % Processor Time• % Privileged Time
• Network• Current Bandwidth• Bytes Total/second• Output Queue Length
• Process• Handle Count• Thread Count• Private Bytes• Virtual Bytes
SQL Server
Clustering and Database LocationConfiguration of BizTalk Server databasesSAN ConfigurationBizTalkDTADbBAMPrimaryImportMultiple MessageBox DatabasesTempDBSQL Server Agent JobsText in Row OptionDatabase Engine Tuning AdvisorPerformance Optimization Of Custom DatabasesSQL Server 2008 Service PackAnd others…
View in details
Tools per technology areaOperating System
Performance MonitorProcess MonitorProcess ExplorerDebugViewDebug Diagnostic Tool of the IIS Diagnostics toolkitDTCTesterDTCPing
SQL
SQL Performance Dashboard ReportsSQL Server 2005 Best Practices AnalyzerSQL ProfilerAnd others..
BizTalk Server
Performance Analysis of Logs (PAL) ToolBizTalk DocumenterBizTalk Server 2006 Best Practices AnalyzerMsgBoxViewerBizTalk Server 2006 Orchestration ProfilerBizUnitLog ParserWiresharkMicrosoft BizTalk LoadGen 2007 ToolAnd others…
Auditing infrastructureGovernanceAbility to perform auditing on all levels, messaging, and eventsVery complete and detailed DashboardsAbility to build very complex queries in a very simple way
biztalk360.com
Customer Example 1 (telegram)
• Symptoms:• BizTalk:• High Stress Levels on
BizTalkMsgBoxDb• Idle resources
• SQL:• Million of deadlocks• Sql Server dead after some hours
of pain
BizTalk Server
MemoryDisk
NetworkAdapter
Processor
SQL Server
MemoryDisk
NetworkProcessor
Circumscribe!!!
Customer Example 1• Diagnosis:• Used wrong transaction
method in the solution• Recommendation(s):• The first check adapter
layer and..
BizTalk Server
MemoryDisk
NetworkAdapterProcessor
SQL Server
MemoryDisk
NetworkProcessor
Customer Example 2 (?)
• Symptoms:• BizTalk:• Event Log: no stress• Idle some resources• Very High latency
• SQL:• laugh
BizTalk Server
MemoryDisk
NetworkAdapter
Processor
SQL Server
MemoryDisk
NetworkProcessor
Circumscribe!!!
Customer Example 2BizTalk Server
MemoryDisk
NetworkAdapter
Processor
SQL Server
MemoryDisk
NetworkProcessor
Antivirus!!!
Hell customers• No memory and sap schemas• Less performance and the first Biztalk
schema database I have seen (BBSEG Mission)
• Lost message, the firs broker assembly I’ve seen
Customer simple Example• Symptoms:• BizTalk is idle• SQL is idle• Network transfers are
very slow• Tip: 100MByte files
should take:• Less than 20 seconds on
100Mbit• Less than 5 seconds on
1Gbit
BizTalk Server
MemoryDisk
NetworkProcessor
SQL Server
MemoryDisk
NetworkProcessor
Customer Example 4• Diagnosis:• Network adapters were
configured improperly• Recommendations:• Explicitly set the
connection speeds on the network adapters
BizTalk Server
MemoryDisk
NetworkProcessor
SQL Server
MemoryDisk
NetworkProcessor
[email protected] http:// www.linkedin.com/in/ninocrudele@ninocrudelehttp://ninocrudele.me/
Contacts
BizTalk Summit 2013 - London