niedziela, lutego 27, 2011

Instrumentacja Tibco



Z działające instancji BW wyjmujemy takie dane jak liczba utworzonych, zakończonych, uruchomionych zadań, FlowLimit, znacznik czasu rozpoczęcia i zakończenia procesu, liczba użytych wątków systemu operacyjnego dla puli danego zadania, nagłówki JMS. Dane wysyłane są uproszczonym protokołem SOAP po stale utrzymywanym połączeniu HTTP. Po drugiej stronie odbiera je Netty. Przy kodzie wysyłającym i odbierającym uruchomionym w tym samym procesie BW narzut w najgorszym przypadku to 7,5% (zmierzone za pomocą crash-benchmarku EMS, realnie 2%). Przy wykorzystaniu procesora poniżej 100% narzut powinien być prawie niewidoczny.

poniedziałek, lutego 21, 2011

Jest super

VBox OpenIndiana



Ciekawostka: Po podaniu OpenIndiana VirtualBox automatycznie dopasowuje system gościa jako 'Oracle Solaris 10u9 lub nowszy'. Mniemam, że obie drużyny współpracowały ze sobą, a po przejściu kluczowych ludzi z Oracle-a do Nexenty współpraca trwa dalej.

niedziela, lutego 20, 2011

I kissed the girl

Atom + VBox + SuSE



Nowe kernele linuksowe mają dedykowany sterownik do obsługi bezczynności procesora - intel_idle. W przypadku uruchomienia OpenSUSE 11.4 RC1 na wirtualizowanym atomie instrukcja MWAIT próbuje czytać nieodpowiedni adres pamięci (odczyt portu I/O powoduje przejście procesora w stan niskiego poboru energii C1-C6). Adresy do MWAIT powinny być pobrane z DSDT, natomiast intel_idle ma je określone na sztywno. Obejście to wyłączenie sterownika przez podanie w linii poleceń jądra intel_idle.max_cstate=0.

środa, lutego 16, 2011

OpenSource




Tibcovery - tool to visualize connections, dependencies, flows between Tibco EAI components (using JMS, RV, SAP RFC, WS, HTTP transports) and to analyze common configuration/development errors goes OpenSource. The license is GPLv2.

poniedziałek, lutego 14, 2011

ESB: nie kupować

Firma ThoughtWorks, w której pracuje Martin Fowler (autor klasycznej pozycji 'Enterprise Integration Patterns') w Radarze Technologicznym na 2011 rok rekomenduje podobnie jak rok temu wstrzymanie procesu analizy możliwości wdrożenia ESB w firmie. Doświadczone osoby powiedzą: 'Ja już dawno wiedziałem, że ESB jako produkt to marketingowa ściema. Całą architekturę trzeba przemyśleć i zaprojektować od podstaw'. Pudełkowe ESB daje złudne poczucie, że kupiło się i wdrożyło ESB (albo nawet SOA), natomiast niewłaściwe zastosowanie produktu (które ma miejsce w więcej niż 50% przypadków) powoduje powstanie niewiadomo czego. Tak więc lepiej nie oszukiwać siebie i zarządu.

Trzeba też powiedzieć prawdę, że dla dostawcy dużo bardziej korzystny finansowo jest makaron integracyjny (a jeśli nie można tego kierunku eksploatować to można pomyśleć o rozwiązaniach typu vendor-lock-in np. fajny framework implementujący super pattern, ze słabą dokumentacją, nie do obczajenia przez innego dostawcę).

V

sobota, lutego 12, 2011

Petelicki

nie zostawia suchej nitki na rządzacych. Gilowska również.

czwartek, lutego 10, 2011

Dni człowieka

'Dni człowieka są jak trawa; kwitnie jak kwiat na polu: ledwie muśnie go wiatr, a już go nie ma, i miejsce, gdzie był, już go nie poznaje'. Ps 103, 15-16

Mam babcię, papieża, dziekana a teraz też arcybiskupa po drugiej stronie życia. Prezydenta też. Ilu sąsiadów z ulicy. Wszyscy zmierzamy ku wieczności, tylu ludzi już tam jest.

wtorek, lutego 08, 2011

Internet HD


Leżę sobie w salonie przed telewizorem i przeglądam Internet. Bajer.

Update: Stworzyłem nowego posta, wgrałem obrazek zrobiony w Paint-cie o rozmiarze 1920x1080, zapisałem posta, kliknąłem na obrazek i okazało się, że ma rozmiar 1600x900. Blogspot przeskalowuje w dół obrazki!

