Miskonsepsi pada Sistem Komputasi Terdistribusi

Ketika kita membangun sebuah aplikasi, kita berasumsi bahwa aplikasi tersebut akan berjalan sesuai dengan apa yang kita inginkan, terlepas dari bagaimanapun aplikasi tersebut dijalankan.

Ketika kita mendesain sebuah sistem, kita berasumsi bahwa sistem tersebut akan bekerja dengan baik, terlepas dari dimanapun lingkungan sistem tersebut berada.

Asumsi-asumsi tersebut seringkali terbukti salah dan dalam jangka waktu panjang akan mengakibatkan masalah pada sistem atau program yang kita jalankan.

Asumsi-asumsi yang salah itu dapat disebut sebagai miskonsepsi — pengertian yang tidak akurat tentang sebuah konsep, penggunaan sebuah konsep yang salah, dan pemaknaan sebuah konsep yang berbeda.

Pada tulisan ini, kita akan membahas delapan miskonsepsi yang seringkali terjadi ketika kita mendesain sebuah sistem, atau membangun sebuah aplikasi yang berjalan di atas sistem komputasi terdistribusi. Delapan miskonsepsi ini dikemukakan pada 1994 oleh Peter Deutsch (walaupun empat miskonsepsi pertama sudah dikemukakan sebelumnya oleh Bill Joy dan Tom Lyon sebagai “The Fallacies of Networked Computing”), dan pada 1997, James Gosling menambahkan satu miskonsepsi terakhir.

Miskonsepsi #1 — The Network is Reliable (Bill Joy & Tom Lyon)

Apa yang perlu dilakukan?

Miskonsepsi #2 — Latency is Zero (Bill Joy & Tom Lyon)

Apa yang perlu dilakukan?

Miskonsepsi #3 — Bandwidth is Infinite (Bill Joy & Tom Lyon)

Apa yang perlu dilakukan?

Miskonsepsi #4 — The Network is Secure (Bill Joy & Tom Lyon)

Apa yang perlu dilakukan?

Miskonsepsi #5 — Topology doesn’t Change (Peter Deutsch)

Apa yang perlu dilakukan?

Miskonsepsi #6 — There is one Administrator (Peter Deutsch)

Apa yang perlu dilakukan?

Miskonsepsi #7 — Transport Cost is Zero (Peter Deutsch)

Apa yang perlu dilakukan?

Miskonsepsi #8 — The Network is Homogeneous (James Gosling)

Apa yang perlu dilakukan?