


Bagaimana untuk mengkonfigurasi pelayan proksi Nginx dalam bekas Docker untuk meningkatkan kebolehskalaan anjal perkhidmatan web?
Bagaimana untuk mengkonfigurasi pelayan proksi Nginx dalam bekas Docker untuk meningkatkan kebolehskalaan anjal perkhidmatan web?
Dalam era pengkomputeran awan hari ini, penskalaan elastik merupakan cara penting untuk mengekalkan ketersediaan tinggi dan prestasi tinggi perkhidmatan web. Sebagai teknologi kontena yang ringan, Docker telah menjadi alat penting untuk membina seni bina penskalaan anjal. Sebagai pelayan proksi terbalik berprestasi tinggi, Nginx boleh mengagihkan trafik dengan berkesan dan meningkatkan kebolehpercayaan perkhidmatan dan keupayaan mengimbangi beban. Artikel ini akan memperkenalkan cara mengkonfigurasi pelayan proksi Nginx dalam bekas Docker untuk meningkatkan kebolehskalaan anjal perkhidmatan web.
Pertama, kita perlu membina perkhidmatan web mudah untuk ujian. Kami menggunakan Node.js sebagai pelayan web dan rangka kerja Express.js untuk membina aplikasi Hello World yang ringkas. Berikut ialah contoh kod untuk aplikasi Node.js yang mudah:
// app.js const express = require('express'); const app = express(); app.get('/', (req, res) => { res.send('Hello, World!'); }); app.listen(3000, () => { console.log('Server is running on port 3000'); });
Seterusnya, kami menggunakan Docker untuk menyimpan aplikasi kami. Cipta Fail Docker dalam direktori akar projek dan isikan kandungan berikut:
# Dockerfile FROM node:alpine WORKDIR /app COPY package*.json ./ RUN npm install COPY . . EXPOSE 3000 CMD ["node", "app.js"]
Fail Docker di atas menentukan imej asas kami sebagai nod:alpine, menetapkan direktori kerja sebagai /app dan menyalin kebergantungan aplikasi dan kod ke Mirroring. Pada masa yang sama, kami mendedahkan port 3000 bekas dan melaksanakan perintah nod app.js untuk menjalankan aplikasi kami semasa memulakan bekas.
Seterusnya, kami menggunakan Docker untuk membina imej dan menjalankan bekas. Jalankan arahan berikut pada baris arahan:
$ docker build -t myapp . $ docker run -dp 3000:3000 myapp
Arahan di atas akan membina imej bernama myapp dan memulakan bekas untuk menjalankan aplikasi kami. Kami memetakan port 3000 kontena ke port 3000 hos dan menetapkan kontena untuk dijalankan di latar belakang.
Kini, aplikasi kami berjaya dijalankan dalam bekas Docker dan boleh diakses dengan mengakses port 3000 alamat IP hos.
Seterusnya, kami akan mengkonfigurasi pelayan proksi Nginx untuk menyediakan pengimbangan beban dan fungsi penskalaan anjal. Pertama, kita perlu memasang Nginx dan mengedit fail konfigurasi Nginx. Jalankan arahan berikut dalam baris arahan:
$ sudo apt-get update $ sudo apt-get install nginx $ sudo nano /etc/nginx/conf.d/default.conf
Dalam fail konfigurasi Nginx yang dibuka, isikan kandungan berikut:
# /etc/nginx/conf.d/default.conf upstream app_servers { # 在这里填入你的Docker容器IP和端口信息,可以有多个 server <CONTAINER_IP>:3000; } server { listen 80; location / { proxy_pass http://app_servers; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; } }
Dalam fail konfigurasi di atas, kami menggunakan blok huluan untuk menentukan kluster pelayan aplikasi kami, iaitu, kami Bekas buruh pelabuhan. Kami mengisi alamat IP bekas dan port ke dalam blok pelayan dan menggunakan arahan proxy_pass untuk memproksi permintaan kepada kluster pelayan aplikasi.
Selepas menyimpan dan keluar dari fail konfigurasi Nginx, mulakan semula perkhidmatan Nginx:
$ sudo service nginx restart
Kini, pelayan proksi Nginx kami telah dikonfigurasikan. Kami boleh mengakses aplikasi kami dengan mengakses alamat IP hos Di bawah fungsi pengimbangan beban Nginx, permintaan akan diedarkan kepada mana-mana contoh dalam kelompok kontena Docker kami.
Apabila kita perlu menambah contoh bekas untuk penskalaan elastik, kita hanya perlu menjalankan semula arahan docker untuk memulakan bekas baharu. Nginx secara automatik menemui contoh kontena baharu dan memasukkannya dalam pengimbang beban.
Ringkasan:
Dengan memasukkan aplikasi kami dengan Docker dan mengkonfigurasi pelayan proksi Nginx, kami boleh mencapai kebolehskalaan anjal perkhidmatan web. Menggunakan Docker dan Nginx bersama-sama boleh mengembangkan dan mengurus perkhidmatan web dengan sangat fleksibel. Saya harap artikel ini akan membantu anda memahami cara mengkonfigurasi pelayan proksi Nginx dalam bekas Docker untuk meningkatkan kebolehskalaan anjal perkhidmatan web.
Atas ialah kandungan terperinci Bagaimana untuk mengkonfigurasi pelayan proksi Nginx dalam bekas Docker untuk meningkatkan kebolehskalaan anjal perkhidmatan web?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

