1 Star 1 Fork 3

星期兄弟 / Swoole学习

加入 Gitee
与超过 600 万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
第一课 WebSocket.md 2.37 KB
一键复制 编辑 Web IDE 原始数据 按行查看 历史
pozen 提交于 2020-12-02 17:09 . 第一到九课合并到章节一

第一课 WebSocket 聊天示例

1. 搭建VirtualBox 开发环境

  • CentOS7 镜像
    • 网络配置 NAT + Host-Only - iptables - firewall
      • 不需要端口转发,只需要配置静态IP(第二块Host-Only网卡)
      • 关闭iptables,否则只有22、80端口可供外部访问
          vi /etc/sysconfig/network-scripts/ifcfg-enp0s8
          systemctl restart network
          
          php -S "0.0.0.0:8080"
          netstat -ntlp
          wget localhost:8080
    
          service iptables stop
      
          history
    
  • lnmp 安装包
  • 安装swoole 扩展
          phpize
          ./configure --with-php-config=/usr/local/php/bin/php-config
          make 
          make install

2. 运行服务端 server.php

  • ip地址设置成 0.0.0.0,否则外部无法访问
          $server = new Swoole\Websocket\Server("0.0.0.0", 9502);

3. 运行客户端

  • 运行结果:1万次收发总耗时12秒
    • 注意:数据收发的顺序被少许打乱,例如:第七个响应是6,第八个直接跳到了10,789在后面才响应。
    client.html:17 WebSocket 连接成功...
    client.html:23 接收到的数据: 我来了...->当前时间:17:9:21
    client.html:23 接收到的数据: 你好啊 服务器 当前时间:17:9:23->1:0->当前时间:17:9:23
    client.html:23 接收到的数据: 你好啊 服务器 当前时间:17:9:23->1:1->当前时间:17:9:23
    client.html:23 接收到的数据: 你好啊 服务器 当前时间:17:9:23->1:2->当前时间:17:9:23
    client.html:23 接收到的数据: 你好啊 服务器 当前时间:17:9:23->1:3->当前时间:17:9:23
    client.html:23 接收到的数据: 你好啊 服务器 当前时间:17:9:23->1:4->当前时间:17:9:23
    client.html:23 接收到的数据: 你好啊 服务器 当前时间:17:9:23->1:5->当前时间:17:9:23
    client.html:23 接收到的数据: 你好啊 服务器 当前时间:17:9:23->1:6->当前时间:17:9:23
    client.html:23 接收到的数据: 你好啊 服务器 当前时间:17:9:23->1:10->当前时间:17:9:23
    ……
    client.html:23 接收到的数据: 你好啊 服务器 当前时间:17:9:23->1:9997->当前时间:17:9:35
    client.html:23 接收到的数据: 你好啊 服务器 当前时间:17:9:23->1:9998->当前时间:17:9:35
    client.html:23 接收到的数据: 你好啊 服务器 当前时间:17:9:23->1:9999->当前时间:17:9:35

评论 ( 0 )

你可以在登录后,发表评论

PHP
1
https://gitee.com/xqxd/swoole-learning.git
git@gitee.com:xqxd/swoole-learning.git
xqxd
swoole-learning
Swoole学习
master

搜索帮助