Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Kaedah PHP untuk mencapai pengimbangan dan pengembangan beban pangkalan data

Kaedah PHP untuk mencapai pengimbangan dan pengembangan beban pangkalan data

王林
王林asal
2023-05-15 20:51:241001semak imbas

Dalam persekitaran semasa di mana bilangan aplikasi dan lawatan Internet terus berkembang, cara meningkatkan prestasi pengimbangan beban pangkalan data telah menjadi tumpuan setiap juruteknik. Antaranya, PHP ialah bahasa pembangunan yang biasa digunakan, dan bagaimana untuk mencapai pengimbangan dan pengembangan beban pangkalan data telah menjadi topik hangat.

Artikel ini akan menggabungkan pengalaman aplikasi praktikal untuk memperkenalkan kaedah menggunakan PHP untuk mencapai pengembangan pengimbangan beban pangkalan data, termasuk cara menyediakan persekitaran, cara mengkonfigurasi LNMP dan cara melaksanakan pengimbangan beban.

  1. Menyediakan persekitaran

Sebelum melakukan pengembangan pengimbangan beban pangkalan data, anda perlu memastikan bahawa anda mempunyai bilangan pelayan dan konfigurasi perkakasan yang mencukupi. Adalah disyorkan untuk memisahkan pengimbang beban dan pelayan pangkalan data untuk mengelakkan satu titik kegagalan. Untuk mencapai pengembangan kapasiti, tetapan rangkaian dan konfigurasi perkakasan pelayan diperlukan, serta pemasangan perisian dan alatan yang diperlukan.

  1. Mengkonfigurasi LNMP

Selepas persekitaran sedia, anda boleh mengikuti langkah di bawah untuk memasang LNMP.

Mula-mula, pasang sistem Linux. Adalah disyorkan untuk menggunakan versi stabil CentOS atau Ubuntu.

Kedua, pasang Apache, PHP dan MySQL, iaitu AMP. Anda boleh memilih untuk memasangnya menggunakan pengurus pakej seperti yum atau apt-get.

Ketiga, pasang Nginx. Anda boleh menggunakan arahan berikut untuk memasang:

yum install nginx

Keempat, pasang fail konfigurasi.

Sebelum memasang fail konfigurasi, anda perlu mencipta fail ujian PHP. Seperti berikut:

<?php
phpinfo();
?>

Kemudian, simpan fail ke direktori DocumentRoot pelayan Anda boleh menggunakan arahan berikut:

cd /usr/local/nginx/html
vi phpinfo.php

Tambahkan kod berikut pada fail yang dibuka:

location / {
  root html;
  index index.php index.html index.htm;
}
location ~ .php$ {
  fastcgi_pass 127.0.0.1:9000;
  fastcgi_index index.php;
  fastcgi_param SCRIPT_FILENAME /srv/www/htdocs$fastcgi_script_name;
  include fastcgi_params;
}
.

Simpan dan tutup fail.

Selepas itu, alihkan fail ujian PHP dari Apache ke direktori ujian Nginx, seperti berikut:

mv /usr/local/apache/htdocs/phpinfo.php /usr/local/nginx/html

Akhir sekali, mulakan perkhidmatan dan ujinya.

Mulakan semula Apache dan Nginx:

/etc/init.d/httpd restart
/etc/init.d/nginx restart

Buka fail ujian Nginx dalam penyemak imbas, seperti berikut:

http://IPAddress/phpinfo.php

akan memaparkan maklumat pemasangan PHP, membuktikan bahawa persekitaran LNMP mempunyai telah berjaya Membina.

  1. Mencapai pengimbangan beban

Selepas melengkapkan konfigurasi persekitaran LNMP, anda perlu mengkonfigurasi pengimbangan beban.

Pertama, buat gugusan bernama "php" yang mengandungi dua pelayan web. Buka fail konfigurasi Nginx dan tambah kod berikut:

http {
  upstream php_backend {
    server localhost:8888 weight=1;
    server localhost:9999 weight=2;
  }
}

Kod di atas digunakan untuk mencipta kluster bernama "php_backend" dan arahkan hos tempatan ke dua pelayan web (localhost:8888 dan localhost:9999). Antaranya, weight=2 bermaksud server mempunyai berat yang lebih tinggi daripada server dengan weight=1, iaitu lebih berkemungkinan dipilih sebagai pelayan untuk bertindak balas terhadap permintaan klien.

Kedua, buka pelayan HTTP Nginx dan tambahkan pengimbang beban kluster ke Vhost:

server {
  listen 80;
  server_name localhost;
  location / {
    proxy_pass http://php_backend;
  }
}

Kod di atas digunakan untuk mendayakan pelayan HTTP Nginx dan menambah pengimbang beban kelompok ke Vhost, dengan itu mengedarkan permintaan kepada dua pelayan web. Sudah tentu, berbilang pelayan web juga boleh ditambah pada kluster.

Akhir sekali, mulakan semula Nginx untuk menjadikan konfigurasi berkuat kuasa:

/etc/init.d/nginx restart

Selepas melengkapkan langkah di atas, pengimbang beban secara automatik akan mengedarkan permintaan kepada pelayan web mengikut berat, dengan itu mencapai beban mengimbangi.

Ringkasnya, menggunakan PHP untuk mencapai pengembangan pengimbangan beban pangkalan data boleh meningkatkan prestasi pengembangan linear dan kebolehpercayaan aplikasi dengan banyak. Melalui langkah di atas, saya percaya anda telah memahami cara menggunakan persekitaran LNMP untuk mencapai pengimbangan beban, dan berharap artikel ini dapat membantu anda.

Atas ialah kandungan terperinci Kaedah PHP untuk mencapai pengimbangan dan pengembangan beban pangkalan data. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn