Rumah > Soal Jawab > teks badan
Bagaimana untuk menyelesaikan keperluan berikut?
Terdapat tiga pelayan nginx
Salah satu daripada X digunakan sebagai pelayan web
Dua pelayan lampiran yang lain ialah A dan B, masing-masing menyimpan fail lampiran yang berbeza
A dan B masing-masing terikat pada nama domain:
download-a.xxx.com
download-b.xxx.com
Jika pengguna perlu memuat turun fail 123.zip selepas melawati tapak web,
Pautan muat turun ialah http://bbs.xxx.com/123.zip (perhatikan bahawa ia bukan alamat muat turun sebenar)
Tetapi saya tidak tahu pelayan A atau B yang mana fail 123.zip ini diletakkan
Alamat muat turun sebenar mungkin muat turun-a.xxx.com/123.zip atau muat turun-b.xxx.com/123. zip
Mungkin anda tidak mempunyai fail ini
Keperluan dan tujuan: Memandangkan lebar jalur eksport A dan B adalah terhad, fail diletakkan pada mesin yang berbeza, dan lebar jalur serta ruang storan A dan B digunakan dengan berkesan (Jika fail pada A dan B adalah sama, pengimbangan beban digunakan. Ia juga akan membazirkan ruang cakera A dan B untuk menyimpan fail berulang kali).
Soalan 1:Jika saya menggunakan kod php tapak web untuk menentukan pelayan mana fail tersebut berada, A atau B, dan kemudian halaman tersebut memaparkan alamat sebenar, dan pelanggan mengklik untuk memuat turunnya secara terus, bagaimana cara saya menulis kod php?
Jika kaedah di atas tidak dapat dilaksanakan, bolehkah pelayan nginx C digunakan di hadapan A dan B untuk memproses permintaan, yang bersamaan dengan peranan proksi terbalik
Pengguna mengklik pada pautan sumber http://bbs.xxx.com/123.zip pada halaman untuk memuat turun http://bbs.xxx.com ialah nama domain yang terikat kepada pelayan C. C tidak tidak menyimpan data itu sendiri.
Selepas menerima permintaan, C menentukan di mana data berada di A atau B. Jika ia berada di A, C terus memberitahu A bahawa ia berada di tempat anda, dan meminta A menghantar fail terus kepada pengguna tanpa melalui C. Bolehkah nginx mencapai keperluan di atas?
Perkara yang paling penting ialah membiarkan pelayan sasaran mengembalikan fail terus ke penyemak imbas pengguna Adakah mungkin untuk mencapai ini tanpa menggunakan trafik dan lebar jalur C?
仅有的幸福2017-05-16 17:24:10
Anda boleh menarik balik lokasi storan dalam nama fail, contohnya, menetapkan bit ke-x bermakna ia disimpan pada pelayan A/B.
Hanya menilai berdasarkan nama fail.