obonce

Rabu, 06 April 2011

MEMBANGUN SISTEM KOMPUTASI TERDISTRIBUSI DENGAN PEMROGRAMAN C++


MEMBANGUN SISTEM KOMPUTASI TERDISTRIBUSI
DENGAN PEMROGRAMAN C++

Oleh              : Moh.Rofiq
Jurusan          : Manajemen Informatika
NIM               : 12100982
Nomor Absen : 55
Kelas             : 12.3C.07
Blogg             : rofiq-bonce.blogspot.com
Email             : rofiqbonce19@gmail.com

KOMPUTASI TERDISTRIBUSI


Latar Belakang Komputasi Terdistribusi
Dalam komputasi terdistribusi, suatu program dipecah ke dalam bagian-bagian yang berjalan secara simultan (bersamaan) pada banyak komputer yang berkomunikasi di atas suatu jaringan. Komputasi terdistribusi merupakan suatu bentuk dari komputasi paralel, tetapi komputasi paralel sangat umum digunakan untuk menggambarkan bagian-bagian program yang berjalan secara simultan pada banyak prosesor dalam komputer yang sama. Kedua tipe pemrosesan iniy memerlukan pembagian suatu program ke dalam bagian-bagian yang berjalan secara bersamaan, tetapi program-program terdistribusi sering harus berhadapan dengan lingkungan yang heterogen, link jaringan dengan latency bervariasi, dan kegagalan yang tidak dapat diprediksi, baik di dalam jaringan maupun komputer.
Pengaturan interaksi antar komputer yang mengeksekusi komputasi terdistribusi merupakan pekerjaan utama. Agar mampu memanfaatkan berbagai jenis komputer, maka protokol atau saluran komunikasi sebaiknya tidak mengandung atau menggunakan suatu informasi yang tidak dapat dipahami oleh mesin tertentu. Sistem harus dapat memastikan messages benar-benar tersampaikan dengan benar, juga saat messages invalid maka sistem harus melakukan langkah-langkah antisipasi. Jika ini tidak ditangani kemungkinan akan menyebabkan sistem down dan berbagai aktifitas berikutnya di dalam jaringan akan ditolak (reject). Faktor penting lain adalah kemampuan untuk men-deploy software ke komputer lain secara portable sehingga memungkinkan eksekusi dan interaksi dengan jaringan yang telah ada. Ini mungkin tidak akan praktis ketika mengunakan hardware dan sumber daya berbeda, dimana kita harus memikirkan cara lain seperti cross-compiling atau melakukan porting software tersebut secara manual.
Pada sistem client-server dengan server tunggal, server akan memiliki beban yang semakin berat jika semakin banyak aplikasi yang ada di server dan semakin banyak client yang me-request aplikasiaplikasi tersebut. Salah satu solusi untuk bisa mengatasi masalah tersebut adalah dengan memanfaatkan sistem komputasi terdistribusi. Dalam sistem ini, aplikasi-aplikasi akan didistribusikan secara fisik maupun logik. Secara fisik, aplikasi akan didistribusikan ke beberapa mesin, sehingga server akan merupakan sebuah kesatuan yang terdiri dari beberapa mesin. Salah satu deskripsi sederhana untuk menjelaskan sistem terdistribusi ini adalah sistem layanan nasabah di sebuah bank. Teler ibarat sebuah server yang digunakan untuk melayani berbagai macam transaksi, seperti stor tabungan, transfer, dan pengambilan tabungan. Transaksi-transaksi itu bisa dianggap sebagai aplikasi-aplikasi yang bisa dilakukan oleh sebuah server. Jika nasabah yang antri untuk dilayani semakin banyak sementara teler hanya satu orang, maka beban teler akan berat, antrian akan sangat lama untuk bisa dilayani semua. Solusinya adalah dengan menambah beberapa teler, sehingga antrian bisa didistribusikan ke beberapa teler itu. Dalam konteks sistem terdistribusi secara logik, sistem akan dibagi-bagi berdasarkan aplikasi logik, sistem model ini tidak memandang apakah setiap aplikasi itu berada di mesin yang sama atau berbeda. Untuk membangun aplikasi komputasi terdistribusi, maka memerlukan framework yang bisa mendukung integrasi dari beberapa aplikasi. Salah satu framework yang digunakan (dan yang akan dipakai) dalam tulisan ini adalah arsitektur CORBA (Common Object Request Broker Architecture).

