<pake kacamata kuda> kalau di PHP, CGI, Perl, yang di-cluster itu web server instancenya. kalau kita bicara clustering di J2EE, kita bicara clustering service layer-nya (yaitu spring container), karena biasanya clustering web server instance dilakukan di level proxy (baik itu apache http, tomcat proxy, atau <appserver-favorite-anda> proxy). </pake kacamata kuda>
On Dec 18, 2007 10:19 AM, Endy Muhardin <[EMAIL PROTECTED]> wrote: > On Dec 18, 2007 8:49 AM, Joshua Jackson <[EMAIL > PROTECTED]<joshua.java%40gmail.com>> > wrote: > > > > Ini analisa ngawur gw berdasarkan pengalaman: > > > > What you will lose: > > 1. Easy remoting and clustering configuration. Yeah yeah di Spring > > juga bisa remoting dengan banyak framework seperti Jencks, Lingo, > > Hessian, Burlap dsb, tapi gak semudah dengan EJB3. Dan Session bean > > cluster config masih lebih mudah dibanding Http session cluster dengan > > terracotta. > > Gak juga. > Remoting di Spring sederhana kok, gw udah pernah nulis: > http://endy.artivisi.com/blog/java/remoting-dengan-spring/ > > Satu method bisa diekspos melalui berbagai metode, hanya dengan > menambah konfigurasi. > Apanya lagi yang sulit dari itu? > > Untuk clustering, memang ribet kalo mau pakai Terracota. > Tapi, ini sebenarnya masalah yang sudah solved bertahun-tahun lalu, > asal kita tidak pakai kacamata kuda bermerek J2EE. > > Dari jaman CGI, Perl, dan PHP dulu, orang-orang sudah berhasil > mengcluster aplikasi dengan sukses. > Caranya mudah: jangan simpan state di appserver/webserver. > > Lalu simpan di mana? > Ada 3 alternatif yang umum digunakan: > 1. Di client, sebagai cookie > 2. Di database > 3. Di third-party cache provider, distributed juga bila perlu. > > Masing-masing punya plus-minus, tapi usable. > > Wow, masa sih orang PHP atau Perl punya distributed cache? > Saya pikir cuma Tangosol Coherence[1] saja? > > Ya kalau mau bagi-bagi duit ke Cameron Purdy dan Larry Elison sih gpp. > Tapi kalo mau gratis, memcached[2] itu sudah ada dari dulu, > dan sudah proven dipakai di Slashdot, LiveJournal, Sourceforge, dan > Wikipedia. > > > 2. Mudah mem-webservice-kan existing business layer. Yah Session > > beannya tinggal di annotate dengan @Webservice doang kan. Untuk > > mem-webservice-kan 'existing' business layer di Spring bisa gampang > > juga sih kalau pake CXF, asal jangan pake Spring-WS, bisa mabok ente > > :)) > > Ini kemudahan semu. > Kan Sam udah bilang di JaMU. > The point of WebService is interoperability. > Kalo cuma Java to Java, ngapain juga pakai WS yang boros bandwidth. > @Webservice itu kompatibilitasnya dengan platform jadul agak terbatas. > > Kalo mau full compatibility, harus pakai pendekatan contract first[3] > > > 3. Managed persistence context. AFAIK managed PC di Spring tidak > > sebagus bila menggunakan EJB3 Session bean. > > Mungkin bisa dielaborasi lagi maksudnya "managed PC di Spring tidak > sebagus EJB3 session bean", > supaya lebih mudah menyanggahnya > :D > > > 4. Stateful component dengan SFSB. Yah kalau ini sih Spring fanboys > > bakalan bilang di state (which is HttpSession) dari web layer-nya aja > > seperti state-nya JSF/Tapestry/Wicket. Tapi masalahnya untuk > > scalability HttpSession itu gak sebagus SFSB. > > Efektifitas penggunaan SFSB masih harus dibuktikan. > Dari jaman EJB2 dulu, SFSB ditinggalkan orang. > Sekarang *konon* katanya sudah banyak improved. > Tapi kalo gw sih, wait and see aja. > Tunggu best-practicesnya keluar. > > Lagipula, SFSB itu magicnya relatif banyak. > Jadi learning curve lumayan terjal. > > > 3. Deployable on Tomcat/Jetty ! Yah memang bisa sih pake embeddable > > JBoss kalau mau deploy EJB3 di Tomcat, tapi ini mah ngawur karena size > > library-nya embeddable JBoss aja lebih gede (13MB) dari size > > Tomcat-nya (5MB) secara overall :)) > > Jangan lupakan Winstone[4]. > Servlet engine cuma 400KB. > Sudah gw coba di tutorial Spring 25 gw[5], sangat memuaskan. > > [1] : http://www.tangosol.com/coherence-overview.jsp > [2] : http://www.danga.com/memcached/ > [3] : > http://static.springframework.org/spring-ws/site/reference/html/why-contract-first.html > [4] : http://winstone.sourceforge.net > [5] : http://code.google.com/p/hello-spring-25/ > > -- > Endy Muhardin > http://endy.artivisi.com > Y! : endymuhardin > -- life learn contribute -- > > -- Daniel Baktiar Senior JEE* Monkey willing to work hard in the Java bean brewery for a big bunch of bananas "Gravitation cannot be held responsible for people falling in love. It should be held responsible for monkeys falling down the tree though." -- Ape Onestone