Romantyczna reklama

Apache ActiveMQ tuning

Kahadb introduced in 5.4 is the bottleneck. After switching back to AMQ storage and some tweaking JMS server works nicely (10x speed up).



Fiorano MQ JMS performance

Fiorano MQ needs very careful configuration.

First of all queue subsystem:
InMemoryBufferSize=204857600 (20x default)
PersistentInMemoryBufferSize=5242880 (10x default)
UnAckedQueueBufferSize=1048576000 (100x default)

Also connection settings should be modified:
AllowDurableConnections=true
EnableAutoRevalidation=true

For single JMS queue use:
PersistentInMemoryBufferSize=5242880
InMemoryBufferSize=10485760




poniedziałek, lutego 07, 2011

IBM MQ JMS performance


IBM MQ Java client needs native libraries. It is good to put everything in one place and add this path to PATH environment variable so all required files will be visible from java.library.path.



On the picture above you can see a case when the number of receiver sessions is too low.



As Krzysztof Walasek (EAI expert from In4mates) would expect, IBM MQ wins JMS competition - PERSISTENT mode is the most common in a production environment.

WLS JMS performance


Let's take stripped down version of Oracle WebLogic (distributed as 300+ MB zip file) and create JMS Server, JMS Module and queues required for test scenario. In folder wlserver\server\native there are native libraries used for fast I/O operations. Domain configuration utility has a bug when 64-bit JVM is selected - it sets java.library.path to point to 32-bit libraries and they are obviously not loaded. As a workaround wlserver\server\native\win\x64 should be renamed to wlserver\server\native\win\32. The performance boost from using native I/O on 64-bit Windows NT 6.1 with 64-bit JRockit R28.1 is marginal.





WebLogic as JMS server takes 4th place.

JMS Performance

Test scenario is a producer sending 16k+128k messages and concurrent consumers implemented as Tibco BW processes with JMS Queue Receiver. The load is heavy.


EMS is the fastest JMS server. The fastest free JMS Server is Sun MQ 4.4! It is available in GlassFish but was used in standalone mode. Sun MQ performance is comparable with Sonic MQ 8.0. Sun's patent is ObjectStore which is local replacement for JNDI server. ActiveMQ is very dissapointing, it was the only server which lost messages due to expiration, and the score was pretty low. I tried activemq-throughput configuration, but it was stopping consumers rendering server unusable. HornetQ was tested without AIO (available only on Linux).



I tried to squeeze everything from SonicMQ using JRockit, however its optimizing compiler sometimes generates high performance assembler which brings down the whole JVM.


niedziela, lutego 06, 2011

Tibco EMS performance analysis

Every ten seconds there is a timer triggerred activity of publishing or sending in a loop 8001 messages one by one. 5th and next events are ignored, so we've got 32004 messages. Concurrently we are producing messages of size 16k and 128k (randomly generated body string with 0s and 1s).

There are some cases investigated: durable topic with 2 subscibers, topic bridged with 2 queues and just queues. The measured value is a time between receiving first and last message.


Setting JMS expiration doesn't have big overhead, in message flooding situation it helps.



Topic bridged with 2 queues is way slower than ordinary durable topic with 2 subscribers. Massive messages expiration doesn't cause as big performance hit as receiver consuming large volumes of data. Bridge overhead measured on a queue is 4% (there is JMS selector used in bridge definition).



Now, the most important finding: you should use queues with many sessions. When EMS client is in the process of sending a message, the payload is read directly from socket to memory mapped EMS storage file (you can think of it as a buffer transparently backed by file) and when there is a session interested in this message it is copied directly from buffer to socket (so there is no another read from EMS storage).




CPU is very nicely saturated and the whole process is very efficient.

MaxSessions=1 + ACK=Client preserves order of messages but usage of many sessions in our simple scenario increases throughput by 55%.

piątek, lutego 04, 2011

Śnieg z deszczem

Tusk do dysmisji

Mariusz Piekarski: A z pana wiedzy wynika, że minister Klich miał obowiązek powiadomić dowództwo NATO o tym, że uległ katastrofie samolot wojskowy z prezydentem i generalicją na pokładzie?