Definisi Komputasi Terdistribusi
Dalam memahami komputasi terdistribusi (distributed computing) dapat dilakukan dengan berbagai macam cara. Salah satu defenisi sederhana dari komputasi terdistribusi adalah proses berjalannya sebuah aktifitas komputasi yang dilakukan oleh lebih dari satu komputer yang berbeda. Pemahaman lain tentang komputasi terdistribusi adalah sebuah distribusi sebagian dari sebuah sistem informasi melalui banyak sistem komputer di banyak lokasi (Burd: 2003) 

 Sistem terdisitribusi juga merupakan kumpulan autonomous computers yang terhubung melalui sistem jaringan computer dan dilengkapi dengan sistem software tedistribusi untuk membentuk fasilitas computer terintegrasi.
Sekarang ini banyak sekali produk-produk yang pasarkan juga telah banyak proyek yang mengembangkan apa yang disebut Komputasi Terdistribusi ini, yaitu pengembangan sebuah arsitektur system yang menciptakan adanya distribusi proses data antar jaringan system yang tersambung. Sebagai contoh proyek adalah proyek Seti@Home, sebuah proyek yang berupaya mengungkap adanya kehidupan yang centas (ET) di luar angkasa. Proyek lain yang dikembangkan saat ini dan dikembangkan dengan metode komputasi terdistribusi ( Brain H.Rudal, 2005), diantaranya;
a.       Einstain@home, sebuah proyek yang mengungkap tentang teori Einstain tentang grafitasi serta hokum relativitas yang sampai saat ini belum bisa dibuktikan;
b.      Brain Fingerprinting, sebuah proyek amerika yang akan membuat system yang dapat mengungkap informasi yang ada pada otak manusia;
c.       Climate model forecast future, ini merupakan proyek yang akan memproyeksikan kondisi cuaca dunia akibat efek rumah kaca.
Dengan system ini kondisi cuaca bumi hingga setengah abad kemudian dapat segera diprediksi. Komputasi terdistribusi ini banyak diminati disebabkan metode ini lebih efiein, yaitu memanfaatkan kondisi idle/diamnya sebuah proses kerja CPU, media penyimpanan yang terdapat pada ratusan maupun ribuan sistem komputer yang terkoneksi yang bekerja bersama-sama menyelesaikan satu pekerjaan. Walaupun masih banyak kelemahan, seperti terbatasnya aplikasi untuk kompilasi, maupun 'bottleneck' pada jalur bandwith, ditambah lagi masalah keamanan serta standarisasi juga merupakan masalah lain yang tidak dapat diabaikan.
Beberapa perusahaan telah bertahun-tahun membuat dan memasarkan sistem komputasi terdistribusi, dan juga telah mengembangkan berbagai macam inisiatif dan arsitektur sehingga memungkinkan adanya pendistribusian proses data dan obyek lintas jaringan system yang terkoneksi. Hal yang menarik dari sebuah komputasi terdistribusi telah ditemukan dan dirasakan pada perkembangannya yang terakhir. Dan ini akan menjadi fokus pembahasan di mana terdapat mengkondisikan 'idle'nya sebuah CPU, media penyimpanan dalam ratusan bahkan ribuan system yang terkoneksi untuk bersama-sama menyelesaikan satu permasalahan tertentu.
Perkembangan model pemprosesan tertentu sangat lah terbatas, sehingga kompilasi aplikasi, kondisi 'bottlenecks' pada bandwith, ditambah lagi tingkat keamanan, standarisasi menjadi sebuah tantangan sendiri. Pada tahun terakhir beberapa perusahaan seperti Napster, Intel, Microsoft, Sun dan Compaq akhirnya dapat berupaya menyelesaikan permasalahan di atas, yaitu bagaimana menjadikan komputasi terdistribusi ini menjadi sebuah konsep yang cerdas dalam perkembangan system informasi modern.
Dalam perkembangannya, untuk memahami konsep komputasi terdistribusi dapat dilakukan pembandingan dengan berbagai macam konsep lain yang masing-masing memiliki karakteristik yang berbeda, diantaranya adalah cluster computing dan grid computing.

