Komputasi terdistribusi adalah cara untuk memecahkan masalah komputasi yang memakan waktu menggunakan banyak komputer, paling sering digabungkan menjadi sistem komputasi paralel.
Salah satu penyebutan paling awal dari komputasi terdistribusi berasal dari tahun 1973. Staf R&D Xerox PARC John Schoch dan John Hupp menulis program yang dikirim sendiri ke komputer lain yang bekerja melalui LAN PARC.
Selanjutnya, sehubungan dengan perkembangan dan pertumbuhan jumlah komputer pribadi, komputasi terdistribusi mulai digunakan secara lebih luas. Misalnya, pada akhir 1980-an, Arjen Lenstra dan Mark Menes menulis program untuk memfaktorkan bilangan panjang. Dia mengirim tugas ke komputer peserta melalui email dan menerima tanggapan dengan cara yang sama.
Peristiwa penting lainnya adalah pembuatan proyek SETI @ Home (Search for Extra-Terrestrial Intelligence at Home) untuk mencari kecerdasan luar angkasa dengan menganalisis data dari teleskop radio, termasuk yang ada di komputer rumah para peserta. Proyek ini diluncurkan pada 1999 dan dihentikan pada 2020. Sistem terdistribusi ini dibangun di atas platform BOINC dari University of Berkeley.
Di masa depan, perkembangan pembuatan berbagai sistem terdistribusi terus berlanjut secara aktif, dan sekarang digunakan di berbagai bidang. Secara khusus, komputasi terdistribusi banyak digunakan untuk masalah matematika. Contoh tipikal adalah faktorisasi bilangan (penguraiannya menjadi produk faktor prima).
Area penting lainnya dari aplikasi untuk komputasi terdistribusi adalah pemrosesan data besar menggunakan pembelajaran mesin dan metode Data Mining. Sebagai bahasa pemrograman untuk tujuan ini, dalam beberapa tahun terakhir, Python telah mengambil posisi terdepan. Pada Maret 2020, menurut peringkat TIOBE, Python berada di posisi ketiga, meskipun hanya berada di urutan ketujuh pada tahun 2015.
Python β C++. .
21 , . Docker . Docker , : , ββ .
Docker Docker Swarm. . Docker- β ββ.
TCP-, . . , , . , , .
Β« Β» . Python β . . , , .
, Python β , , C++. , Python (CPython) C , . - CPython GIL (Global Interpreter Lock) - . 5 . , .
. Docker Swarm, . .
, Docker Swarm . , , , , .
, Docker Swarm, . , ββ , .
: ( ) , β β.
(6 2 β ) 20 , Linux.
: , , . . ( GIL). β , (ββ) . β , .
.
/ |
|
- |
(8 ) |
7.3525 |
39.3731 c |
(8 ) |
54.3255 c |
42.0415 |
|
|
43.4656 c |
41.4426 c |
|
|
43.5361 |
43.9102 c |
, , . - Python. , . , , , , , . , , .
Dalam pengembangan lebih lanjut dari pengembangan ini, direncanakan untuk menambahkan dukungan untuk lingkungan virtual, yang memungkinkan penggunaan modul pihak ketiga dan kerangka kerja Python, serta menghindari konflik antara versi satu modul dengan fungsi yang berbeda.
Salah satu aplikasi pengembangan yang mungkin adalah pengorganisasian pengecekan keputusan terdistribusi selama kompetisi pemrograman.