Rumah > Artikel > pembangunan bahagian belakang > Apakah perbezaan antara nts dan ts dalam php
Perbezaan antara nts dan ts dalam php: ts bermaksud keselamatan utas, dan mekanisme penguncian digunakan untuk akses berbilang utas Apabila satu utas mengakses data tertentu kelas ini, utas lain tidak boleh mengaksesnya pada masa yang sama masa; manakala nts bermaksud keselamatan bukan Benang, tiada perlindungan capaian benang disediakan, berbilang benang boleh mengendalikan data yang sama pada masa yang sama.
Persekitaran pengendalian artikel ini: sistem Windows 10, PHP versi 7.1, komputer Dell G3.
Semasa proses membina persekitaran pembangunan dan pengeluaran PHP, anda perlu memasang penghurai bahasa PHP. Pihak rasmi menyediakan dua jenis versi, versi selamat-benang (TS) dan versi tidak selamat-benang (NTS) Kadangkala persekitaran pembangunan dan persekitaran pengeluaran sebenar adalah berbeza, jadi kami juga perlu memilih untuk memasang yang sepadan versi PHP.
Tulis nota di sini untuk rujukan mudah nanti...
1. >TS (Keselamatan Benang) bermaksud keselamatan utas Apabila diakses oleh berbilang utas, mekanisme penguncian digunakan Apabila utas mengakses data tertentu kelas ini, data dikunci dan dilindungi, dan utas lain tidak boleh berbuat demikian pada masa yang sama Selepas mengakses data, utas lain tidak boleh mengakses dan menggunakan data sehingga utas selesai membaca Kelebihannya ialah tiada ketidakkonsistenan data atau pencemaran data, tetapi ia akan mengambil masa lebih lama daripada NTS.
Pilih versi TS apabila PHP dimuatkan dalam mod ISAPI (biasa digunakan oleh Apache).
NTS:NTS (None-Thread Safe) tidak selamat untuk thread dan tidak menyediakan perlindungan akses data Ada kemungkinan untuk berbilang thread beroperasi dengan cara yang sama data satu demi satu atau pada masa yang sama Dalam kes ini, adalah mudah untuk menyebabkan kekeliruan data (iaitu, data kotor), dan masa pelaksanaan operasi am adalah lebih pendek daripada TS.
Apabila PHP dimuatkan dan dijalankan dalam mod FAST-CGI, pilih versi TNS untuk prestasi yang lebih baik; Antara Muka Pengaturcaraan Aplikasi), biasanya merujuk kepada dimuatkan oleh pelayan http dan dijalankan dalam bentuk modul pelayan Ia dicadangkan oleh Microsoft, jadi ia hanya boleh dijalankan pada platform menang, seperti apache dan iis under win [cgi cepat. mod adalah lebih stabil] , manakala php pada Linux berjalan sebagai modul Apache (kaedah biasa) atau php-fpm (kaedah ini lebih sesuai untuk operasi PHP NGINX).
CGI:cgi (Antara Muka Gerbang Biasa): Alat untuk pelayan HTTP untuk "bercakap" dengan program pada mesin pelanggan Secara ringkasnya, cig ialah bahasa bahagian belakang yang boleh berkomunikasi dengan pelayan. Pada masa ini, PHP berjalan sebagai program bebas, yang dicirikan oleh memakan memori.
CGI CEPAT:
CGI pantas ialah CGI yang tahan lama Ia boleh dilaksanakan sepanjang masa selagi ia diaktifkan, ia tidak akan dijalankan setiap masa masa. Ia mengambil masa untuk membuat proses baru. Kaedah ini adalah sambungan terbuka CGI seni bina berskala yang bebas bahasa, gelagat utamanya adalah untuk mengekalkan proses penterjemah CGI dalam ingatan dan dengan itu memperoleh prestasi yang lebih tinggi.
FAST-CGI ialah pelan penambahbaikan yang dicadangkan oleh Microsoft untuk menyelesaikan kekurangan jurubahasa CGI. Apabila permintaan dihantar ke pelayan web, pelayan web akan sentiasa melakukan proses penterjemah CGI untuk memproses permintaan Selepas proses selesai, hasilnya akan dikembalikan kepada pelayan web akan mengembalikan hasil dan paparan Proses itu tamat Apabila pengguna meminta halaman yang sama sekali lagi, pelayan web akan menghentikan proses baharu untuk mengendalikan permintaan, yang akan menjadi tidak cekap (sebab utama mengapa CGI dikritik). Jika penterjemah FAST-CGI digunakan, proses tidak akan dilog keluar selepas permintaan dilaksanakan, tetapi proses yang dipertingkatkan akan memasuki tempoh tidak aktif Apabila permintaan baharu diterima, proses yang dipertingkatkan akan didayakan semula untuk diproses. FAST-CGI mengurangkan penggunaan sumber proses penciptaan berulang berbanding dengan CGI. Proses dan urutan: Suatu proses mempunyai sekurang-kurangnya satu atau lebih urutan.
2. Pilih
Biasanya di bawah kemenangan, gabungan PHP Apache berjalan dalam mod ISAPI.
Biasanya terdapat dua jenis di bawah Linux:
Apache PHP, PHP secara amnya dijalankan sebagai modul Apache
Nginx PHP, dalam bentuk phpfast cgi, iaitu ialah, php -fpm berjalan dalam mod, yang mempunyai prestasi yang baik untuk konkurensi tinggi dan beban tinggi, jadi banyak tapak web menggunakan mod ini untuk membina persekitaran. Nginx mempunyai konfigurasi yang jauh lebih sedikit daripada Apache, jadi kebarangkalian ralat manusia adalah kurang, tetapi Apache lebih stabil daripada Nginx. Terdapat banyak perkara karut sebelum ini, berikut adalah perkara utama...
Ringkasan:
Untuk berjalan dalam mod ISAPI, gunakan versi TS thread-safe
Gunakan FAST- Jika berjalan dalam mod CGI atau PHP-FPM, gunakan versi NTS yang tidak selamat untuk benang
Biasanya pilih TS untuk Apache PHP di bawah Windows, dan pilih TNS untuk PHP di bawah IIS ( fast-cgi)
Biasanya pilih TS untuk Apache PHP di bawah Linux , Nginx PHP pilih TNS
Pembelajaran yang disyorkan: "
Tutorial Video PHP"
Atas ialah kandungan terperinci Apakah perbezaan antara nts dan ts dalam php. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!