Cara Kerja Komputasi Terdistribusi
Cara kerja komputasi terdistribusi adalah beban kerja akan didistribusikan ke komputer-komputer yang terhubung untuk diselesaikan dimana semua itu dikendalikan oleh suatu sistem operasi. Pengguna hanya cukup melakukan pengaturan sistem operasi, kemudian sistem operasilah yang akan melakukan tugasnya mengorganisasi kemampuan dan tugas ke komputer-komputer itu.
Tujuan dari komputasi terdistribusi adalah menyatukan kemampuan dari sumber daya (sumber komputasi atau sumber informasi) yang terpisah secara fisik, ke dalam suatu sistem gabungan yang terkoordinasi dengan kapasitas yang jauh melebihi dari kapasitas individual komponen-komponennya.
Tujuan lain yang ingin dicapai dalam komputasi terdistribusi adalah transparansi. Kenyataan bahwa sumber daya yang dipakai oleh pengguna sistem terdistribusi berada pada lokasi fisik yang terpisah, tidak perlu diketahui oleh pengguna tersebut. Transparansi ini memungkinkan pengguna sistem terdistribusi untuk melihat sumber daya yang terpisah tersebut seolah-olah sebagai satu sistem komputer tunggal, seperti yang biasa digunakannya.

Proses
­  Dijalankan secara bersamaan (execute concurrently)
­  interaksi untuk bekerjasama dalam mencapai tujuan yang sama
­  mengkoordinasikan aktifitas dan pertukaran informasi yaitu pesan yang dikirim melalui jaringan komunikasi

Karakteristik Komputasi Terdistribusi
Ciri khas dari komputasi terdistribusi adalah heterogenitas dalam berbagai hal seperti perangkat keras, sistem operasi, dan bahasa pemrograman karena tidak mungkin untuk mengembangkan sistem terdistribusi yang homogen secara paksaan, karena secara alamiah sistem komputer terdistribusi tumbuh dari lingkungan yang heterogen. Kata kunci dalam menjembatani perbedaan-perbedaan yang muncul adalah interoperabilitas (interoperability).
Ciri lain dari komputasi terdistribusi adalah dimana pemakai tidak perlu menyadari komputer mana yang bekerja untuk melaksanakan tugas komputasi. Ibaratnya, pemakai ingin ini dan mendapat hasil komputasi yang diingkan tanpa memandang oleh siapa pekerjaan itu dikerjakan. Semua alokasi sumber daya dan penanganan kerja dikendalikan oleh sistem operasi. Dicirikan pula menggunakan banyak komputer yang saling terhubung dalam suatu jaringan komputer, untuk melakukan komunikasi proses antar komputer yang bekerja.

Kegunaan Komputasi Terdistribusi
Kegunaan komputasi terdistribusi antara lain adalah untuk membantu manusia dalam melakukan perhitungan yang sangat besar supaya dapat diselesaikan dengan cepat, tepat dan akurat, memperlancar pelayanan situs web yang sering dikunjungi, pengetesan algoritma misal dalam benchmarking masalah-masalah yang berkaitan dengan algoritma genetika, pendukung server basis data yang besar dan banyak client pengaksesnya, dan lain sebagainya. Seperti diketahui bahwa kebutuhan manusia akan komputasi yang cepat dan akurat yang tidak dapat ditangani oleh sebuah mesin komputer misal perhitungan dalam peramalan posisi benda langit di lembaga penelitian luar angkasa. Selain itu digunakan pula untuk menangani beban permintaan yang besar semisal search engine agar mampu menangani ribuan request serentak tanpa mengalami gangguan penundaan pelayanan, contohnya Google yang memiliki komputer cluster terbesar didunia.

