Lihat, saya sudah bertahun-tahun berjuang melawan makhluk ini yang disebut "sistem terdistribusi" dan saya akan memberitahumu apa sebenarnya mereka, tanpa banyak cerita teknis.
Sistem terdistribusi pada dasarnya adalah sekelompok komputer yang tersebar yang bekerja bersama seolah-olah mereka adalah satu kesatuan. Ini seperti sekelompok teman yang masing-masing berada di rumah mereka tetapi berkoordinasi melalui WhatsApp untuk mengadakan pesta.
Hal yang paling lucu adalah bahwa sistem-sistem ini berusaha membuat kita percaya bahwa mereka adalah satu mesin ketika sebenarnya mereka adalah beberapa perangkat yang terhubung yang kadang-kadang bahkan tidak saling memahami.
Masa depan: lebih banyak kekacauan terorganisir
Masa depan sistem ini terlihat menarik tetapi tidak ada yang berbicara tentang masalah nyata. Komputasi kluster terdengar luar biasa dalam teori - menggabungkan mesin untuk memproses lebih cepat - tetapi dalam praktiknya, mengonfigurasinya dengan benar adalah sakit kepala.
Komputasi grid terlalu dibesar-besarkan. Ya, menghubungkan sumber daya dari seluruh dunia, tetapi coba kelola itu ketika ada zona waktu yang berbeda, peraturan yang berbeda, dan koneksi internet yang buruk di beberapa negara. Para penambang cryptocurrency tahu betul - tampaknya ideal untuk bersatu, sampai seseorang dari pool memutuskan untuk mengambil semua kue.
Kelebihan dan Kekurangan: Realitas yang Keras
Keuntungannya jelas: skalabilitas, toleransi terhadap kesalahan... tetapi mari kita jujur, ini bukan surga. Koordinasi antara node bisa menjadi neraka. Saya telah melihat sistem "terdistribusi" di mana setengah waktu terbuang untuk menyinkronkan status dan menyelesaikan konflik.
Dan jangan membuat saya berbicara tentang kompleksitas. Memelihara sistem ini membutuhkan pengetahuan yang begitu khusus sehingga Anda akhirnya menjadi budak dari ciptaan Anda sendiri. Ketika sesuatu gagal, semoga beruntung menemukan di mana masalahnya di antara begitu banyak komponen yang saling terhubung.
Jenis: masing-masing lebih buruk dari yang sebelumnya
Klien-server, P2P, basis data terdistribusi... setiap arsitektur memiliki masalahnya sendiri. Arsitektur P2P sangat bagus sampai Anda menyadari bahwa tidak ada yang mau berbagi sumber daya, hanya ingin mengonsumsinya. Basis data terdistribusi menjanjikan konsistensi tetapi coba jelaskan kepada atasan Anda mengapa terkadang data tidak tersinkronisasi.
Fitur yang tidak ada yang memberi tahu
Konkruensi adalah konsep yang indah sampai Anda menemukan deadlock di mana setiap proses menunggu yang lain dan semuanya terhenti. Skala horizontal terdengar baik, tetapi setiap node baru menambah kompleksitas eksponensial.
Transparansi adalah mitos terbesar. Tidak ada sistem terdistribusi yang benar-benar transparan - selalu ada rincian yang bocor dan akhirnya menyulitkan kehidupan pengguna akhir.
Bagaimana sebenarnya mereka berfungsi?
Teori mengatakan bahwa Anda membagi tugas, mendistribusikannya, dan semuanya secara ajaib berfungsi. Kenyataannya adalah bahwa Anda menghabiskan lebih banyak waktu merancang protokol komunikasi, mengelola kegagalan, dan memecahkan masalah jaringan daripada melakukan pekerjaan yang berguna.
Blockchain adalah contoh yang sempurna: secara teori mereka tahan terhadap kegagalan, tetapi ketika terjadi fork dalam rantai atau ketika setengah dari node tidak diperbarui dengan benar, mari kita lihat siapa yang akan menyelesaikan bencana.
Akhirnya, sistem terdistribusi seperti hubungan jarak jauh - dalam teori bisa berfungsi, tetapi memerlukan komunikasi, kesabaran, dan toleransi terhadap kekacauan yang jauh lebih banyak daripada yang akan diakui siapa pun.
Elegan di atas kertas, kacau dalam praktik. Dan meskipun begitu, kita tidak bisa hidup tanpanya di dunia yang terhubung ini.
Lihat Asli
Halaman ini mungkin berisi konten pihak ketiga, yang disediakan untuk tujuan informasi saja (bukan pernyataan/jaminan) dan tidak boleh dianggap sebagai dukungan terhadap pandangannya oleh Gate, atau sebagai nasihat keuangan atau profesional. Lihat Penafian untuk detailnya.
Sistem terdistribusi: pandanganku dari parit
Lihat, saya sudah bertahun-tahun berjuang melawan makhluk ini yang disebut "sistem terdistribusi" dan saya akan memberitahumu apa sebenarnya mereka, tanpa banyak cerita teknis.
Sistem terdistribusi pada dasarnya adalah sekelompok komputer yang tersebar yang bekerja bersama seolah-olah mereka adalah satu kesatuan. Ini seperti sekelompok teman yang masing-masing berada di rumah mereka tetapi berkoordinasi melalui WhatsApp untuk mengadakan pesta.
Hal yang paling lucu adalah bahwa sistem-sistem ini berusaha membuat kita percaya bahwa mereka adalah satu mesin ketika sebenarnya mereka adalah beberapa perangkat yang terhubung yang kadang-kadang bahkan tidak saling memahami.
Masa depan: lebih banyak kekacauan terorganisir
Masa depan sistem ini terlihat menarik tetapi tidak ada yang berbicara tentang masalah nyata. Komputasi kluster terdengar luar biasa dalam teori - menggabungkan mesin untuk memproses lebih cepat - tetapi dalam praktiknya, mengonfigurasinya dengan benar adalah sakit kepala.
Komputasi grid terlalu dibesar-besarkan. Ya, menghubungkan sumber daya dari seluruh dunia, tetapi coba kelola itu ketika ada zona waktu yang berbeda, peraturan yang berbeda, dan koneksi internet yang buruk di beberapa negara. Para penambang cryptocurrency tahu betul - tampaknya ideal untuk bersatu, sampai seseorang dari pool memutuskan untuk mengambil semua kue.
Kelebihan dan Kekurangan: Realitas yang Keras
Keuntungannya jelas: skalabilitas, toleransi terhadap kesalahan... tetapi mari kita jujur, ini bukan surga. Koordinasi antara node bisa menjadi neraka. Saya telah melihat sistem "terdistribusi" di mana setengah waktu terbuang untuk menyinkronkan status dan menyelesaikan konflik.
Dan jangan membuat saya berbicara tentang kompleksitas. Memelihara sistem ini membutuhkan pengetahuan yang begitu khusus sehingga Anda akhirnya menjadi budak dari ciptaan Anda sendiri. Ketika sesuatu gagal, semoga beruntung menemukan di mana masalahnya di antara begitu banyak komponen yang saling terhubung.
Jenis: masing-masing lebih buruk dari yang sebelumnya
Klien-server, P2P, basis data terdistribusi... setiap arsitektur memiliki masalahnya sendiri. Arsitektur P2P sangat bagus sampai Anda menyadari bahwa tidak ada yang mau berbagi sumber daya, hanya ingin mengonsumsinya. Basis data terdistribusi menjanjikan konsistensi tetapi coba jelaskan kepada atasan Anda mengapa terkadang data tidak tersinkronisasi.
Fitur yang tidak ada yang memberi tahu
Konkruensi adalah konsep yang indah sampai Anda menemukan deadlock di mana setiap proses menunggu yang lain dan semuanya terhenti. Skala horizontal terdengar baik, tetapi setiap node baru menambah kompleksitas eksponensial.
Transparansi adalah mitos terbesar. Tidak ada sistem terdistribusi yang benar-benar transparan - selalu ada rincian yang bocor dan akhirnya menyulitkan kehidupan pengguna akhir.
Bagaimana sebenarnya mereka berfungsi?
Teori mengatakan bahwa Anda membagi tugas, mendistribusikannya, dan semuanya secara ajaib berfungsi. Kenyataannya adalah bahwa Anda menghabiskan lebih banyak waktu merancang protokol komunikasi, mengelola kegagalan, dan memecahkan masalah jaringan daripada melakukan pekerjaan yang berguna.
Blockchain adalah contoh yang sempurna: secara teori mereka tahan terhadap kegagalan, tetapi ketika terjadi fork dalam rantai atau ketika setengah dari node tidak diperbarui dengan benar, mari kita lihat siapa yang akan menyelesaikan bencana.
Akhirnya, sistem terdistribusi seperti hubungan jarak jauh - dalam teori bisa berfungsi, tetapi memerlukan komunikasi, kesabaran, dan toleransi terhadap kekacauan yang jauh lebih banyak daripada yang akan diakui siapa pun.
Elegan di atas kertas, kacau dalam praktik. Dan meskipun begitu, kita tidak bisa hidup tanpanya di dunia yang terhubung ini.