- Tugas distribusi ini adalah untuk berkonsultasi dengan beberapa layanan dan menyatukan hasil dalam satu komunitas API.
- Kelas Arquitecturas: server-klien (tingkat 3 dan N), P2P, layanan mikro, dan SOA, sesuai kebutuhan.
- Ventajas: escalado horizontal, tolerancia a fallos, baja latencia dan otonomi; retos: lengkap dan aman.
- Contoh nyata: tata nama distribusi IGN, dengan J2EE/GWT, pestañas por fuente, multibahasa dan multiplataforma.
Distribusi yang sibuk adalah jawaban modern dan klasik: temukan informasi dengan cepat dan dapat dilakukan ketika data sedang dibagikan ulang di banyak situasi. Ketika berkonsultasi dengan basis server yang unik, sistem membalas konsultasi dengan berbagai layanan atau mesin dan mengumpulkan hasil, mengurangi waktu dan menghilangkan sisa botol. Untuk menangkap ide, piensa dalam sebuah aplikasi web dapat mengunduh berbagai fungsi secara paralel dan menjalankan semua yang dilakukan dalam satu antarmuka saja.
Di dekat perangkat lunak bagaimana fungsinya, dan apa perbedaan dari enfoques tradisional, apa arsitektur yang mungkin dilakukan, ventilasinya dan ketidaknyamanannya, teknologi yang mungkin akan diterapkan dan jika praktiknya sangat ilustratif: tata nama yang didistribusikan secara impulsif oleh Institut Geográfico Nacional de España. Berdasarkan hal yang tidak ajaib ini, karena sistem distribusinya tidak sesuai dengan masalah bisnis.
Apa yang dimaksud dengan distribusi bisnis?
Ketika Anda melakukan distribusi untuk merujuk pada aplikasi atau layanan yang memberikan konsultasi yang sama untuk beberapa nomor dan layanan, dan sebagainya merekonstruksi suatu jawaban yang koheren. Hal ini, pada dasarnya, sebuah aplikasi yang didistribusikan dengan fokus pada konsultasi: sebuah program yang dijalankan dalam berbagai pesanan dalam waktu singkat dan komunikasi melalui jalur merah untuk mencapai suatu tujuan bersama.
Jenis aplikasi ini bisa jadi sederhana seperti model server-klien (klien yang beroperasi dan melayani layanan), atau lebih canggih, dengan berbagai klien dan berbagai layanan yang terkoordinasi. Kuncinya adalah proses, penyimpanan, dan pemulihan informasi yang tidak bergantung pada mesin sendiri, karena ada hubungan yang bekerja sama.
Dalam banyak skenario, perangkat lunak dipisahkan dari bagian-bagiannya: bagian yang terlihat oleh pengguna (klien atau front-end) dengan persyaratan sederhana dari komputer, dan lainnya yang merupakan pekerjaan besar (server atau back-end), memiliki potensi dan dedikasi yang lebih besar. Dalam kasus lain, fungsinya akan terbagi menjadi beberapa layanan mikro yang independen, yang kemudian akan dijalankan sebagai kontener dari sebuah cluster dalam jumlah penduduk asli di nube. Modularidad ini memfasilitasi escalar, aislar fallos dan evolucionar cada pieza sin frenar el resto.
Bagaimana fungsi distribusinya
Mekanik biasanya mengatur ketika klien tiba dan berkonsultasi. Un componente coordinator Anda akan didistribusikan ke seluruh sumber daya terkait: Anda dapat menggunakan layanan internal, API eksternal, basis data, atau mesin khusus. Setiap bagian melakukan proses dan mengembangkan respons dalam format aslinya.
Untuk membuka format dan standar yang berbeda, sering kali penggunaan adaptor yang menormalkan petisi dan tanggapan, penerimaan una API unificada. Jadi, meskipun ada teknologi yang berbeda-beda, bagi klien semuanya sama dengan layanan bisnis yang unik. Ini adalah upaya untuk mengurangi penerimaan dan menyederhanakan evolusi sistem pada saat itu.
Ketika aplikasi telah diseñado dalam kelas layanan mikro, logika pengiriman, kumpulan hasil, penyaringan, dan pesanan biasanya akan hidup dalam layanan yang berbeda, setiap kali dihapus sebagai konten dalam sebuah cluster. Pengguna modern mengizinkan penyesuaian otomatis nomor replika jika sesuai dengan muatan, menyeimbangkan lalu lintas, dan menjaga perangkat disertakan jika ada hal yang sama.
Pada akhirnya, jawaban terbuka untuk klien yang dapat ditampilkan di berbagai blok atau pesta di masa mendatang, dengan paginación dari setiap asal jika gagal. Presentasinya diambil dari back-end izinkan saya mengoptimalkan pengalaman penggunaan tanpa menggunakan motor.
Aplikasi otonom dari distribusi
Dalam aplikasi otonom, semuanya dilakukan dalam satu sistem: proses, penyimpanan, dan pemulihan bergantung pada mesin atau servernya. Sederhananya itu adalah hal yang besar: kecuali apa yang harus dilakukan, tanpa melalui media dan dengan beberapa kemungkinan kesalahan komunikasi.
Tapi sayangnya, jelas sekali: kapasitas terbatas, ausencia de escalado horizontal dan ununico punto de fallo. Jika sistem ini demikian, aplikasi ini tersedia. Selain itu, ketika proyek sedang berjalan, desainnya akan lebih panjang: lebih banyak orang yang mengetahui dasar kode yang sama tanpa batasan yang pasti antara komponen-komponennya.
Aplikasi yang didistribusikan, oleh pihak Anda, memberikan tanggung jawab yang sama ke berbagai mesin, dapat dioperasikan di server dan klien setiap saat dan dalam kapasitas untuk mentoleransi kesalahan komponen individu. Jika Anda tidak bisa melihat apa pun, Anda bisa kembali ke Tarea. Ini juga merupakan manfaat dari peningkatan horizontal, yang tidak mungkin dilakukan oleh model yang berdiri sendiri. Jadi, ketahanan dan peningkatan ini sangat besar dengan kinerja yang lebih baik dan kinerja yang lebih baik.
¿Dónde y para qué se usa?
Distribusi bisnis ini berguna dalam praktik organisasi mana pun dengan informasi yang tersedia dalam berbagai sumber. Piensa di rumah sakit, bancos, dan layanan lain di tempat lain persona de distintos lugares trabajan sobre los mismos registros Pada saat yang sama, setiap orang memiliki data yang berbeda (altas, directions, transacciones, dll.).
Beberapa contoh yang diketahui dari aplikasi yang disebarkan, yang diilustrasikan dengan baik dan bahwa Anda mungkin ingin mengetahui hal ini, maka:
- Navegadores con redes distribuidas como Tor (Tor).
- Situs e-dagang yang meningkat menjadi besar, seperti Amazon atau eBay (Amazon, eBay).
- Aplikasi berbasis blockchain, misalnya Bitcoin atau Ethereum (Bitcoin, Ethereum).
- Platform komputasi en la nube como AWS atau Microsoft Azure (AWS, Microsoft Azure).
- Basis data terdistribusi dari gaya Couchbase atau Apache Cassandra (Couchbase, Apache Cassandra).
- Redes P2P dari pertukaran arsip como BitTorrent (BitTorrent).
Pada akhirnya, aplikasi apa pun yang menjaga data di situs dan berkonsultasi dengan orang lain ya, ini juga terjadi di kamp distribusi. Perbedaan antara solusi adalah dalam arsitektur yang dipilih untuk menyelesaikan tugas ini.
Model dan arsitektur referensi
Hilangnya arsitektur yang memungkinkan distribusi dilakukan sesuai dengan prinsip sistem distribusi. Las más habituales se apoyan en estos modelos:
Klien-pelayan. Ini adalah patron yang paling dasar: satu atau beberapa klien terhubung dengan satu atau beberapa server. Apakah pesan, data, dan petisi perhitungan antarkamera.
- Arsitektur tiga tingkat. Bagilah solusi dalam kapasitas presentasi (antarmuka pengguna), kapasitas aplikasi (logika akses dan proses), dan kapasitas data (tidak tinggal dan tetap menyimpan data). Separar responsabilidades facilita mantener y escalar.
- Arsitektur N tingkat. Mirip dengan bagian depan, tetapi setiap fungsi tetap hidup pada mesin atau cluster Anda, memungkinkan Anda untuk mengisi muatan dan mengurangi elastis.
Peer-to-peer (P2P). Semua pesanan ini bertindak sebagai klien dan server, tanpa titik sentral yang akan Anda lakukan. Setiap sistem dikelola dengan cara yang sama di dalam merah, itulah yang menyederhanakan puesta en marcha dan el manejo para ciertos casos de uso.
Layanan mikro. Aplikasi ini merupakan layanan yang sangat kecil, sangat kohesif dan tidak dapat diganggu gugat, semuanya mewakili kemampuan bisnis yang konkret. Este acoplamiento débil mendukung evolusi berkelanjutan dan peningkatan selektif.
Arsitektur Berorientasi Layanan (SOA). Aplikasi ini dibangun sebagai rangkaian layanan yang berkolaborasi melalui protokol standar yang dipromosikan reutilización y flexibilidad. Itu adalah suatu hal yang alami ketika ada sesuatu yang heterogen.