Dampak Komputasi Terdistribusi
Komputasi terdistribusi memiliki dampak baik dan buruk bagi kehidupan umat manusia antara lain manusia lebih mudah dan lebih cepat untuk mendapatkan informasi yang mereka inginkan, membantu manusia untuk melakukan perhitungan yang sangat besar supaya dapat diselesaikan dengan cepat, tepat dan akurat, membantu perusahaan-perusahaan besar dalam masalah basis data perusahaan, dan lain sebagainya. Selain itu sistem komputasi terdistribusi juga memiliki dampak yang kurang baik karena membuat manusia semakin tergantung kepada komputer atau mesin, komputasi terdistribusi juga sering disalahgunakan untuk hal-hal yang kurang baik atau untuk kejahatan, dan penggunaan komputasi terdistribusi oleh personal kadang kala menjadi suatu pemborosan karena mereka tidak memiliki masalah sebesar perusahan atau institusi.
Selain itu, dampak dengan adanya komputasi terdistribusi adalah mempercepat penyelesaian tugas oleh komputer. Karena pengerjaannya paralel oleh karena itu dapat selesai dengan cepat dan dapat mengatur beberapa komputer dengan sistem operasi. Dampak yang paling terasa adalah pada bidang animasi. Jika pada saat merender suatu video animasi yang berdurasi panjang dengan menggunakan 1 komputer maka penikmat film akan dapat menonton film animasi tersebut beribu-ribu tahun lamanya. Dengan komputasi terdistribusi dapat dipercepat proses renderingnya dengan membagikan tugas-tigas kesetiap komputer yang saling terhubung.

Kelebihan & Kekurangan Komputasi Terdistribusi
1.      Terdapat berbagai tipe sistem komputer terdistribusi dan banyak tantangan selama perancangan dan implementasinya. Tujuan utama dari sistem komputasi terdistribusi adalah untuk menghubungkan para pengguna dan sumber daya dalam cara yang transparent, open dan scalable. Idealnya, ini akan membuat sistem lebih fault-tolerant daripada sistem komputer stand-alone.
2.      Openness merupakan properti dari sistem terdistribusi dimana setiap sub-sistem secara kontinu terbuka untuk berinteraksi dengan sistem lain. Protokol web services adalah standard yang memungkinkan sistem terdistribusi di-extend dan di-scale. Secara umum, suatu sistem terbuka yang bersifat scalable memberikan keuntungan lebih dibandingkan sistem yang tertutup dan self-contained (menyatu).
3.      Konsekuensinya, sistem terdistribusi terbuka memberikan beberapa tantangan berikut:
4.      Monotonicity. Begitu sesuatu dipublikasikan di dalam sistem terbuka (open system) maka tidak dapat diambil kembali.
5.      Pluralism. Sub-sistem-subsistem berbeda dalam sistem open distributed dapat mempunyai informasi yang heterogen, mungkin pula overlap dan menyebabkan konflik. Tidak ada pengatur kebenaran sentral dalam sistem open distributed.
6.      Unbounded nondeterminism. Secara asinkron, subsistem-subsistem dapat naik dan turun, dan link komunikasi dapat masuk dan keluar antar sub-sistem dalam sistem open distributed. Karena itu, waktu yang diperlukan untuk menyelesakan suatu operasi tidak dapat dibatasi dan dipastikan.
7.      Pembagian sumber daya antar komputer dibuat lebih mudah
8.      Menyediakan kinerja yang baik dengan mendistribusikan beban kerja ke komputer-komputer dan mengerjakan bagian dari pekerjaan itu secara bersamaan pada beberapa processor
9.      Menjadikan sistem keseluruhan lebih handal, karena kegagalan yang terjadi pada salah satu komponen dapat ditangani oleh komponen yang setingkat lainnya

