Wczoraj na WJUGu wystąpił Adam Lider z demonstracją Consumer Driven Contracts. Opisywał duży, rozproszony system i problemy związane z jego wdrożeniem i utrzymaniem. Była to bardzo ciekawa prezentacja, ponieważ oprócz tego, że Adam był bardzo dobrze przygotowany i naturalny, to opowiadał o własnych doświadczeniach, bo przy projekcie pracował kilka lat.
Była również dodatkowa atrakcja, bo z powodu Świąt było zamknięte "akwarium" i nie mieliśmy rzutnika multimedialnego (Michale!) i dlatego musieliśmy się ścisnąć wokół laptopa Adama. To było integrujące! :)
[caption id="attachment_114" align="aligncenter" width="480" caption="Adam Lider prezentuje CDC, bez projektora"][/caption]
Wednesday, April 7, 2010
Subscribe to:
Post Comments (Atom)
Ale,ale, nie napisałeś o najważniejszym wniosku z prezentacji: NIGDY nie optymalizować architektury dopóki nie występuje problem z wydajnością :)
ReplyDelete@Jakub, słusznie!
ReplyDeleteInne wnioski, które zapamiętałem to:
* w miarę możliwości moduły (w sensie dużych składowych kloców systemu) umieszczamy na jednym node (serwer), a przed nim stawiamy load balancer.
* moduły powinny być napisane tak, aby móc umieścić je na wielu maszynach, ale na siłę nie rozrzucamy ich - stanowiło to problem właśnie w przykładzie Adama
* bardzo ważne jest, aby na etapie projektowania policzyć planowane obciążenie, bo da to ważne wskazówki jakie zastosować technologie.
* testowanie CDC zostało zaimplementowane w postaci ich własnego DSLa, który w bardzo łatwy sposób umożliwiał opisanie przypadków. Dzięki temu używali tego również ludzie od frontendu, na co dzień pracujący w JavaScript.