Video Face Swap
Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas





Kaedah pelaksanaan: 1. Tambahkan kebergantungan Docker Java API pada projek anda 2. Buat klien Docker 3. Gunakan klien Docker untuk mencipta dan memulakan bekas Docker;

Konfigurasi kemas kini cache proksi Nginx, tindak balas masa nyata kepada perubahan kandungan laman web Pengenalan: Dengan peningkatan jumlah lawatan tapak web, cara meningkatkan prestasi laman web telah menjadi isu penting. Nginx ialah pelayan HTTP berprestasi tinggi dan pelayan proksi terbalik, dan caching proksi merupakan bahagian penting daripadanya. Dalam operasi dan penyelenggaraan harian, selalunya perlu untuk mengemas kini dan mengubah suai kandungan tapak web sambil mengekalkan kelajuan tindak balas apabila pengguna mengaksesnya. Artikel ini akan memperkenalkan cara mengkonfigurasi caching proksi dalam Nginx dan membolehkannya bertindak balas ke tapak web dalam masa nyata

Bahasa Go ialah salah satu bahasa yang paling popular untuk pembangunan Internet hari ini Dalam pembangunan harian, selalunya perlu menggunakan bekas Docker untuk membina persekitaran pembangunan tempatan untuk perkhidmatan. Artikel ini akan menerangkan secara ringkas aplikasi bekas Docker dalam pembangunan bahasa Go. Pengenalan kepada Docker Containers Docker ialah teknologi virtualisasi yang boleh membantu pembangun menyediakan persekitaran pembangunan dengan pantas, membina imej, menggunakan aplikasi, dsb. secara tempatan, dengan itu mengelakkan ketidakkonsistenan dalam pembangunan, ujian, penggunaan, dsb. yang disebabkan oleh persekitaran yang berbeza. Bekas Docker ialah Doc

Rangka kerja Java menyokong penskalaan anjal dalam seni bina perkhidmatan mikro melalui mekanisme berikut: Kubernetes: platform untuk mengurus dan menskalakan aplikasi dalam kontena yang secara automatik melaraskan bilangan replika kontena berdasarkan beban. SpringBootActuator: Menyediakan titik akhir untuk memantau dan mengurus aplikasi, yang boleh digunakan untuk mengumpul metrik beban dan mencetuskan operasi penskalaan.

Dasar pengimbangan beban lanjutan berwajaran round-robin: tetapkan pemberat berdasarkan kapasiti atau prestasi pelayan, memberi keutamaan kepada pelayan dengan beban yang lebih rendah. //Contoh undian berwajaran $servers=array("server1" =>1,"server2" =>2,"server3" =>3);//Pilih pelayan secara rawak berdasarkan berat $selected_server=array_rand($servers,1) ;Sambungan minimum: Berikan sambungan baharu kepada pelayan dengan bilangan sambungan terkecil. //Contoh sambungan minimum $servers=array();$min_connections=null;$selected_server=n

Dalam era pengkomputeran awan, kontena telah menjadi asas seni bina aplikasi moden. springcloudkubernetes ialah bahagian penting dalam ekosistem springCloud Ia menyediakan pembangun set alat yang komprehensif untuk menggunakan dan mengurus aplikasi SpringBoot dengan lancar ke dalam kelompok Kubernetes. Kelebihan Teknologi Kontena Kontena membawa banyak kelebihan, termasuk: Pengasingan dan mudah alih: Bekas mengasingkan aplikasi daripada infrastruktur asas, memastikan aplikasi boleh berjalan secara normal dalam persekitaran yang berbeza. Penskalaan elastik: Kubernetes boleh menskalakan salinan bekas secara automatik mengikut beban untuk memenuhi keperluan aplikasi dan meningkatkan penggunaan sumber. Penemuan Perkhidmatan: Kubernetes

Bagaimana untuk menyediakan pelayan proksi Nginx untuk mencapai pengimbangan beban antara berbilang pelayan? Pengenalan: Dalam aplikasi Internet moden, pengimbangan beban pelayan adalah salah satu faktor penting untuk memastikan ketersediaan tinggi, prestasi dan kebolehskalaan aplikasi. Nginx ialah pelayan proksi sumber terbuka berprestasi tinggi dengan fungsi pengimbangan beban yang berkuasa. Artikel ini akan memperkenalkan cara menggunakan pelayan proksi Nginx untuk mencapai pengimbangan beban dan memberikan contoh kod yang berkaitan. Langkah 1: Pasang Nginx Mula-mula, kita perlu memasang Nginx. Boleh lulus sebagai

Cara Mengkonfigurasi Pelayan Proksi Nginx untuk Menyulitkan Perkhidmatan Web Menggunakan Bekas Docker Dalam dunia Internet hari ini, melindungi keselamatan perkhidmatan Web telah menjadi semakin penting. Untuk melindungi data sensitif daripada dicuri atau diganggu semasa penghantaran, ia telah menjadi amalan standard untuk menggunakan protokol HTTPS untuk menyulitkan perkhidmatan web. Artikel ini akan memperkenalkan cara menggunakan bekas Docker untuk mengkonfigurasi pelayan proksi Nginx untuk melaksanakan penyulitan perkhidmatan web. Docker ialah platform kontena sumber terbuka yang membantu pembangun memudahkan aplikasi