Kekurangan
1.      Jika tidak direncanakan dengan tepat, suatu distributed system dapat menurunkan reliabilitas total dari komputasi jika ketidak-tersediaan dari suatu node dapat menyebabkan gangguan bagi node-node lain. Troubleshooting dan diagnosing terhadap masalah dalam distributed system dapat menjadi lebih sulit, karena perlu analisis yang berkaitan dengan node jauh atau menginspeksi komunikasi antar node di dalam sistem.
2.      Banyak tipe komputasi tidak cocok bagi lingkungan terdistribusi, biasanya yang berhubungan dengan jumlah komunikasi jaringan atau sinkronisasi yang dibutuhkan antar node. Jika bandwidth, latency, atau persyaratan komunikasi begitu signifikan, maka tidak ada keuntungan dari distributed computing dan kinerja dapat lebih burukk daripada lingkungan non-distributed.
3.      Penggunaan energi yang digunakan untuk menghidupkan komputer-komputer yang digunakan sebagai “cluster”
4.      Peralatan pendukung lainnya misalkan piranti jaringan yang digunakan untuk menghubungkan antar komputer

5.      Delay komunikasi yang terjadi tidak dapat diprediksi karena melibatkan banyak komponen serta tidak adanya referensi clock yang universal yang dapat dijadikan system clock

Pentingnya Komputasi Terdistribusi

 Contoh Umum:
­   Internet, global jaringan interkoneksi computer yang berkomunikasi melalui IP (Internet Protocol) Protocol;
­   Intranet, jaringan teradministrasi terpisah dengan batasan pada kebijakan keamanan local;
­   Mobile dan komputasi diberbagai tempat, laptops, PDA, mobile phone, printers, peraltan rumah, dll
­   World Wide Web (www), sistem untuk publikasi dan akses sumber daya dan layanan melalui Internet.

Arsitektur Komputasi Terdistribusi
Banyak arsitektur perangkat lunak dan keras yang bervariasi yang digunakan untuk komputasi terdistribusi. Pada tingkat yang lebih rendah, penghubungan beberapa CPU dengan menggunakan jaringan sangat dibutuhkan. Pada tingkat yang lebih tinggi menghubungkan proses yang berjalan dalam CPU tersebut dengan sistem komunikasi juga dibutuhkan.
Arsitektur umum yang memungkinkan sistem terdistribusi antara lain:
·         Client-server: Client menghubungi server untuk pengambilan data, kemudian server memformatnya dan menampilkannya ke pengguna.
·         Arsitektur 3-tier: Kebanyakan aplikasi web adalah 3-Tier.
·         Arsitektur N-tier: N-Tier biasanya menunjuk ke aplikasi web yang menyalurkan lagi permintaan kepada pelayanan enterprise. Aplikasi jenis ini paling berjasa bagi kesuksesan server aplikasi.
·         Tightly coupled: biasanya menunjuk kepada satu set mesin yang sangat bersatu yang menjalankan proses yang sama secara paralel, membagi tugas dalam bagian-bagian, dan kemudian mengumpulkan kembali dan menyatukannya sebagai hasil akhir.
·         Peer-to-peer: sebuah arsitektur di mana tidak terdapat mesin khusus yang melayani suatu pelayanan tertentu atau mengatur sumber daya dalam jaringan. Dan semua kewajiban dibagi rata ke seluruh mesin, yang dikenal sebagai peer.
·         Service oriented di mana sistem diatur sebagai satu set pelayanan yang dapat diberikan melalui antar-muka standar.
·         Mobile code: berdasarkan prinsip arsitektur mendekatkan pemrosesan ke sumber data
·         Replicated repository: Di mana repository dibuat replikanya dan disebarkan ke dalam sistem untuk membantu pemrosesan online/offline dengan syarat keterlambatan pembaharuan data dapat diterima.
·         Space based : Mengacu ke suatu infrastruktur yang membuat ilusi atau virtualisasi dari satu ruang-alamat (address-space) tunggal. Data secara transparan direplikasi sesuai dengan kebutuhan aplikasi.
 Aspek dasar yang lain dari arsitektur komputasi terdistribusi adalah metode untuk mengkomunikasikan dan mengkoordinasi kerja antar proses-proses konkuren. Melalui berbagai protokol message passing, proses dapat berkomunikasi secara langsung dengan yang lain, umumnya dalam suatu hubungan master/slave. Sebagai alternatif, suatu arsitektur “database-centric” memungkinkan (enable) komputasi terdistribusi dikerjakan tanpa suatu bentuk komunikasi inter-process langsung, menggunakan suatu database bersama (shared database).

