detikinet

javaOndetik

Solusi Middleware Java untuk Indonesia

Penulis: Frans Thamura - detikinet
Selasa, 08/08/2006 10:40 WIB

javaONdetik

Jakarta - Sekilas mengenai Middleware Java/Java EE Server Server berbasis Java adalah sebuah container yang memungkinkan kita untuk menaruh dan mengakses objek-objek Java baik itu JavaBeans, ataupun services lainnya seperti Messaging, Clustering. Server berbasis Java ini sering juga disebut sebagai Middleware Java. Middleware ini adalah sebuah tempat dimana kita dapat menyimpan objek, melakukan prosess dan akhirnya melakukan pelayanan digital. Middleware Java sebenarnya mulai naik daun setelah Sun mengeluarkan kumpulan spesifikasi dengan nama Java Enterprise Edition (saat itu disebut J2EE). Dalam J2EE ini terdapat spesifikasi servlet yaitu spesifikasi yang memungkinkan membuat aplikasi berbasis Web dengan Java. Tetapi middleware Java bukan hanya Web saja, tetapi full blown enterprise stack. Malah mungkin terlalu lengkap bagi mereka yang terbiasa dengan PHP atau pemograman berbasis ASP. Semua ini bermula, tepatnya tahun 1999, implementasi Java atau servlet telah dilakukan oleh tim Apache dengan nama project Jserv, dibawah projek bernama Apache Java. JServ diimplementasikan sebagai module dari Web Server Apache (httpd), sama seperti implemetasi mod php, mod perl, mod python. Saat ini mungkin implementasi middlware sama dengan PHP atau ASP, tetapi itu adalah satu dekade yang lalu. Kala itu Sun telah mengembangkan Servlet Container, yang kemudian didonasikan ke Apache dengan nama Tomcat. Inilah awal dari Java memasuki dunia Web dan middlware, sehingga menjadi penguasa pasar saat ini. Inilah awal dari munculnya banyak sekali middlware berbasis Java. Servlet Container ini adalah sebagian dari J2EE SDK (sekarang Java EE SDK) yang direlease Sun ke pasar, dimana J2EE SDK sampai hari ini belum diOpenSourcekan semua, dan berdasarkan J2EE SDK inilah lahirnya semua middleware Java. Teknologi Java yang semula adalah module dari Apache Web telah berubah menjadi sebuah container, yang akhirnya (saat ini), container Java adalah versi lain dari Apache Web. Jadi jangan kaget, bilamana deployment solusi Java tidak memerlukan Web Server lagi. Karena Container Java ini berperan langsung sebagai web server. Sebagai Informasi, Tomcat saat ini telah menjadi sebuah container web berbasis Java paling populer didunia. Saat ini Sun sendiri mengeluarkan Open Source J2EE Server yang tidak 100% compatible dengan aplikasi yang dikembangkan dengan Tomcat dengan nama Glassfish dengan tim Sun sebagai pengelolanya. Sedangkan Tomcat dipakai oleh JBoss dan Geronimo (projek middleware Java yang lain dari Apache), dan aplikasi yang dikembangkan di Tomcat akan berjalan 100 persen tanpa modifikasi diatas JBoss dan Geronimo. Yang lebih hebat lagi, JBoss, Geronimo dan Glassfish ini bersaing keras dipasar middleware, terutama pasar middlware Java yang Open Source. Yang lebih menarik, Tomcat dan Glassfish diciptakan oleh perusahaan yang sama. Implementasi dari spesifikasi Java EE ini sangat banyak, tercatat lebih dari puluhan-an vendor baik Open Source maupun Commercial, seperti SAP WAS (bagian dari SAP R/3), Bea Weblogic, IBM Websphere, Sun Java Application Server (Glassfish), Oracle OC4J/10gAS, Orion, Resin, Apache Tomcat, Apache Geronimo (IBM Websphere Community Edition), Jonas, Enhydra, Adobe JRun, HP Bluestone (discountinue), Silversteam (sekarang menjadi Novell Nterprise). Yang mana semuanya ini adalah compatible, artinya aplikasi yang dikembangkan diatas semua produk bersertifikat Java EE, secara teori tidak memerlukan setting tambahan untuk dijalankan. Statemen ini menarik, karena bisa saja suatu hari aplikasi kita dideploy dengan Bea Weblogic, kemudian di lokasi lain menggunakan IBM Websphere. Atau terjadi kasus misalnya salah satu vendor penyedia J2EE tidak meneruskan (kasus ini adalah HP dengan produk Java EEnya bernama Bluestone) sehingga kita harus mengupgradenya menggunakan middleware lainnya misalnya IBM Websphere. Atau terjadi kasus misalnya untuk menekan biaya lisensi memindahkan dari IBM Websphere ke Jboss yang gratis dan Open Source, sehingga dana lisensi dapat digunakan untuk pengembangan aplikasi yang lebih berguna dari sekedar belanja lisensi. Java EE memungkinkan semua ini terjadi. Hal ini membuat lock-in vendor tidak dapat terjadi didunia Java EE. Anda berani mengimplementasikan solusi dan menganggung resiko yang hanya dikeluarkan satu vendor? Implementasi Middleware Java/Java EE Server Solusi Java yang paling sering diimplementasikan dalam dunia nyata adalah mengimplementasikan solusi Web dengan middleware Java menggunakan turunan dari servlet. Implementasinya adalah untuk web menggunakan JSP atau servlet murni ataupun solusi distributed seperti EJB, message oriented dengan JMS atau rich thin solution dengan AJAX. Solusi Web non EJB sering juga disebut dengan Java Light Development. Maklum setiap solusi berbasis EJB selain lebih sulit dan kompleks, memerlukan resource yang jauh lebih besar dari versi lightnya (malah terkadang implementasi bisa 6x lebih lama). Solusi berbasis AJAX mampu menekan sampai lebih dari 30% sampai 60% beban server, tergantung dari arsitektur tentu saja, sehingga membuat implementasi solusi kelas berat menjadi tidak relevan lagi, hal ini membuat light development menjadi primadona abad ini. Spesifikasi servlet memungkinkan mengganti solusi berbasis CGI. Maklum kala itu (1995-an), Java masih dianggap seperti Perl. Jadi, Java saat itu diimplementasikan sebagai CGI, dan masih kalah mudah dengan solusi parsing seperti PHP dan ASP, yang memungkinkan solusi Web dikembangkan dengan sangat cepat. Apalagi setelah Microsoft mengeluarkan Microsoft Interdev, ASP menjadi primadona. Tentu saja itu satu dekade lalu. Sun kemudian mengembangkan JavaServer Pages (JSP), yang mengadopsi pendekatan seperti PHP atau ASP. Dengan kekuatan OOP pada JSP, dimana PHP dan ASP tidak mendukung hal ini. Semua variable di dalam PHP dan ASP dianggap varian, sehingga memerlukan library dari pihak ketiga seperti VisualBasic, C/C++ untuk mengimplementasikan solusi yang lebih advanced. JSP versi lanjutan adalah JavaServer Faces (JSF) yang mirip dengan ASP.NET. Dimana JSP dan JSF dapat berjalan dalam satu container tanpa modifikasi dan satu kesatuan. Tips memilih Middleware Ada beberapa pendekatan untuk memilih middleware Java untuk sebuah perusahaan, dan keduanya dapat dilakukan, dari vendor yang berbeda tentu saja. - 1. Dari Open Source ke Commercial. Mulai dari Open Source, terus naik ke versi commercial bilamana transaksi telah sangat tinggi (misalnya 1 juta hit permenit) atau memerlukan clustering. Maklum middleware Java versi commercial umumnya memposisikan diri untuk solusi-solusi yang kelas berat terutama pada clustering. Solusi clustering versi Open Source belum sebaik versi yang commercial. Mungkin setelah Glassfish 2.0 dikeluarkan Sun, dunia Open Source Java untuk clustering akan berubah. Hal ini dikarenakan Sun mengopensourcekan teknologi premiumnya, rencananya tahun depan akan release. Apakah Anda tidak sabar menunggu? - 2. Dari Commercial ke Open Source Terutama dengan naik daunnya AJAX, memungkinkan implementasi Java high weight menjadi sangat ringan, dan bilamana ada team AJAX yang solid, bisa terjadi penurunan beban server menjadi 60% tinggal 30 sampai dengan 40 persen dari yang ada. Umumnya produk berbasis Commercial dijual secara bundle, jadi umumnya terjadi pada perusahaan yang membeli produk jadi, bukan mengembangkan dari awal. Atau bila tetap mempertahankan container commercialnya, kita dapat migrasi dari server yang heavy weight ke versi entry level. Seperti yang dilakukan Ebay mengganti server Sun Sparc-nya dengan mesin Dell. Dengan semakin cepatnya prosessor kelas entry, perpindahan server dari misalnya Sparc ke AMD seperti tidak terasa. Hal ini memungkinkan memberikan peluang kepada kita untuk migrasi dari produk yang Commercial ke Open Source. Tentu saja bilamana 2 hal ini dilakukan, sebuah full stack penekanan investment terjadi. Anda bisa bayangkan uang sebesar itu untuk mengembangkan aplikasi apa saja. - 3. Open Source Full Stack Bisa dibayangkan bilamana kita mengimplementasikan solusi sekelas eBay dan Open Source diperusahaan Anda. Solusi operasional apa yang anda inginkan? Berapa resiko yang harus ditanggung? Implementasi solusi fullstack ini tentu saja dapat dilakukan oleh para pemula Javaa atau junior integrator, bilamana tentu saja kampus-kampus kita mau memasukan solusi ini kedalam kurikulumnya. Apakah ini sudah terjadi? Saran untuk Indonesia Peluang Java sangat besar, apalagi dengan adanya Open Source, memungkinkan produk yang dikembangkan tidak akan hilang (min 50 tahun dari release terakhir), itupun bilamana produk tersebut tidak ada saingan yang compatible. Java EE yang mengutamakan kompatibilitas, memungkinkan ketersediaan middlware Java lebih dari 50 tahun. Ini artinya Java akan menjadi sebuah protocol pengembangan, seperti halnya bahasa Inggris dalam dunia non digital. Saat ini seluruh dunia sedang rush kebutuhan tenaga Java yang siap pakai, bukan hanya bisa Java Fundamental, tetapi tahu bagaimana mengembangkan solusi Java. Pelajarilah secepatnya, kalau perlu semenjak SMP sudah belajar, seperti yang sekarang dilakukan di Amerika. Apakah anak Anda sudah mempelajarinya? *) Penulis, Frans Thamura, adalah CEO Meruvian dan Intercitra Prima Integrasi, dua institusi bidang pelatihan serta pengembangan teknologi Java dan OSS. Penulis dapat dihubungi melalui e-mail frans[at]meruvian.com
Tulisan ini adalah bagian dari program "javaONdetik", kerjasama antara Java User Group - Indonesia dan detikINET. Bagi Anda yang ingin menyumbang artikel tentang teknologi JAVA, kirimkan tulisan Anda dalam format .rtf dengan panjang antara 8 ribu - 12 ribu karakter ke e-mail artikel[at]javaondetik.com. Jangan lupa cantumkan data diri selengkapnya, karena bagi tulisan yang dimuat akan mendapatkan merchandise dari program ini.


( dbu )

Tetap update informasi di manapun dengan http://m.detik.com dari browser ponsel anda!
Share:

Komentar (0 Komentar)


    Klik disini untuk berkomentar menggunakan account anda :

    Facebook Login Twitter Login detikID Login


    Redaksi: redaksi[at]detikinet.com
    Informasi pemasangan iklan
    hubungi : sales[at]detik.com
    Berita Terbaru Index »
    Pro Kontra Index »

    Galaxy S III Smartphone Terbaik Saat Ini?

    Performa Galaxy S III terbilang menjanjikan. Ia mengusung quadcore, layar Gorilla Glass 2, serta fitur melimpah. Tak pelak, Samsung mengklaim Galaxy S III sebagai smartphone terbaik saat ini. Anda setuju?
    Pro
    50%
    Kontra
    50%