Saya memiliki beberapa server web Linux yang terpasang pada load balancer, dan saya suka berbagi aset (seperti gambar, video, dan hal-hal lain) di antara server-server ini. Apa cara terbaik untuk melakukan ini?
Saat ini, saya telah memasang pada server file ke semua server web, tetapi saya khawatir tentang hal itu akan turun di bawah lalu lintas yang padat. Bagaimana saya bisa menghindari ini terjadi?
Terima kasih sebelumnya.
linux
web-server
file-sharing
getmizanur
sumber
sumber
Jawaban:
Ada beberapa cara untuk melakukan ini berdasarkan kebutuhan Anda.
Dua yang pertama adalah yang terbaik jika Anda memiliki banyak file baru. Yang ketiga akan menjadi solusi ideal jika Anda tidak menambah atau mengubah file yang sering karena pengguna akan mendapatkan 404 pada konten statis yang belum disinkronkan ..
Opsi terakhir mungkin ideal dalam banyak hal, tetapi mungkin juga berubah menjadi yang paling mahal dari 4. Anda juga perlu menulis ulang situs web Anda untuk mendukung ini.
sumber
Cara hebat lain untuk mengurangi beban pada server web dan melakukan penyeimbangan muatan adalah dengan squid (yaitu squid3) Atur sebagai proxy terbalik dengan caching. Ini akan men-cache konten statis seperti gambar dll ke HDD (default) atau ke RAM (lebih cepat dan terbaik) jika Anda mengaturnya seperti itu. Ia mampu membulatkan robin ke server squid lain juga jika salah satu node tertentu kelebihan beban.
sumber
Karena biasanya kebutuhan akan lebih banyak server berasal dari sumber daya yang diperlukan untuk menjalankan situs web / aps yang dinamis, pertimbangkan hosting aset statis di subdomain / domain lain. (seperti static.domainAnda.com)
Anda kemudian dapat menggunakan server lain untuk meng-host mereka. Hosting file statis tidak menggunakan banyak sumber daya, jadi Anda akan membutuhkan server yang jauh lebih sedikit untuk konten statis Anda. Anda juga akan membebaskan beberapa sumber daya di server untuk konten dinamis Anda.
Tergantung pada penyeimbang beban Anda, Anda mungkin juga dapat melakukan ini pada domain yang sama dengan penyeimbang beban memutuskan server mana yang akan digunakan untuk permintaan mana, tetapi jika Anda menggunakan domain terpisah, Anda dapat menempatkan aset statis Anda ke CDN dengan cukup mudah, jika kebutuhan harus muncul!
sumber
Salah satu solusi untuk tantangan ini yang saya pakai adalah memiliki salinan baca / tulis utama file pada drive NFS yang dibagikan, tetapi juga tetap pada salinan read-only pada setiap server web sehingga kegagalan host NFS menempatkan akses file ke file dalam mode read-only daripada kehilangan mereka sepenuhnya.
rsync
berjalan setiap 15 menit untuk menjaga salinan read-only di setiap host web tetap segar.check_link
bash script berjalan setiap menit untuk memastikan NFS gunung masih ada dan jika tidak swap symlink ke read-only copy.Rincian lebih lanjut ditemukan dalam artikel ini sejak pertama kali saya mengatur sistem ini.
Kelebihan:
Kerugian:
sumber
Anda mungkin ingin mempertimbangkan basis data NoSQL. Mereka dirancang untuk bekerja pada cluster, memberikan konsistensi pada akhirnya. Tapi hati-hati mereka tidak ASAM.
Berikut ini adalah pengantar yang akan membantu Anda memutuskan jenis database NoSQL yang Anda inginkan untuk tujuan Anda.
Berikut adalah daftar sumber daya yang terkait dengan NoSQL yang tersedia.
sumber
Mengapa Anda tidak mencoba solusi DFS, mereka memberikan redundansi tingkat tinggi dan volume dapat dibagi antara sebanyak yang Anda inginkan. Gluster adalah favorit saya dan sangat mudah untuk menginstal dan mengkonfigurasi di distro Linux yang terkenal
sumber