Infrastruktur Komputasi Terdistribusi
·         Moab Grid Suite — Cluster workload management, reporting tools, and end user submission portal
·         Remote procedure call — This high-level communication mechanism allows processes on different machines to communicate using procedure calls even though they don't share the same address space.
·         Distributed objects — Systems like CORBA, Microsoft D/COM, Java RMI, ReplicaNet [1]
·         SOAP
·         XML-RPC
·         GLOBE
·         Acute [2] — Distributed functional programming with migration based on OCaml.
·         PYRO — Python Remote Objects
·         BOINC — Berkeley Open Infrastructure for Network Computing
·         GLOBUS — Home of the Globus Toolkit

Konkurensi
Komputasi terdistribusi mengimplementasikan suatu jenis konkurensi. Ini berhubungan erat dengan pemrograman konkuren, sehingga kadang tidak dibicarakan sebagai topik terpisah.

o   Sistem Multiprocessor
Sistem multiprocessor adalah suatu komputer yang mempunyai lebih dari satu CPU pada motherboardnya. Jika sistem operasi dibangun untuk memanfaatkan kelebihan ini, maka SO tersebut dapat menjalankan proses-proses berbeda (atau thread-thread berbeda yang dimiliki oleh proses yang sama) pada CPU-CPU berbeda.

o   Sistem Multicore
CPU-CPU Intel dari era Pentium 4 terbaru (Northwood dan Prescott) menerapkan suatu teknologi bernama Hyper-threading yang memungkinkan lebih dari satu thread (biasanya dua) untuk berjalan pada CPU yang sama. Produk processor yang lebih baru seperti Sun UltraSPARC T1, AMD Athlon 64 X2, AMD Athlon FX, AMD Opteron, Intel Pentium D, Intel Core, Intel Core 2 dan Intel Xeon menyertakan banyak core processor juga untuk meningkatkan jumlah thread yang dapat dieksekusi.

o   Sistem Multicomputer
Multicomputer dapat dianggap berupa suatu komputer NUMA loosely atau cluster yang tightly coupled. Multicomputer biasanya digunakan ketika diperlukan power komputasi tinggi tetapi lingkungan mempunyai ruang fisik atau tenaga listrik terbatas.

Topik Terkait
o   Taksonomi Komputasi
Tipe-tipe dari sistem terdistribusi didasarkan pada sistem taksonomi Flynn; single instruction, single data (SISD), single instruction, multiple data (SIMD), multiple instruction, single data (MISD), dan multiple instruction, multiple data (MIMD).

o   Cluster Komputer
Suatu cluster terdiri dari banyak mesin stand-alone yang bertindak secara paralel melintasi suatu jaringan lokal berkecepatan tinggi. Komputasi terdistribusi berbeda dengan komputasi cluster dalam hal komputer-komputer dalam suatu lingkungan komputasi terdistribusi umumnya tidak secara eksklusif menjalankan tugas-tugas “group”, sedangkan komputer-komputer tercluster biasaya lebih tightly coupled. Komputasi terdistribusi juga sering terdiri dari mesin-mesin yang tersebar luas secara geografis.

