tcpdump安装_高性能Swoole扩展的安装与使用入门

99787943f37ac70c080e498ed9352cd7.gif

8f0335910d5b0a3495674848bf17ebb8.pngSwoole 概述

Swoole是面向生产环境的PHP异步网络通信引擎。使用纯C语言编写(Swoole 4开始逐渐改为通过C++编写),提供了PHP语言的异步多线程服务器、异步TCP/UDP网络客户端、异步MySQL、异步Redis、数据库连接池、AsyncTask、消息队列、毫秒定时器、异步文件读写、异步DNS查询。 除了异步IO的支持之外,Swoole为PHP多进程的模式设计了多个并发数据结构和 IPC 通信机制,可以大大简化多进程并发编程的工作。其中包括了并发原子计数器,并发 HashTable、Channel、Lock、进程间通信 IPC 等丰富的功能特性。 之前的PHP一直被诟病的一个原因就是它是同步阻塞式语言,这在Web应用这种 IO密集型的领域对于编写高并发高性能的应用而言,是一个重大阻碍。有了Swoole之后,PHP开发人员可以轻松编写高性能的异步并发TCP、UDP、Unix Socket、HTTP以及WebSocket服务,从而使得PHP语言在异步IO和网络通信领域开疆拓土,Swoole让PHP插上了异步的翅膀,让它飞得更高。 关于 Swoole 的官方中文文档可以看这里:https://wiki.swoole.com 。 如果想要更好的掌握Swoole的底层原理,需要具备以下知识储备: 多进程/多线程
  • 了解 Linux 操作系统进程和线程的概念
  • 了解 Linux 进程/线程切换调度的基本知识
  • 了解进程间通信的基本知识,如管道、UnixSocket、消息队列、共享内存
SOCKET
  • 了解 SOCKET 的基本操作如 accept/connect、send/recv、close、listen、bind
  • 了解 SOCKET 的接收缓存区、发送缓存区、阻塞/非阻塞、超时等概念
IO复用
  • 了解 select/poll/epoll
  • 了解基于 select/epoll 实现的事件循环,Reactor 模型
  • 了解可读事件、可写事件
TCP/IP网络协议
  • 了解 TCP/IP 协议
  • 了解 TCP、UDP 传输协议
调试工具
  • 使用 gdb 调试 Linux 程序
  • 使用 strace 跟踪进程的系统调用
  • 使用 tcpdump 跟踪网络通信过程
  • 其他 Linux 系统工具,如 ps、lsof、top、vmstat、netstat、sar、ss 等
5eca189e6cf33608a6935a2073856c7a.png 一、安装准备 安装前必须保证系统已经安装了下列软件:
  • php-7.1 或更高版本
  • gcc-4.8 或更高版本
  • make
  • autoconf
二、快速安装 Swoole项目已收录到PHP官方扩展库,除了手工下载编译外,还可以通过PHP官方提供的pecl命令,一键下载安装:
pecl install swoole
最后,编译安装成功后,修改php.ini加入( 找到php.ini的路径输入 php -i | grep php.ini )

9c677358babfd6b381542950f17d2c6b.png

php -i | grep php.ini

加入以下内容:

extension=swoole.so
通过php -m来查看是否成功加载了swoole.so

459af4bc930e2f0e380b56cf712698b1.png

三、测试 1、编写swoole_http.php文件
<?php // 监听本地9505端口$server = new swoole_http_server('0.0.0.0', 9505);// 服务器启动时返回响应$server->on("start", function ($server) {echo "Swoole http server is started at http://127.0.0.1:9505\n";});// 向服务器发送请求时返回响应// 可以获取请求参数,也可以设置响应头和响应内容$server->on("request", function ($request, $response) {$response->header("Content-Type", "text/plain");$response->end("Hello World\n");});// 启动 HTTP 服务器$server->start();
2、启动服务
php swoole_http.php

运行结果:

62e34536120ece0e7d7f9a0212758e1f.png

测试结果:

6b585559185d9dcf6c4d4d2fa05a6ef8.png

好了,以上就是Swoole安装及入门方法,下期分享 LaravelS 的安装方法! 14c3fc7670ccd177979110ebdeb54e67.gif

1、phpstorm2020 永久激活亲测有效(强烈建议收藏)

2、phpstorm2020永久激活,有效期至2089年

3、phpstorm 全网最全的IDEA快捷键总结

e547acc2a69886fa36a87d4445f9a327.png
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值