Rumah > Artikel > rangka kerja php > Susun mata pengetahuan swole secara terperinci (perkongsian ringkasan)
Artikel ini membawa anda pengetahuan yang berkaitan tentang swoole, termasuk permintaan fastcgi kepada proses induk swoole untuk diedarkan kepada proses kanak-kanak, tetapi ia tidak akan menjadi seperti proses anak php-fpm yang keluar selepas digunakan dan masalah lain yang berkaitan semua orang.
Pembelajaran yang disyorkan: tutorial video swole
Seluruh proses bilik sembang ialah:
- Log masuk antara muka http pengguna dibenarkan
- Dapatkan senarai rakan, mesej terakhir yang belum dibaca dan bilangan mesej yang belum dibaca rakan yang berbeza (untuk paparan halaman utama) melalui antara muka http permintaan yang dibenarkan
- Dapatkan senarai kumpulan melalui permintaan kebenaran (mesej kumpulan tidak dibaca atau belum dibaca untuk menjimatkan ruang storan)
- Cipta pautan ws
- Daftarkan mekanisme pemotongan dan penyambungan semula Apabila acara penutup dicetuskan, sambung semula ws
- Sediakan pemasa ping dan ping setiap 30 saat
- Dapatkan semua mesej yang belum dibaca melalui antara muka ws, proseskannya pada klien, tolaknya ke bar pemberitahuan, dsb.
- Terima push mesej baharu dan paparkannya dalam senarai mesej
- Apabila anda mengklik antara muka mesej kumpulan/rakan , anda akan mendapat n mesej terkini secara automatik, pengguna akan terus mendapat n mesej apabila menarik diri
mod cgi Antara Muka Gerbang Biasa (Antara Muka Gerbang Biasa) , yang membolehkan pelayan web menghantar protokol tertentu Untuk berkomunikasi dengan aplikasi, prinsip panggilan adalah kira-kira:
Permintaan pengguna->Pelayan web menerima permintaan->proses anak garpu
Panggil atur cara/laksanakan atur cara->Atur cara mengembalikan kandungan/Panggilan atur cara tamat->Pelayan web menerima kandungan->Kembali kepada pengguna
Memandangkan setiap permintaan pengguna perlu bercabang untuk mencipta proses, panggil program sekali, dan kemudian musnahkan proses, jadi prestasinya rendah
cepat-cgi ialah versi mod cgi yang dinaik taraf, ia adalah seperti Ia adalah cgi pemastautin selagi ia dihidupkan, ia sentiasa boleh memproses permintaan tanpa menamatkan proses secara kasarnya:
pelayan web pemulaan proses cgi cepat-> fork n proses terlebih dahulu
Permintaan pengguna->pelayan web menerima permintaan->menyerahkannya kepada pengurus proses cgi cepat->kawasan pengurusan proses cgi cepat menerimanya dan memberikannya kepada salah satu pemprosesan cepat-cgi percuma->Pemprosesan selesai, proses cepat-cgi menjadi terbiar, menunggu permintaan seterusnya->Pelayan web menerima kandungan->Kembali kepada pengguna Mod modul
Apache php berjalan, modul mod digunakan secara lalai, yang menggunakan php sebagai apache Modul dimulakan apabila apache dimulakan Apabila permintaan pengguna diterima, ia diproses secara langsung dengan memanggil modul mod_php
mod php-cli tergolong dalam mod baris arahan . Ia adalah yang paling sesuai untuk ramai pembangun yang baru mula belajar php dan mula wamp dan wnmp Mod operasi yang tidak dikenali
Mod ini tidak memerlukan penggunaan. program lain. Anda boleh terus memasukkan php xx.php untuk melaksanakan kod php
Perbezaan jelas antara mod baris arahan dan mod web biasa ialah:
* Tiada Masa Tamat
* Penampan dimatikan secara lalai
* Penggunaan STDIN dan STDOUT standard input/output/ralat
* echo var_dump, phpinfo dan output lain dikeluarkan terus Pergi ke konsol
* Kelas/fungsi yang tersedia adalah berbeza
* Perbezaan dalam konfigurasi php.ini
Ciri-cirinya termasuk:
Penjanaan sub-proses dinamik/statik;
Maklumat status berjalan SAPI asas (serupa dengan mod_status Apache);
Fail konfigurasi berdasarkan php.ini.
Permintaan pengguna->pelayan web menerima permintaan-> Permintaan dimajukan ke php-fpm->php-fpm diserahkan kepada proses terbiar untuk diproses
->proses pemprosesan selesai->php-fpm kembali ke pelayan web-> pelayan web menerima data-> Kembali kepada pengguna
Protokol RangkaianProtokol rangkaian dibahagikan kepada 7 peringkat mengikut langkah komunikasi Dari atas ke bawah:
Lapisan aplikasi.
Lapisan persembahan
Lapisan Sesi
Lapisan Pengangkutan
Lapisan rangkaian
Lapisan Pautan Data
Lapisan fizikal
Protokol IP ialah protokol asas Internet pada masa ini merupakan protokol rangkaian yang paling popular
Tanggungjawab IP ialah menghantar data dari sumber ke destinasi. Ia tidak bertanggungjawab untuk memastikan kebolehpercayaan penghantaran, kawalan aliran, pesanan paket dan perkhidmatan lain yang biasa kepada protokol hos-ke-hos.
Protokol ini dipanggil oleh protokol hos-ke-hos, dan protokol ini bertanggungjawab untuk memanggil protokol rangkaian tempatan untuk menghantar paket data ke hos gerbang atau destinasi seterusnya. Sebagai contoh, TCP boleh memanggil protokol IP, menghantar alamat destinasi dan alamat sumber sebagai parameter apabila IP membentuk paket data dan memanggil antara muka rangkaian tempatan (protokol) untuk menghantar paket data.
IP melaksanakan dua fungsi asas: pengalamatan dan pembahagian. IP boleh menghantar paket data ke alamat destinasi mengikut alamat destinasi yang disertakan dalam pengepala paket data Dalam proses ini, IP bertanggungjawab untuk memilih laluan penghantaran ini dipanggil fungsi penghalaan. Jika sesetengah rangkaian hanya boleh menghantar paket data kecil, IP boleh memasang semula paket data dan menunjukkannya dalam medan pengepala. Fungsi asas ini disertakan dalam modul IP, yang wujud pada setiap hos dan get laluan dalam rangkaian, dan modul ini (terutamanya pada get laluan) mempunyai penghalaan dan fungsi perkhidmatan lain. Untuk IP, tiada sambungan antara paket data, dan sukar untuk mengatakan apa-apa tentang sambungan atau pautan logik untuk IP.
IP menggunakan empat teknologi utama untuk menyediakan perkhidmatan: jenis perkhidmatan, seumur hidup, pilihan dan kod semak pengepala. Jenis perkhidmatan merujuk kepada kualiti perkhidmatan yang diharapkan. Jenis perkhidmatan ialah satu set parameter yang mewakili perkhidmatan yang boleh disediakan oleh Internet. Jenis perkhidmatan ini digunakan oleh get laluan untuk memilih parameter penghantaran sebenar pada rangkaian tertentu, atau pada rangkaian seterusnya untuk dilalui, atau get laluan seterusnya untuk menghalakan paket ini. Masa untuk hidup ialah had atas berapa lama paket boleh hidup. Ia ditetapkan oleh pengirim dan diproses oleh laluan. Jika masa untuk hidup adalah sifar sebelum ketibaan, paket akan dibuang. Pilihan ini penting untuk fungsi kawalan, tetapi untuk komunikasi biasa kehadirannya tidak diperlukan. Pilihan termasuk cap masa, keselamatan dan penghalaan khas. Kod semak pengepala memastikan penghantaran data yang betul. Jika semakan gagal, keseluruhan paket data akan dibuang.
Apabila menghantar data dari sumber ke destinasi, alamat IP diperlukan untuk penghantaran alamat IP kini dibahagikan kepada alamat IPv4 dan IPv6 yang paling biasa sekarang ialah alamat IPv4, seperti 127.0.0.1 (mesin ini Alamat) 119.75.217.109 (Baidu ip)
Transmisi IP mesti mempunyai alamat ip yang jelas sebelum data boleh dihantar
TCP (Transmission Control Protocol) Ia adalah berorientasikan sambungan, boleh dipercayai, protokol komunikasi lapisan pengangkutan berasaskan aliran bait, yang ditakrifkan oleh RFC 793 IETF. Dalam model rangkaian komputer OSI yang dipermudahkan, ia melengkapkan fungsi yang ditentukan oleh lapisan pengangkutan lapisan keempat (UDP) ialah satu lagi protokol pengangkutan penting dalam lapisan yang sama. Dalam suite protokol Internet, lapisan TCP ialah lapisan perantaraan yang terletak di atas lapisan IP dan di bawah lapisan aplikasi. Sambungan seperti paip yang boleh dipercayai sering diperlukan antara lapisan aplikasi hos yang berbeza, tetapi lapisan IP tidak menyediakan mekanisme aliran sedemikian, tetapi menyediakan pensuisan paket yang tidak boleh dipercayai.
Lapisan aplikasi menghantar aliran data yang diwakili oleh bait 8-bit untuk penghantaran antara rangkaian ke lapisan TCP, dan kemudian TCP Strim data dibahagikan kepada segmen dengan panjang yang sesuai (biasanya dihadkan oleh unit penghantaran maksimum (MTU) lapisan pautan data rangkaian yang komputer disambungkan). TCP kemudian menghantar paket yang terhasil ke lapisan IP, yang menghantar paket melalui rangkaian ke lapisan TCP entiti penerima. Untuk memastikan kehilangan paket tidak berlaku, TCP memberikan setiap paket nombor jujukan Pada masa yang sama, nombor jujukan juga memastikan bahawa paket yang dihantar kepada entiti penerima diterima dengan teratur. Entiti penerima kemudian menghantar balik pengakuan sepadan (ACK) untuk paket yang berjaya diterima jika entiti pengirim tidak menerima pengakuan dalam kelewatan perjalanan pergi balik (RTT) yang munasabah, paket data yang sepadan diandaikan telah diterima akan dihantar semula. TCP menggunakan fungsi checksum untuk menyemak sama ada data mempunyai ralat dikira kedua-dua semasa menghantar dan menerima.
TCP ialah protokol lapisan pengangkutan dalam Internet dan menggunakan protokol jabat tangan tiga hala untuk mewujudkan sambungan. Selepas pihak aktif menghantar permintaan sambungan SYN, ia menunggu pihak lain membalas dengan SYN ACK, dan akhirnya melakukan pengesahan ACK pada SYN pihak lain. Kaedah mewujudkan sambungan ini boleh menghalang sambungan yang salah. Protokol kawalan aliran yang digunakan oleh TCP ialah protokol tetingkap gelongsor bersaiz berubah. Proses jabat tangan tiga hala TCP adalah seperti berikut:
Pelanggan menghantar mesej SYN (SEQ=x) ke pelayan dan memasuki keadaan SYN_SEND.
Pelayan menerima mesej SYN, membalas dengan mesej SYN (SEQ=y) ACK (ACK=x 1) dan memasuki keadaan SYN_RECV.
Pelanggan menerima mesej SYN daripada pelayan, membalas dengan mesej ACK (ACK=y 1) dan memasuki keadaan Ditubuhkan.
Selepas sambungan berjaya, kedua-dua pihak boleh menghantar aliran bait antara satu sama lain, dan sambungan boleh ditutup pada bila-bila masa Data yang dihantar mempunyai ciri berikut
Data yang dihantar dibahagikan oleh TCP kepada blok data yang paling sesuai untuk dihantar dan dihantar ke protokol IP ini dipanggil segmen mesej atau segmen
tcp ialah sambungan yang boleh dipercayai Setiap kali segmen data dihantar, pemasa akan dimulakan Setiap kali segmen data diterima, pengesahan akan dihantar pemasa tidak menerima data dalam masa, Setelah disahkan, data akan dihantar semula
TCP akan mengekalkan jumlah semak pengepala dan datanya. Ini ialah jumlah semak hujung ke hujung yang direka untuk mengesan sebarang perubahan dalam data semasa penghantaran. Jika terdapat ralat dalam jumlah semak segmen yang diterima, TCP akan membuang segmen tersebut dan tidak mengakui penerimaan segmen tersebut (dengan harapan pengirim akan tamat masa dan menghantar semula).
Dua aplikasi bertukar aliran bait bait 8-bit melalui sambungan TCP. TCP tidak memasukkan pengecam rekod ke dalam aliran bait. Kami memanggil perkhidmatan bytestream ini. Jika aplikasi satu pihak mula-mula menghantar 10 bait, kemudian 20 bait, dan kemudian 50 bait, pihak satu lagi sambungan tidak akan dapat memahami berapa banyak bait yang dihantar oleh pengirim setiap kali. Selagi penimbal terimanya sendiri tidak penuh, penerima TCP akan menerima seberapa banyak yang boleh diterimanya. Satu hujung meletakkan aliran bait pada sambungan TCP, dan aliran bait yang sama akan muncul pada hujung satu lagi sambungan TCP.
Mewujudkan sambungan memerlukan tiga jabat tangan, dan menamatkan sambungan memerlukan empat gelombang Ini disebabkan oleh penutupan separuh TCP. Proses khusus adalah seperti berikut.
Proses permohonan mula-mula memanggil tutup, mengatakan bahawa penghujung melakukan "penutupan aktif". TCP pada hujung itu kemudian menghantar segmen FIN untuk menunjukkan bahawa data telah dihantar.
Rakan sebaya yang menerima FIN ini melakukan "tutup pasif" (tutup pasif), dan FIN ini disahkan oleh TCP.
Nota: Penerimaan FIN juga diserahkan kepada proses permohonan penerima sebagai fail akhir, dan diletakkan dalam baris gilir menunggu proses permohonan diterima Selepas sebarang data lain, kerana penerimaan FIN bermakna proses permohonan yang menerima tidak mempunyai data tambahan untuk diterima pada sambungan yang sepadan.
Selepas beberapa ketika, proses permohonan yang menerima aksara akhir fail ini akan memanggil dekat untuk menutup soketnya. Ini menyebabkan TCPnya turut menghantar FIN.
TCP pengirim asal yang menerima FIN akhir ini (iaitu penghujung yang melakukan penutupan aktif) mengesahkan FIN ini. Memandangkan setiap arah memerlukan FIN dan ACK, 4 segmen biasanya diperlukan.
"Biasanya" bermaksud bahawa dalam beberapa kes, FIN langkah 1 dihantar bersama-sama dengan data Selain itu, segmen yang dihantar dalam langkah 2 dan 3 adalah kedua-duanya Dari sisi yang melakukan penutupan pasif, adalah mungkin untuk digabungkan menjadi bahagian. Di antara langkah 2 dan 3, adalah mungkin untuk mengalirkan data dari bahagian yang melakukan penutupan pasif ke bahagian yang melakukan penutupan aktif Ini dipanggil "separuh tutup". Apabila proses Unix ditamatkan, sama ada secara sukarela (memanggil keluar atau kembali daripada fungsi utama) atau secara tidak sukarela (menerima isyarat yang menamatkan proses), semua deskriptor terbuka ditutup, yang juga menyebabkan mana-mana TCP masih terbuka A FIN juga dikeluarkan pada sambungannya. Sama ada pelanggan atau pelayan boleh melakukan penutupan aktif. Biasanya, pelanggan melakukan penutupan aktif, tetapi beberapa protokol, seperti HTTP/1.0, meminta pelayan melakukan penutupan aktif.
php boleh diakses melalui Fungsi soket, sambungan swoole, dan fungsi aliran mencipta soket protokol tcp, mengikat port kad rangkaian, dan melaksanakan operasi pelayan/klien tcp Dalam php, kita tidak perlu mengetahui jabat tangan/lambai tcp, kita hanya perlu mengetahui ip:port Hanya boleh menyambung/membuat pelayan/klien tcp
Menggunakan soket PHP, kami boleh terus menghantar rentetan dan menerima rentetan yang lain adalah bahasa dan perkara yang perlu dilakukan oleh sistem pengendalian >
Kami hanya perlu mengendalikan integriti rentetan Sebagai contoh, kami menggunakan php sebagai pelayan tcpSelepas sambungan klien berjaya, "easyswoole. ialah rangka kerja swole yang sangat baik" rentetan
Pelayan hanya menerima 9 bait setiap kali, jadi pemerolehan pertama hanya akan menerima rentetan "easyswool" yang tidak lengkap dan anda perlu terus mendapatkan data
Proses permintaan http adalah kira-kira seperti berikut:
Pengguna memasukkan dalam penyemak imbas www.easyswoole.com
analisis pelayan dns/atau hos tempatan, perbandingan hos penghala untuk mendapatkan ip
Jika penyemak imbas mengakses port lalai 80, alamat tcp yang diakses ialah ip:80
Protokol tcp 3 hala jabat tangan untuk mewujudkan sambungan
Hantar tajuk permintaan permintaan http
Pelayan memperoleh pengepala permintaan permintaan http, menunjukkan bahawa akses ialah akses http, menghuraikan pengepala permintaan http dan memperoleh jenis permintaan, format permintaan dan data permintaan (kuki, dapatkan, hantar data)
Pelayan menghantar data respons dan memutuskan sambungan secara aktif
Pelayar menerima data respons, menghuraikan jenis teks respons, menghuraikan data dan memutuskan sambungan
Dalam protokol https, terdapat lapisan tambahan protokol penyulitan dan penyahsulitan tls dan ssl dalam permintaan dan respons Port lalai telah berubah daripada 80 kepada 443
disebabkan oleh Selalunya, PHP digunakan untuk pelayan web, jadi protokol yang paling kerap didedahkan oleh pembangun PHP ialah protokol HTTP berdasarkan protokol TCP/IP
Di kalangan pengaturcara junior PHP, sebenarnya, tidak ada pemahaman terperinci tentang protokol http, tetapi anda boleh menggunakan rangkaian f12->pelayar untuk melihat pengepala permintaan khusus protokol http dan pengepala respons yang dihantar oleh pelayan
Sebelum terdapat protokol WebSocket, satu-satunya cara untuk melaksanakan ruang sembang pada halaman web ialah menggunakan ajax untuk membuat tinjauan secara berterusan dan meminta sama ada pelayan mempunyai data ini kaedah akan menyebabkan beberapa siri masalah:
Jika selang pengundian terlalu pendek, ia akan menyebabkan pelanggan dan pelayan terus melaksanakan http tcp berjabat tangan dalam tempoh masa /Gerakan melambai dan penghantaran pengepala permintaan http dan pengepala respons menggunakan banyak sumber pelayan Jika terdapat bilangan pengguna yang besar, pelayan akan sibuk dan juga masa henti
Pelanggan hanya boleh mendapatkan sama ada pelayan mempunyai data untuk dikembalikan dengan menghantar permintaan http setiap kali, dan ketepatan masa data tidak dapat dijamin
Dalam proses melaksanakan sambungan websocket, anda perlu menghantar permintaan sambungan websocket melalui penyemak imbas, dan kemudian pelayan menghantar respons biasanya dipanggil "Jabatan Tangan" .
Dalam API WebSocket, penyemak imbas dan pelayan hanya perlu melakukan tindakan berjabat tangan, dan kemudian saluran pantas dibentuk antara penyemak imbas dan pelayan.
Data boleh dipindahkan terus antara keduanya. Dalam protokol WebSocket ini, ia membawa dua faedah utama kepada kami untuk mencapai perkhidmatan segera:
Pengepala: Pengepala yang berkomunikasi antara satu sama lain adalah sangat kecil - kira-kira sahaja 2 Bait
Tekan Pelayan: Tekan Pelayan Pelayan tidak lagi menerima permintaan penyemak imbas secara pasif sebelum mengembalikan data, tetapi secara aktif menolaknya ke penyemak imbas apabila terdapat data baharu.
UDP ialah singkatan dari User Datagram Protocol Nama Cina ialah User Datagram Protocol Ia adalah protokol lapisan pengangkutan tanpa sambungan dalam model rujukan OSI (Open System Interconnection), menyediakan Perkhidmatan Pemindahan Mesej berorientasikan transaksi yang mudah dan tidak boleh dipercayai. IETF RFC 768 ialah spesifikasi rasmi untuk UDP. Nombor protokol UDP dalam paket IP ialah 17.
Nama penuh protokol UDP ialah User Datagram Protocol Dalam rangkaian, ia digunakan untuk memproses paket data seperti protokol TCP. Ia adalah protokol Tanpa Sambungan. Dalam model OSI, lapisan keempat - lapisan pengangkutan, adalah lapisan atas protokol IP. UDP mempunyai kelemahan kerana tidak menyediakan pengelompokan paket data, pemasangan, dan ketidakupayaan untuk mengisih paket data Dalam erti kata lain, selepas mesej dihantar, adalah mustahil untuk mengetahui sama ada ia telah tiba dengan selamat dan lengkap. UDP digunakan untuk menyokong aplikasi rangkaian yang perlu menghantar data antara komputer. Banyak aplikasi rangkaian pelanggan/pelayan, termasuk sistem persidangan video rangkaian, memerlukan penggunaan protokol UDP. Protokol UDP telah digunakan selama bertahun-tahun sejak penubuhannya Walaupun kegemilangan awalnya telah dibayangi oleh beberapa protokol yang serupa, UDP masih merupakan protokol lapisan pengangkutan rangkaian yang sangat praktikal dan boleh dilaksanakan sehingga hari ini.
Seperti protokol TCP (Transmission Control Protocol) yang terkenal, protokol UDP berada terus di atas protokol IP (Internet Protocol). Menurut model rujukan OSI (Open Systems Interconnection), kedua-dua UDP dan TCP adalah protokol lapisan pengangkutan. Fungsi utama protokol UDP adalah untuk memampatkan trafik data rangkaian ke dalam bentuk paket data. Paket data biasa ialah unit penghantaran data binari. 8 bait pertama bagi setiap paket data digunakan untuk mengandungi maklumat pengepala, dan bait selebihnya digunakan untuk mengandungi data penghantaran tertentu.
Kedua-dua udp dan tcp ialah protokol lapisan pengangkutan, kedua-duanya terletak pada lapisan atas protokol ip Perbezaannya ialah:
udp ialah protokol tanpa sambungan dan tidak memerlukan jabat tangan tcp
Panjang maksimum udp yang dihantar ialah 65535, manakala tcp boleh menghantar secara berterusan selepas berjabat tangan
Protokol udp menggunakan nilai semakan dalam pengepala untuk memastikan keselamatan data. Nilai semakan mula-mula dikira oleh algoritma khas pada pengirim data dan perlu dikira semula selepas ia dihantar kepada penerima. Jika datagram diganggu oleh pihak ketiga semasa penghantaran atau rosak akibat bunyi talian atau sebab lain, pengiraan semak pengirim dan penerima tidak akan sepadan, jadi protokol UDP boleh mengesan sama ada terdapat ralat. Ini berbeza daripada protokol TCP, yang memerlukan nilai semakan.
Mesej UDP tidak mempunyai jaminan kebolehpercayaan, jaminan jujukan dan medan kawalan aliran, dsb., dan kebolehpercayaannya adalah lemah. Walau bagaimanapun, kerana protokol UDP mempunyai pilihan kawalan yang lebih sedikit, kelewatan semasa penghantaran data adalah kecil, dan kecekapan penghantaran data adalah tinggi Ia sesuai untuk aplikasi yang tidak memerlukan kebolehpercayaan yang tinggi, atau aplikasi yang boleh menjamin kebolehpercayaan, seperti DNS. TFTP, dan SNMP tunggu.
Dalam persekitaran yang kualiti rangkaian sangat tidak memuaskan, kehilangan paket protokol UDP akan menjadi lebih serius. TCP akan melakukan pengesahan pengesahan untuk memastikan pihak lain berjaya menerima
udp boleh disiarkan kepada semua hos dalam gateway
Di peringkat perisian php-fpm, berbilang cepat-cgi. proses akan Ia tergolong dalam pemprosesan berbilang proses, tetapi apabila pengguna memulakan permintaan dan
diserahkan oleh nginx kepada php-fpm untuk diproses, pada masa ini tahap, setiap permintaan sebenarnya hanya Menduduki proses php fast-cgi untuk memproses logik Proses php yang menjalankan logik perniagaan sebenarnya adalah satu proses.
Begitu juga, Apabila kita menjalankan fail php secara langsung, secara lalai hanya satu proses php dibuka untuk menjalankan kod php
Dalam mod web tradisional, php sentiasa menjadi satu proses untuk mengendalikan logik perniagaan Sahaja dalam php- Dalam mod cli, ia digunakan untuk mengendalikan tugas asynchronous Apabila berkhidmat sebagai pelayan rangkaian, pemprosesan berbilang proses adalah mungkin.
Gunakan sambungan pcntlKomunikasi baris gilir mesej, menggunakan baris gilir mesej linux, dilanjutkan melalui sysvmsg, anda boleh melihat:
Proses komunikasi isyarat, anda boleh lihat:
Komunikasi memori dikongsi memetakan bahagian memori yang boleh diakses oleh proses lain ini dicipta oleh satu proses, tetapi boleh diakses oleh berbilang proses.
Memori bersama ialah kaedah IPC terpantas Ia direka khas untuk ketidakcekapan kaedah komunikasi antara proses yang lain.
Ia sering digunakan bersama dengan mekanisme komunikasi lain, seperti isyarat, untuk mencapai penyegerakan dan komunikasi antara proses.
Komunikasi soket
Komunikasi pihak ketiga juga boleh dicapai menggunakan operasi fail, mysql, redis dan kaedah lain
Coroutine
Coroutine bukan proses atau urutan dan proses pelaksanaannya lebih serupa dengan subrutin, atau panggilan fungsi tanpa nilai pulangan.
Sesuatu program boleh mengandungi berbilang coroutine, yang boleh dibandingkan dengan proses yang mengandungi berbilang thread, jadi mari kita bandingkan coroutine dan thread di bawah.
Kami tahu bahawa berbilang rangkaian agak bebas, mempunyai konteksnya sendiri dan penukaran dikawal oleh sistem dan coroutine juga agak bebas,
Terdapat konteksnya sendiri, tetapi penukarannya dikawal dengan sendirinya, dan penukaran daripada coroutine semasa kepada coroutine lain dikawal oleh coroutine semasa.
Oleh kerana coroutine sedang dalam proses Satu rentetan kod tugas, jadi pembolehubah globalnya, pembolehubah statik dan pembolehubah lain semuanya dikongsi, termasuk penimbal global php
Saya dalam sambungan coroutine /O
Disyorkan Belajar: tutorial swole
Atas ialah kandungan terperinci Susun mata pengetahuan swole secara terperinci (perkongsian ringkasan). Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!