o   Komputasi Grid
Suatu grid menggunakan sumber daya dari banyak komputer terpisah, dengan bebas dihubungkan oleh suatu jaringan (bisanya Internet), untuk menyelesaikan masalah-masalah komputasi skala besar. Grid-grid publik dapat menggunakan idle time dari ribuan komputer di dunia. Aransemen demikian memungkinkan penanganan data sangat besar, proses yang sebenarnya memerlukan power super komputer mahal atau memang tidak mungkin diselesaikan. Bahasa Pemrograman

Hampir semua bahasa pemrograman yang mempunyai akses ke hardware dapat menangani pemrograman terdistribusi. Remote procedure call (RPC) mendistribusikan perintah-perintah SO melalui koneksi jaringan. Sistem seperti CORBA, Microsoft DCOM, Java RMI dan lain-lan, mencoba memetakan rancangan berorientasi obyek ke jaringan. Sistem loosely coupled berkomunikasi melalui dokumen-dokumen antara yang umumnya human readable (seperti. XML, HTML, SGML, X.500, dan EDI).

Contoh :
Berbagai proyek komputasi terdistribusi telah tumbuh pada dalam tahun-tahun terakhir. Banyak yang basis volunteer, dan melibatkan pengguna-pengguna yang mendonasikan power komputasi yang tidak digunakan untuk bekerja pada masalah komputasi yang menarik. Contoh proyek demikian termasuk proyek Folding@home di Jurusan Kimia universitas Stanford, yang difokuskan pada simulasi protein folding untuk menemukan obat penyakit dan memahami sistem biophysical; World Community Grid, suatu usaha untuk membuat grid komputasi terbesar di dunia untuk menangani proyek penelitian ilmiah yang bermanfaat bagi kemanusiaan, berjalan dan didanai oleh IBM; SETI@home, difokuskan pada analisis data radio-telescope untuk mendapatkan bukti sinyal cerdas dari angkasa, dikelola oleh Space Sciences Laboratory di University of California, Berkeley; LHC@home, digunakan untuk membantu merancang dan men-tune Large Hadron Collider, dikelola oleh CERN di Geneva; dan distributed.net yang bertitik-berat pada pemecahan berbagai cryptographic cipher.
Suatu proyek komputasi terdistribusi juga sering melibatkan kompetisi dengan sistem terdistribusi lain. Kompetisi ini dapat bertujuan prestige, atau bermaksud membujuk pengguna untuk mendonasikan power pemrosesan ke proyek tertentu. Sebagai contoh, stat races adalah ukuran kerja suatu proyek komputasi terdistribusi, berapa kemampuan komputasi selama sehari atau seminggu. Ini telah menjadi begitu penting dalam praktek, hampir semua proyek komputasi terdistribusi menawarkan analisis statistik online dari kinerja mereka, diupdate setidaknya harian jika tidak real-time.

Kesimpulan
Komputasi terdistribusi adalah proses berjalannya sebuah aktifitas komputasi yang dilakukan oleh lebih dari satu komputer yang berbeda. Sistem terdistribusi merupakan kumpulan autonomous computers yang terhubung melalui sistem jaringan computer dan dilengkapi dengan sistem software tedistribusi untuk membentuk fasilitas computer terintegrasi. Cara kerjanya adalah beban kerja akan didistribusikan ke komputer-komputer yang terhubung untuk diselesaikan dimana semua itu dikendalikan oleh suatu sistem operasi. Pengguna hanya cukup melakukan pengaturan sistem operasi, kemudian sistem operasilah yang akan melakukan tugasnya mengorganisasi kemampuan dan tugas ke komputer-komputer itu. Tujuan dari komputasi terdistribusi adalah menyatukan kemampuan dari sumber daya (sumber komputasi atau sumber informasi) yang terpisah secara fisik, ke dalam suatu sistem gabungan yang terkoordinasi dengan kapasitas yang jauh melebihi dari kapasitas individual komponen-komponennya. Komputasi terdistribusi memiliki dampak baik dan buruk bagi kehidupan umat manusia sesuai dengan kelebihan dan kekurangannya.


Tidak ada komentar: