Windows Communication Foundation Based on SOA Perception
Saat ini terminologi SOA (Service Oriented Architecture) sudah menjadi buah bibir banyak kalangan terutama para pemain di industri yang terkait dengan lingkungan Enterprise. Memang topik ini cukup advanced untuk dipelajari oleh karena itu dibutuhkan pemahaman terlebih dahulu tentang SOA sendiri.
5 tahun terakhir ini Web Services sudah banyak dipakai oleh industri terutama oleh pengguna di kalangan enterprise. Web Services pada jaman itu sudah menjadi bentuk SOA yang paling generic dikarenakan kemampuan dia untuk dipakai oleh berbagai macan client runtime termasuk diantaranya adalah java based application , PHP, phyton dsb. Kemudian penyedia Web Services-nya pun semakin banyak tidak hanya dari Microsoft Based tapi juga dari PHP, Java Enterprise, Oracle, BEA dan masih banyak yang lainnya.
SOA sebenarnya terdiri dari 3 komponen utama :
- Service Provider : sebuah node di network yang mempunyai jasa layanan services yang dapat digunakan oleh Service Consumer.
- Service Consumer : aplikasi yang sudah support SOAP Messages yang dapat mengkonsumsi Services Provider.
- Service Broker : makelar di dunia SOA yang tugas-nya sebagai tempat bagi siapapun untuk mencari services-services yang ada di sebuah network, mirip-mirip kayak fungsi-nya DNS / Google.
Sejarah SOA
SOA tidak bisa lepas keterkaitannya dengan sejarah distributed application sejak jaman VB 6 sampai .NET 2.0. Kalian tentu pernah tahu apa yang dimaksud COM (Component Object Model) , COM + (versi-nya COM yang disimpan dalam Component Services) dan .NET Remoting. Tidak ketinggalan Web Services versi .NET 1.1 hingga 2.0. Beberapa kelemahan dari beberapa teknologi yang tadi saya sebutkan adalah sebagai berikut :
- COM / COM + : Walaupun banyak aplikasi yang masih support teknologi ini, tetapi kelemahannya adalah client-nya harus menggunakan Windows Operating System terutama yang sudah support RPC (Remote Procedure Call)
- .NET Remoting : kurang populer karena antara host dan client harus menggunakan teknologi .NET. Kemudian untuk membungkus transportation layer-nya harus menggunakan proses coding yang sangat rumit.
- Web Services : harus selalu menggunakan http protocol untuk distribusi-nya walaupun untuk client-nya bisa menggunakan teknologi manapun yang support SOAP.
Sebelum Visual Studio 2008 release, VS 2005 sudah mempunyai add in tools tersendiri untuk membuat SOA ini tentunya dengan menggunakan .NET Framework 3.0. add inn tools ini dapat di download di sini.
Apa Keunggulan WCF
Pertanyaan berikut-nya apa yang membuat WCF menarik dibandingkan dengan pendahulu-nya ? tentunya jawaban pertanyaan ini adalah untuk kekurangan-kekurangan ini teknologi sebelumnya. Jadi secara umum WCF mencoba merangkum apa yang kekurangan-kekurangan di teknologi sebelumnya, tetapi sifatnya bukan menimpa teknologi sebelumnya malah melakukan extend dari teknologi sebelumnya.
Cukup dulu pengantar-nya tentang WCF di sesi berikut-nya saya akan membuat simple project dengan teknologi WCF dan SOA.