Ventilasi bisnis distribusi
Ada manfaat yang lebih besar dari pesan tersebut Inilah yang berikut ini, yang diperoleh secara langsung dari pengoperasian sistem distribusi:
- Escalado horizontal. Jika Anda dapat meningkatkan kapasitas layanan atau sistem baru, perluas tanpa menyimpan yang asli dan menghapusnya dengan mudah.
- Toleransi kesalahan. Saat dijalankan dalam berbagai sistem, setiap bagian dapat bekerja tanpa kesalahan lainnya. Koneksi ini menolak layanan yang lebih besar.
- Latensi rendah. Distribusi pekerjaan mengurangi waktu respons, meningkatkan komputasi, dan data jika diperlukan.
- Autonomía y control local. Setiap pengguna yang memegang kendali penuh atas data dan lokasi lokalnya, mengurangi risiko manipulasi atau keseluruhan sistem.
- Efisiensi biaya untuk ruang berukuran sedang. Berbagai pesanan dibagikan secara berulang melalui memaksimalkan efisiensi dan fleksibilitas ekonomi.
Desventajas dan kembali menjadi pertimbangan
También hay contrapartidas yang bisa Anda lihat di radar setelah peluncuran ini:
- Selesaikan desain dan pengoperasiannya. Mantener, menghilangkan dan mendiagnosis masalah yang menimbulkan beban kerja walikota.
- Superficie de ataque dan riesgos de data. Lebih banyak layanan, sistem, dan basis berarti lebih banyak potensi keuntungan. Anda perlu memperbarui keamanan dan perlindungan di seluruh lokasi.
- Ketergantungan Jaringan. Masalah di jaringan yang menghubungkan bagian-bagian tersebut dapat mengganggu komunikasi antara aplikasi dan mempengaruhi kualitas layanan.
Teknologi dan perangkat yang biasa
Bangunlah distribusi bisnis yang solid dengan tujuan yang baik arquitecturas de sistemas distribuidos, middleware, markos de trabajo dan bases de datas. Pemilihan perangkat yang sebenarnya bergantung pada persyaratan fungsi, bahasa program, dan karakteristik lainnya.
Untuk menghapus dan mengelola jenis aplikasi ini, hal yang paling umum terjadi berulang kali adalah contenedores con Docker ya orquestadores seperti Kubernetes. Platform ini berisi pertanyaan terbaru, peningkatan, keseimbangan muatan, dan gerakan untuk mendistribusikan formulir deklarasi.
Jika infrastrukturnya tidak sesuai permintaan, plataforma akan menjadi hal yang sama AWS dan Microsoft Azure layanan penting IaaS dan SaaS yang memfasilitasi solusi tingkat lanjut yang dapat ditingkatkan distribusinya tanpa harus memasang semua perangkat keras atau cimientos dari sana.
Praktik apa pun: tata nama yang didistribusikan oleh IGN
Sebuah contoh yang jelas tentang distribusi bisnis yang diterapkan pada sebuah rumah beton nomenclátor distribuido, sebuah aplikasi web yang dirancang untuk melokalisasi toponim dan menampilkan informasi terkait dengan cara yang mudah dan intuitif. Pengoperasiannya terdiri dari berbagai cara untuk mendistribusikan layanan penamaan yang berbeda, namun semua informasi akan terpusat pada satu repositori.
Perangkat ini diimplementasikan dengan J2EE y tecnología GWT, dan Anda menggunakan fokus untuk mengakses sumber data balasan, menjaga antarmuka konsultasi seragam. Untuk menggunakan adaptor kemampuan untuk menghubungkan berbagai jenis layanan (yang berarti Anda memiliki standar yang berbeda) dan memaparkan salah satu API konsultasi, homogenkan jawaban dalam format yang umum.
Masukkan kemampuan Anda untuk menggunakan toponim dan layanan penamaan yang berbeda siguiendo varios criterios, dan tampilan hasil yang ditampilkan: setiap orang muncul di pesta independen, dengan penomoran halaman yang asli untuk navigasi biasa. Ini adalah fasilitas untuk membandingkan informasi antara seluruh sumber dan maksud dari pemandangan yang dibawa setiap orang.
Además, la aplicación es multibahasa dan Anda telah mempelajari metodologi internasional Java. Dalam versi aktual yang mendukung bahasa Español, Inglés, Francés, Portugués, Catalán, Gallego dan Euskera, hal ini sangat sesuai dengan konteks administratif dan ilmiah yang menggabungkan berbagai bahasa.
En cuanto al despliegue, es multiplataforma (Windows dan Unix). Persyaratan minimal dari server yang dihubungkan dengan Tomcat dan mesin virtual Java. Di tempat klien cukup dengan browser web dengan dukungan JavaScript, Anda dapat mengurangi hambatan akses. Anda dapat mengakses aplikasi di dalam http://www.idee.es/IDEE-Gazetteer/index.html.
Pendistribusian nomenklatur ini merupakan inisiatif dari Instituto Geográfico Nacional de España (IGN), hasil dari kolaborasi ilmiah dan teknik dengan Grup Sistem Informasi Avanzados dari Universidad de Zaragoza (IAAA), dengan teknologi GeoSpatiumLab SL (GSL). Publikasi asli ini dibuat oleh Christian (GeoSpatiumLab), apa yang dilakukan di bawah pekerjaan yang berhubungan dengan organisme masyarakat, akademisi, dan perusahaan.
Distribusi yang sibuk memungkinkan untuk mengatasi masalah nyata dalam data yang hidup dalam beberapa sumber, seiring dengan peningkatan skalabilitas, ketahanan dan respons yang cepat. Dengan arsitektur seperti server klien, P2P, layanan mikro, atau SOA, dan perangkat seperti pesaing, pertanyaan, dan platform di tempat lain, mungkin untuk menghasilkan solusi yang solid. Jika pendistribusian nama IGN hanya karena ini tidak dapat dilakukan, maka Anda harus berlatih ketika harus berkonsultasi dengan informasi geografis yang dibagikan dalam berbagai layanan.