Sławomir Petelicki: Ależ oczywiście, to są normalne procedury. Zwraca się o pomoc przecież tam była łączność natowska, której nie odzyskaliśmy. Graś opowiada bajki, że jak wieczorem przyjechał, kontrwywiad to wszystko zabezpieczył. To niech pan Graś zabezpiecza posiadłość Niemca, w której mieszka jako dozorca nocny, a nie opowiada bajek. To jest po prostu przykre, że się w ten sposób traktuje obywateli. Nie wolno ich tak traktować. My staraliśmy się do tego NATO wstąpić po to, by czuć się bezpiecznie. A tu bez wojny tracimy wszystkich generałów i nie zwracamy się do NATO, tylko przytulamy się do pana Putina. Ja rozumiem, że chcemy poprawić stosunki z sąsiadem, ale to jedno do drugiego nic nie ma. Bo jak już jesteśmy w NATO, to załatwiajmy takie sprawy w NATO według procedur NATO. Wszystkie procedury złamaliśmy - nie było lotniska zapasowego, nie było rozłożenia tej ekipy w kilku samolotach, nie było koordynacji ze strony pana Arabskiego pomiędzy częścią cywilną delegacji a częścią wojskową.

Mariusz Piekarski: Co zmieliłoby pana zdaniem gdybyśmy zaraz po katastrofie zwrócili się do NATO?

Sławomir Petelicki: Nie mielibyśmy takiego kłopotu, jaki mamy teraz. My jesteśmy petentem u Rosjan.

Mariusz Piekarski: Czyli z Moskwą rozmawiałaby Bruksela, dowództwo NATO, nie my?

Sławomir Petelicki: Oczywiście że tak. Prosta sprawa: jesteśmy członkiem i wtedy, jak mamy problem, oni nam pomagają. Oni mają takie urządzenia, że nie muszą prosić Rosjan o różne rzeczy, bo mają wszystkie nagrania. To dzięki przytomności płk. Edmunda Klicha mamy nagrania tego, co się działo w wieży. I tutaj też taki moment. Jeżeli był powiadomiony dzień wcześniej przez służby pan Graś, że - jak był pan premier na nartach - będzie konferencja MAK-u, a jak wiemy, że ma być konferencja MAK-u, a wcześniej pan premier mówi, że raport jest nie do przyjęcia, to powinniśmy godzinę wcześniej zrobić naszą konferencję. Nie musi wcale premier wracać z nart, bo wystarczy, że minister Miller robi konferencję i podaje, co było w tej wieży, w tym baraczku i wtedy cały świat wie, że nie Polacy byli pijani, tylko tam był bałagan. A my się sami podkładamy. Nie rozumiem tego po prostu.

Wywiad w RMF FM.

Janusz Korwin-Mikke wypowiedział kiedyś ciekawą myśl: każdą poważniejszą firmą czy instytucją zarządzają wykształceni profesjonaliści, natomiast państwem zarządzają politycy, którzy nie mają kwalifikacji i kompetencji.

czwartek, lutego 03, 2011

King's speech

Piękny film. Pozytywny.

A wiecie, że Geoffrey Rush jest Australijczykiem?

Mamy Cię


Eksperci dla Tygodnika Powszechnego analizują głosy polityków i biskupów.

środa, lutego 02, 2011

Jestem wolny

Mogę odejść dokąd chcę. Zastanawiam się tylko, czy to nie chwilowe olśnienie, które minie mi jutro rano w pracy, a zastąpi je poczucie przytłoczenia problemami. Mam idealistyczne (utopijne) poczucie jak powinny wyglądać pewne rzeczy, a co gorsza czuję się odpowiedzialny za wprowadzanie zmian ku lepszemu. Próby zmieniania świata męczą. Podobnie jak męczenie się z dostawcą 'Focus on customer money' and 'Competence off'. Czasami zastanawiam się czy to nie jest dwa w jednym ;)

Będzie mi brakować Marcina W. , którego podziwiam za to, że mimo tego, że nie studiował informatyki, to w tematach technicznych porusza się jak ryba w wodzie i często jest bardziej techniczny niż dostawca. A do tego miły, inteligentny, kulturalny i przystojny.

Hubert ma fajne przemyślenia i fajne teksty. Bardzo lubię słuchać jak dyskutuje z Piotrkiem, zwłaszcza o rządzie Tuska. Piotrek bardzo ładnie zaprojektował SVN-a, dużo lepiej ode mnie.

Krzysiek ma mnie dość za uwagi o Skodzie Octavii, ale nie tylko. Bardzo ładnie zrobił wiki, szacun.

No i wpada do nas forfiter, bo mu eaj nie działa. Rewelacyjna ekipa w pokoju.