Maksud desain nb proxy
Jika kita hanya berbicara tentang proses inti, cukup mengingat 3 perintah ini:
Dalam sebagian besar skenario, apa yang Anda gunakan untuk melakukan nb proxy pada dasarnya adalah tiga langkah berikut:
- Pertama gunakan
useuntuk memilih mode berjalan dari penyedia saat ini - Kemudian gunakan
generateuntuk menghasilkan konfigurasi entri sesuai env dan nama domain - Terakhir gunakan
reloadagar konfigurasi diterapkan
Jika Anda menggunakan Caddy, ganti saja nginx pada perintah dengan caddy. Jika Nginx langsung terinstal di mesin, ganti saja docker dengan local.
Ini juga merupakan pengalaman yang paling ingin diberikan oleh lapisan nb proxy ini: Anda tidak perlu masuk ke detail konfigurasi Nginx atau Caddy terlebih dahulu, cukup sambungkan pintu masuk sesuai dengan proses yang telah diperbaiki.
Mengapa cukup dengan mengingat 3 hal ini terlebih dahulu?
Karena masalah yang diselesaikan oleh nb proxy sebenarnya sangat konvergen: **Berikan aplikasi pintu masuk akses eksternal yang stabil. **
Jika Anda sudah melihat Ikhtisar Penerapan Lingkungan Produksi, Anda dapat mengingatnya secara terpisah dari nb app autostart seperti ini:
nb app autostartbertanggung jawab atas "cara melanjutkan menjalankan aplikasi setelah mesin dihidupkan ulang"nb proxybertanggung jawab atas "bagaimana aplikasi dapat menyediakan akses eksternal yang stabil melalui Nginx atau Caddy"
Jadi dalam proses penerapan yang paling umum, nb proxy tidak memerlukan banyak pemikiran. Seringkali:
- Pilih mode operasi
- Hasilkan konfigurasi
- Memuat ulang mulai berlaku
Cukup.
Apa yang dilakukan ketiga langkah ini?
use
use memecahkan masalah "bagaimana mengelola agen saat ini".
Misalnya:
nb proxy nginx use dockernb proxy nginx use local
Anda dapat menganggapnya sebagai memilih driver default dari penyedia saat ini terlebih dahulu. Perintah berikut start, reload, dan status akan bekerja dengan cara ini.
generate
generate memecahkan masalah "merender konfigurasi entri sesuai dengan env saat ini".
Misalnya:
Langkah ini akan menggabungkan informasi di env dengan parameter yang diperlukan oleh lapisan entri untuk menghasilkan konfigurasi proxy yang dapat digunakan. Masukan paling penting di sini biasanya adalah:
--env: CLI mana yang berhasil diekspos--host: Nama domain mana yang akan diikat
Dengan kata lain, generate mengelola produk konfigurasi, bukan status proses.
reload
reload memecahkan masalah "membuat konfigurasi yang baru dibuat benar-benar efektif".
Pemisahan ini memiliki manfaat langsung: pembuatan konfigurasi dan tindakan proses tidak tercampur. Saat Anda mengubah nama domain, port, atau jalur publik, buat ulang terlebih dahulu, lalu putuskan untuk menerapkannya. Seluruh proses akan menjadi lebih jelas.
Mengapa harus dirancang sebagai use → generate → reload
Karena ketiga langkah ini hanya berhubungan dengan tiga tindakan paling stabil di lapisan masuk:
- Putuskan dulu bagaimana menjalankan agen
- Kemudian putuskan entri apa yang akan dihasilkan untuk env yang mana -Akhirnya biarkan konfigurasi diterapkan
Jika Anda memasukkan semua langkah ini ke dalam perintah kotak hitam, akan tampak bahwa ada lebih sedikit perintah di permukaan. Namun, ketika masalah terjadi, sulit untuk menentukan apakah driver yang dipilih salah, konfigurasi tidak dibuat dengan benar, atau agen belum dimuat ulang.
Nah setelah dibongkar seperti ini, jalur penyelidikannya akan lebih lurus:
useKalau salah potong saja drivernyageneratesalah, buat ulang konfigurasinya.- Konfigurasi sudah benar tetapi belum berlaku, hanya
reload
Mengapa kita memerlukan nb proxy terpisah
Karena yang nb proxy ingin satukan bukanlah file konfigurasi Nginx tertentu, melainkan tindakan umum dari lapisan entri.
Yang benar-benar Anda pedulikan biasanya bukan:
-Di jalur manakah file konfigurasi berada?
- Perbedaan perintah antara Nginx dan Caddy
- Perbedaan operasional antara lokal dan buruh pelabuhan
Yang lebih Anda khawatirkan adalah:
- Bagaimana cara mengekspos lingkungan ini?
- Bagaimana cara mengubah nama domain saya?
- Bagaimana cara agar konfigurasi baru diterapkan?
nb proxy adalah menggabungkan tindakan ini ke dalam kumpulan entri CLI yang sama. Dengan cara ini, jika Anda mengingat proses inti terlebih dahulu, Anda sudah dapat mencakup sebagian besar skenario. Hanya ketika Anda ingin melanjutkan pemecahan masalah secara detail atau memerlukan konfigurasi khusus, lihat saja halaman penyedianya sendiri.
Keseluruhan
nb proxyInti kegunaan pikiran adalahuse → generate → reload- Bagi sebagian besar pengguna, mengingat 3 perintah ini sudah cukup
- Fokus desainnya bukan untuk menyembunyikan semua detail, namun terlebih dahulu memperbaiki proses tingkat masuk yang paling umum.
Jika Anda ingin terus melihat perintah spesifik, Anda dapat langsung membuka nb proxy. Jika Anda siap untuk terhubung ke pintu masuk resmi, Anda juga dapat terus melihat Reverse Proxy.

