websocket - php socket
今天研究websocket的时候,发现网上很多websocket+php的demo都是要在命令行输入php -q xxx.php来启动服务端,我对php不是很熟悉,想请问以下这种场景能实现吗?
浏览器ajax请求创建socket-->服务端接收并建立socket,返回socket地址和端口,
浏览器接收到socket地址和端口,开始new websocket,与服务端建立socket链接。
另外:每个浏览器与同一服务器建立socket连接,服务端是不是就得新开一条进程??
回复内容:
今天研究websocket的时候,发现网上很多websocket+php的demo都是要在命令行输入php -q xxx.php来启动服务端,我对php不是很熟悉,想请问以下这种场景能实现吗?
浏览器ajax请求创建socket-->服务端接收并建立socket,返回socket地址和端口,
浏览器接收到socket地址和端口,开始new websocket,与服务端建立socket链接。
另外:每个浏览器与同一服务器建立socket连接,服务端是不是就得新开一条进程??
使用命令行运行服务端,是因为这样更健壮,不要尝试以php-fpm或者apache这样WEB服务的方式建立起服务端,不切实际。
PHP编写服务端,可以考虑下用这个,http://www.swoole.com/。
一般稳定的server都要以deamon的形式运行存在。
楼上说的swoole是用C扩展实现的php socket server,类似的还有workerman,workerman是基于php的pcntl实现,可以说是原生PHP实现的,共同点就是一定要以deamon形式运行server,抛开http层的apache或者nginx,直接走socket(按我的理解,是传输层的东西)。
ajax可以链接server,你可能,我是说可能,会遇到ajax跨域的问题。

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

AI Hentai Generator
Menjana ai hentai secara percuma.

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



Dalam bab ini, kita akan memahami Pembolehubah Persekitaran, Konfigurasi Umum, Konfigurasi Pangkalan Data dan Konfigurasi E-mel dalam CakePHP.

PHP 8.4 membawa beberapa ciri baharu, peningkatan keselamatan dan peningkatan prestasi dengan jumlah penamatan dan penyingkiran ciri yang sihat. Panduan ini menerangkan cara memasang PHP 8.4 atau naik taraf kepada PHP 8.4 pada Ubuntu, Debian, atau terbitan mereka

Untuk bekerja dengan tarikh dan masa dalam cakephp4, kami akan menggunakan kelas FrozenTime yang tersedia.

Bekerja dengan pangkalan data dalam CakePHP adalah sangat mudah. Kami akan memahami operasi CRUD (Buat, Baca, Kemas Kini, Padam) dalam bab ini.

Untuk mengusahakan muat naik fail, kami akan menggunakan pembantu borang. Di sini, adalah contoh untuk muat naik fail.

Dalam bab ini, kita akan mempelajari topik berikut yang berkaitan dengan penghalaan ?

CakePHP ialah rangka kerja sumber terbuka untuk PHP. Ia bertujuan untuk menjadikan pembangunan, penggunaan dan penyelenggaraan aplikasi lebih mudah. CakePHP adalah berdasarkan seni bina seperti MVC yang berkuasa dan mudah difahami. Model, Pandangan dan Pengawal gu

Pengesah boleh dibuat dengan menambah dua baris berikut dalam pengawal.
