.comment-link {margin-left:.6em;}

Ben Cops

Monday, October 19, 2009

BizTalk DR – marked backups and log shipping process explained

For some reason the MSDN docs around this are a bit grim – Nick Heppleston has a great explanation of the process here;

Configuring BizTalk Backup for Disaster Recovery – Part 1

Read more: http://www.modhul.com/2009/06/29/configuring-biztalk-for-disaster-recovery-part-1

Wednesday, September 23, 2009

64bit XLANG host memory usage, virtualisation overhead & optimising filegroups for the BizTalk databases

Have a look at Ewan Fairweather’s very interesting webcast on BizTalk 2009 performance.  He says they saw a decrease in performance moving from 32bit to 64bit because the default settings for memory allowance for the XLANG hosts (unchanged from 32bit to 64bit) cause excessive dehydration (~70 orchestrations a second, when none should be dehydrated) at memory usage levels appropriate for 64 bit processes.  By optimising these he saw a 33% increase in performance, so if you’re running BizTalk on 64bit this is definitely something to look at during the test and tune cycle.

Default
Optimised
VirtualMemory ThrottlingCritera


OptimalUsage
900
6000
MaximalUsage
1300
6300
PrivateMemory ThrottlingCriteria


OptimalUsage
50
700
MaximalUsage
350
1000
PhysicalMemory ThrottlingCriteria
disabled

Descriptions of the settings here.
Another interesting point is that they showed scaling from 2 to 3, 4 BizTalk servers all doing the same work with one messagebox server caused a performance decrease due to excessive polling on the database.  Performance increased for 3+ BizTalk servers once 3 messagebox SQL servers were used.
They also tested physical vs virtual server performance and saw that virtualisation carries the following overhead:
  • Throughput is down by 13%
  • Latency is up by 15%
One of the other items pointed out is a SQL script that segregates out various objects in the messagebox schema to different file groups.  This caused significant performance improvements.
Optimising Filegroups for the Databases
Also some further links of interest:
BizTalk Server 2009 Performance Optimization Guide
Microsoft BizTalk Server 2009 Operations Guide
BizTalk Server 2009 Hyper-V Guide
Richard Seroter - Interview with Ewan Fairweather

Tuesday, September 08, 2009

Timezone error in ESB toolkit 2.0 - Input string was not in a correct format

Well done to Payal for working this one out.
When you look at the portal webpage on a computer set to the Indian timezone offset (5.5) rather than the UK (currently 1) you get the following error

Input string was not in a correct format.
Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.

Exception Details: System.FormatException: Input string was not in a correct format.

Source Error:


Line 19: if (!string.IsNullOrEmpty(tzoqry))
Line 20:
Line 21: Session["tzo"] =int.Parse ( tzoqry);
Line 22: if (Session["tzo"] == null)
Line 23: //need this to make it work in production


This is because the timezone is passed in the querystring you're redirected to:

http://localhost/ESB.Portal/Home/Homepage.aspx?tzo=5.5

And tzo=5.5 does not parse to an int. If you look at it on a UK machine you're redirected to

http://localhost/ESB.Portal/Home/Homepage.aspx?tzo=1

And it works...

BUG.

ESB toolkit on 64bit

I started with this and gave up - better to go with the flow at the time.
However, here's someone who persisted:

Raj on installing ESB Toolkit 2.0 on Win 2003 64 bit OS

Monday, July 13, 2009

BizTalk ESB Toolkit 2.0 install notes

There’s a few of these about but here’s the list of steps I had to go through to get the thing installed. This was on a from-scratch win2k3 32 bit virtual PC image.

  • Install win2k3 32bit, win2k3 sp2, sql 2k8, vstudio 2008, run windows update
  • Install BizTalk 2009, uddi
  • Install pre-reqs (.net 3.5 sp1, MSChart, vstudio 2008 sp1, visual studio sdk)
  • Install SQL XML 4.0 SP1 from http://www.microsoft.com/downloads/details.aspx?familyid=228DE03F-3B5A-428A-923F-58A033D316E1&displaylang=en
  • Install Enterprise Library 4.1 (this appears to have dropped off the list of items to install in the pre-reqs in the documentation but its still required)
  • Run ESB toolkit 2 installer
  • Import C:\Program Files\Microsoft BizTalk ESB Toolkit 2.0\Microsoft.Practices.ESB.CORE.msi into the BizTalk admin console then run to install the msi itself
  • Do the same with Microsoft.Practices.ESB.ExceptionHandling.msi, but set "overwrite resources" on when importing the msi file into the admin console
  • Do the same with Microsoft.Practices.ESB.JMS.msi, but set "overwrite resources" on when importing the msi file into the admin console - I didn't run this via the command line
  • Run

set-executionpolicy Unrestricted
From powershell to allow the management tool install script to run

  • Extract ESBSource.zip to c:\program files\microsoft BizTalk esb toolkit 2.0\ESBSource
  • Run sn -k Microsoft.Practices.ESB.snk in c:\program files\Microsoft BizTalk esb toolkit 2.0\keys
  • Run c:\program files\microsoft BizTalk esb toolkit 2.0\ESBSource\Samples\Management Portal\Install\Scripts\Management_Install.cmd
    (I had to reinstall MSChart here as it was complaining about not being able to reference the datavisualization controls in system.web.ui - ran the uninstall script, reinstalled MSChart, then ran the install script)
  • Run c:\program files\microsoft BizTalk esb toolkit 2.0\bin\esbconfigurationtool.exe and configure, applying settings between each page. Set up the SSO configuration store
  • Deploy the bam definitions using

"c:\program files\microsoft BizTalk Server 2009\tracking\Bm.exe " deploy-all -DefinitionFile:"C:\Program Files\Microsoft BizTalk ESB Toolkit 2.0\Bam\Microsoft.BizTalk.ESB.BAM.Itinerary.xml"

"c:\program files\microsoft BizTalk Server 2009\tracking\Bm.exe " deploy-all -DefinitionFile:"C:\Program Files\Microsoft BizTalk ESB Toolkit 2.0\Bam\Microsoft.BizTalk.ESB.BAM.Exceptions.xml"

  • Run

C:\Windows\Microsoft.NET\Framework\v3.0\Windows Communication Foundation>ServiceModelReg.exe -r -y



Also - check this blog out for a load more fixes for the endless problems with the portal website

Storage Bin for BizTalk 2004/2006/R2/2009 - July 2009 archive

SAML

A presentation giving a great overview on SAML 2.0

http://www.oasis-open.org/committees/download.php/20520/SAMLV2.0-basics-Oct2006.pdf

Monday, June 29, 2009

IIS Authentication and Access Control Diagnostics Tool

This came in handy debugging the shonky install for the ESB Toolkit 2

Authentication and Access Control Diagnostics 1.0 (x86)

I was getting an error in the event log;

“The remote server returned an error: (401) Unauthorized”

The tool pointed me at the ESB.Exceptions.Service virtual directory.  Loading the .svc file in here directly led me to change the authentication provider to “Negotiate,NTLM”

C:\Inetpub\AdminScripts>cscript adsutil.vbs set w3svc/NTAuthenticationProviders
"Negotiate,NTLM"