yet another blog about computer, technology, programming, and internet

Thursday, July 10, 2014

Tentang Microservices

Thursday, July 10, 2014 Posted by Ismail Habib 51 comments
Apa sih microservices itu? Sepertinya tidak ada definisi yang baku. Sebagian orang mengaitkannya dengan SOA (Service Oriented Architecture). Kalau saya pribadi lebih suka menggunakan term "SOA a la UNIX" untuk mendefinisikannya. Maksudnya disini adalah setiap service akan fokus pada satu fungsionalitas tertentu. Satu service dan service lainnya saling berkomunikasi untuk menghasilnya business value yang sesungguhnya.

Sedikit latar belakang, saya bukan ahli dalam bidang ini. Hanya kebetulan topik ini sedang banyak didiskusikan, seperti yang dituliskan juga di report Technology Radar 2014nya ThoughtWorks. Reportnya bisa dilihat di sini: http://thoughtworks.fileburst.com/assets/technology-radar-july-2014-en.pdf.

Kalau diskusi tentang microservices, sepertinya tidak lengkap kalau tidak dimulai dari arsitektur monolitik. Arsitektur monolitik, seperti namanya, punya arti bahwa semua fungsionalitas berada pada satu unit saja. Unit ini menangani segalanya, business logic, database access, templating, dll. Dalam kasus web application, struktur aplikasi monolitik biasanya terdiri dari client-side, server-side, dan database. Arsitektur monolitik ini tentunya punya kelemahan-kelamahan yang solusinya bisa dialamatkan oleh microservices.

Apa saja kekuatan microservices dibandingkan dengan monolitik?
Yang pertama, microservices memberikan fleksibilitas bagi developer untuk menentukan tools yang akan digunakan untuk implementasi sebuah service tanpa harus memaksakan tools tersebut untuk digunakan pada service-service lainnya. Hal ini sangat memungkinkan karena antara satu service dan service lainnya tidak tightly coupled. Komunikasi antara satu service di microservices dengan service lainnya umumnya dilakukan via messaging atau web service. Keduanya bisa diimplementasi dengan menggunakan teknologi yang berbeda.
Kedua, microservices memungkinkan team splitting dilakukan dengan lebih mudah. Satu tim yang menangani sebuah microservice bisa dengan mudah memisahkan diri dari tim lainnya karena, mereka tidak berbagi code base dan hanya terikat dengan interface yang didefinisikan di dalam service-service tersebut.
Ketiga, memisahkan fungsionalitas dalam service-service terpisah menjadikan service-service tersebut terisolasi satu sama lain. Dengan kata lain, resiko dan problem dalam satu service akan lebih mudah dilokalisir. Termasuk di dalamnya adalah permasalahan dengan legacy system. Salah satu contohnya adalah website The Guardian yang mulai dengan aplikasi monolitik dan kemudian berevolusi menjadi microservices. Aplikasi yang dikembangkan di awal tetap dapat dipertahankan meskipun sudah menjadi legacy dan tidak fleksibel.
Keempat, microservices memungkinkan pembedaan profil satu service dengan service lainnya, terutama yang berhubungan dengan scaling up.

Masih banyak keunggulan microservices yang tidak saya sebutkan disini, terutama karena empat poin yang saya sebutkan di atas adalah major concern yang saya rasakan selama bekerja sebagai software engineer. Yang perlu diingat, selain punya kekuatan, seorang sofware architect juga harus menyadari tantangan yang dihadapi dalam mengimplementasikan sistem dengan arsitektur microservices. Tapi mungkin ini bahasan di posting yang lain :)

