Pokazywanie postów oznaczonych etykietą BizTalk. Pokaż wszystkie posty
Pokazywanie postów oznaczonych etykietą BizTalk. Pokaż wszystkie posty

wtorek, stycznia 05, 2010

Monitoring pracy systemu podczas obciążenia BizTalka


Szczytowy zapis na wirtualny dysk VMware z punktu widzenia systemu gościa (W2K8 32-bit) to prawie 5MB/s, średnio poniżej 400KB/s. System działa z wyłączonym swapem i włączonym write cache-em.

A teraz wyniki testu Filesystems SiSoft Sandra:

Buffered read: 562 MB/s
Sequential read: 98.43 MB/s
Random read: 44.83 MB/s
Buffered write: 122.38 MB/s
Sequential write: 90.65 MB/s
Random write: 42.65 MB/s
Random access time: 12.15 ms

Tak więc podsystem dyskowy nie powoduje ograniczenia wydajności.

Średni czas dla usługi PobierzDaneKlienta to 472ms.

Po zmianie dysku na preallocated scsi independent-persistent (plus tuning pliku vmx: MemTrimRate=0, logging="FALSE") polepszyła się wydajność w benchmarku (system wirtualny ma dysk szybszy od pojedyńczego Seagate-a; dwa takie dyski tworzą RAID0, na którym umieszczone są wirtualki), ale nie polepszyły się wyniki BizTalka.

Pod BizTalka można podłączyć YourKit Profilera i wtedy widać, że mamy sporo czekających wątków.

Tutaj widać, że sporo czasu zajmuje SendPort.

A od strony IIS-a wygląda to tak:

A co robi baza?

W czasie testu mamy około 5000 blokad SQL na sekundę i 200 transakcji.

czwartek, grudnia 31, 2009

Benchmarki z wirtualizacją

Platforma integracyjna wystawia WebService opakowujący select i procedurę noop na bazie Oracle. System fizyczny to 64-bitowy Windows 2008 R2 na dwurdzeniowym procesorze AMD 2,3GHz + Oracle 11g, 4GB RAM-u, windowsowy RAID0 na dwóch Seagate-ach. System wirtualny ma jeden wirtualny procesor i 2GB RAM-u. Platforma A to Sun GlassFish ESB 2.1, platforma B to MS BizTalk 2009. Pomiar za pomocą SOAP-UI dla jednego wątku w ciągu 60 sekund, czas w milisekundach.


VMware dla 32-bitowych gości używa binarnej translacji (BT). Średni czas systemu out-of-box to 2344 ms. Po zmianie parametru MaxReceiveInterval z 500 na 50 mamy 1066 ms (tuning Low Latency wg dokumentacji producenta). Przeniesienie redo logu bazy danych obsługującej platformę na inny dysk daje przyśpieszenie 17ms.




32-bitowy Windows (binarna translacja) ma podobną wydajność co 64-bitowy OpenSolaris (sprzętowa wirtualizacja) - około 10% narzutu na wirtualizację. VirtualBox wypada słabo - strata wynosi ponad 20%. JRockit jak zwykle wymiata, podmieniając Javę na wirtualizowanym Windowsie dostajemy -6%.

A teraz sprawdzimy 32-bitowe OpenSUSE 11.2 z kernelem 2.6.31 z obsługą VMI, system jest na XFS-ie z opcją noatime i z JRockit-em 6.0.


Wirtualka jest szybsza od rzeczywistej dwurdzeniowej konfiguracji! 350ms. W trybie BT 415ms.

Swoją drogą ten sam select w zwykłym kodzie Javy trwa odpowiednio 3 / 15/ 80 ms (w zależności czy PreparedStatement i Connection są reużywalne). Gdybym chciał mieć coś szybkiego i za darmo i z orkiestracją to wziąłbym Grailsy i zrobił w nich Service-y. Serwisy wewnętrznie można wołać natywnie, a zewnętrznie wystawić po SOAP-ie i JMS-ie.

piątek, grudnia 18, 2009

Non-standard BizTalk/Oracle example





It really works...

wtorek, grudnia 08, 2009

No (distributed) transactions in BizTalk

Database insert to different data sources. Atomic doesn't work in Visual Studio, so change transaction type to Long Running.

Now it doesn't work in real life.

BizTalk and WCF-SQL Send Ports

Add -> New generated item -> Consume WCF Service, orchestration looks reasonably.


We deploy it and run and... it doesn't work. Orchestration is dehydrated and in Event Viewer we see 'action not understood'.

Fix is to change Action in WCF Send Port configuration from XML fragment to text

- or -

change port operation name to Action name.

sobota, listopada 28, 2009

BizTalk 2009 BAM Portal

Nie udaje się go skonfigurować na 64-bitowym W2K8 R2: The error indicates that IIS is in 64 bit mode, while this application is a 32 bit application and thus not compatible.

Trzeba włączyć 32-bitowe aplikacje na 64-bitowym IIS-ie.

poniedziałek, listopada 02, 2009

BizTalk 2009 z Visual Studio 2008

BizTalk 2009 pozwala na tworzenie projektów w Visual Studio, ale z zainstalowanym Visual C# (inaczej będziemy widzieć 'project creation failed'). Ponadto Service Pack 1 do VS2K8 może wymagać poprawki do Rejestru:
REGEDIT4

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\VisualStudio\9.0\Projects\{FAE04EC0-301F-11d3-BF4B-00C04F79EFBC}]
"PossibleProjectExtensions"="csproj;btproj"

[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\VisualStudio\9.0\Projects\{FAE04EC0-301F-11d3-BF4B-00C04F79EFBC}]
"PossibleProjectExtensions"="csproj;btproj"
KC4Z0ZBWWH4G0G