51 comments:

  1. PromDresses2017 online shop is the best choice for your special occasion. If your budget or just looking for a great deal, we have a great selection of affordable prom gowns under $100.

    ReplyDelete
  2. Kaufen Sie Abendkleider aus der Frauen-Abteilung bei MissyDress. Sie werden das breiteste Angebot an Abendkleider Deutschland finden Sie online und an die Haustür geliefert.

    ReplyDelete
  3. This is a great article. It gave me a lot of useful information. thank you very much.


    monkey go happy| yahtzee with buddies| | mahjong | | defendyournuts 2| superfighters 2 |

    ReplyDelete
  4. great post. i like it. feeling great when reading your post .

    retrica  | happy wheels |  superfighters 2   | unblocked games |cat mario | atari breakout game |

    ReplyDelete
  5. Your article very well and good, bringing inspiration to many. I hope people visit my website.
    Minecraft 4

    ReplyDelete
  6. Life becomes more interesting and wonderful when you share your memorable moments with friends and family through unique photographs. You can create your own unique style impressed with image editing software. And after hours of work stress you can also

    Square Quick
    Square Quick
    Square Quick
    Square Quick
    Square Quick

    ReplyDelete
  7. I really thank you for the valuable info on this great subject and look forward to more great posts. Thanks a lot for enjoying this beauty article with me.

    geometry dash pc, geometry Dash, geometry dash lite, geometry dash play, geometry dash online

    ReplyDelete
  8. Mostly people have all the same things when they are writing academic task or any other writing, especially light music most people like during the writing.

    subway surf , baixar subway surf, subway surf download , download subway surf

    ReplyDelete
  9. Mostly people have all the same things when they are writing academic task or any other writing, especially light music most people like during the writing.
    dream league soccer download , dream league soccer apk , download dream league soccer , dream league soccer

    ReplyDelete
  10. You need to have time to take care of the active. It in fact was a amusement account it. Look advanced to far added agreeable from you.

    entrar hotmail agora , hotmail entrar, entrar hotmail , entrar no hotmail

    ReplyDelete
  11. Mostly people have all the same things when they are writing academic task or any other writing, especially light music most people like during the writing.
    facebook iniciar sesión , facebook, iniciar sesion , iniciar sesion facebook

    ReplyDelete
  12. Life becomes more interesting and wonderful when you share your memorable moments with friends and family through unique photographs. You can create your own unique style impressed with image editing software. And after hours of work stress you can also

    whatsapp messenger
    baixar whatsapp
    whatsapp plus
    download whatsapp
    whatsapp baixar

    ReplyDelete
  13. You need to have time to take care of the active. It in fact was a amusement account it. Look advanced to far added agreeable from you.
    Hotmail
    Hotmail Iniciar Sesión
    Iniciar Sesión
    Iniciar Sesión Hotmail
    Iniciar Sesión
    Iniciar Sesión Hotmail

    ReplyDelete
  14. You need to have time to take care of the active. It in fact was a amusement account it. Look advanced to far added agreeable from you.
    banana kong ,
    banana kong baixar ,
    baixar banana kong ,
    download banana kong ,
    banana kong

    ReplyDelete
  15. من المعروف ان نظافة المنازل من بين اهم الخدمات الضرورية في التنظيف والترقية بمنازلنا الى مصاف المنازل العصرية والتي عرفت تنظيفا عصريا من شانه ان يوفر لساكنته ظروفا حياتية راقية ولابد من توفر هيئة تختص في المجال مع تقديم ضمانات متكاملة من شانه ان تجعل الافراد يضمنون نجاح خدمة التنظيف ولا حاجة للمزيد من ضياع الاموال عبر طلبات خدمة نظافة المنازل التي لا تلبي حاجياتهم ولا تتماشى مع رغباتهم لأن العديد من شركات تنظيف المنازل تسعى فقط الى عرض خدماتها عبر طرق ترويجية فحسب من اجل كسب المال فقط دون مراعاة الوازع الاخلاقي والضمير المهني الذي يحتم على مدراء مثل هاته الشركات ان يسعوا خلف ارضاء العملاء ليس اكثر من هذا عبر اتقان تنظيف المنازل شركة تنظيف خزانات بالرياض
    شركة تنظيف مجالس بالرياض
    شركة نظافة عامة بالرياض
    شركة رش مبيد بالرياض
    شركة نقل عفش بالرياض
    شركة مكافحة حشرات بالرياض
    شركة تنظيف شقق بالرياض
    شركة تنظيف منازل بالرياض

    ReplyDelete
  16. Its really a very nice blog i really appreciate all your efforts thank you so much for sharing this valuble information with all of us.
    Packers And Movers Hyderabad charges

    ReplyDelete
  17. Its really a very nice blog i really appreciate all your efforts thank you so much for sharing this valuble information with all of us.
    Packers And Movers Bangalore charges

    ReplyDelete
  18. Its really a very nice blog i really appreciate all your efforts thank you so much for sharing this valuble information with all of us.
    Packers And Movers Bangalore charges

    ReplyDelete
  19. This article is really fantastic and thanks for sharing the valuable post.

    http://word-cookies-answers.com

    ReplyDelete