今天突然看到同事,要做一个即时聊天系统,自己就简单的了解了一下swoole是神马。
-
简介:
Swoole是一种PHP高级Web开发框架,框架不是为了提升网站的性能,是为了提升网站的开发效率。最少的性能损耗,换取最大的开发效率。利Swoole框架,开发一个复杂的Web功能,可以在很短的时间内完成。
-
环境以及配置
Swoole不是一个像Zend Framework、CakePHP、Yii、symfony、ThinkPHP等一样的框架,也不是一个像WordPress、Drupal、Discuz、UChome等开源产品看齐的项目。 Swoole的目标是向Java框架、Ruby On Rails、Python DjangoPylons等一流框架发起挑战。
运行环境:Linux Windows Mac FreeBSD Unix
PHP版本支持:PHP5.3+
支持的数据库:MS SQL Server、MySQL、IBM DB2、Oracle、Interbase 、SQLite、PostgreSQL、ODBC
支持的运行方式:Web、Cli命令行脚本、PHP-GTK GUI。
-
功能介绍
包含以下几个特色功能:
1、 类似ORM的数据查询,提供SQL封装器,让MySQL的SQL与PHP的Array,会话,Cache无缝结合。
2、App MVC分层结构,有效的程序结构分层,提高程序的可维护性和扩展性,实现低耦合,基于接口开发。
3、集成大量,实用的功能,比如方便的数据库操作,模板操作,缓存操作,系统配置,表单处理,分页,数据调用,字典操作,上传处理,内容编辑,调试等。
4、模板-数据反射系统,可以直接在模板中调用数据,提供很多标签,可是无需修改程序,只修改模板,即可实现网站各类更新维护工作。
另外的几个功能
1、Swoole包含了大量类,提供众多的功能扩展,基本上Web开发能够用到的功能类,大部分都可以在Swoole框架中找到。
2、Swoole拥有插件系统,Fckeditor、Adodb、pscws中文分词、中文全文索引系统、最新的Key-Value数据库思想,TokyoTyrant,可以无限扩展框架的功能。
-
优势:
纯C编写性能极强
简单易用开发效率高
事件驱动异步非阻塞
并发百万TCP连接
TCP/UDP/UnixSock
服务器端/客户端
支持异步/同步/协程
支持多进程/多线程
CPU亲和性/守护进程
支持IPv4/IPv6网络
-
编译安装
安装前准备:
-
php-5.3.10 或更高版本 gcc-4.4 或更高版本 make autoconf
编译安装官方有多种方法,此处介绍最简单方法:
通过PHP官方提供的pecl命令,一键下载安装swoole
-
pecl install swoole
安装完成。
添加php.ini配置,修改加入。
-
extension=swoole.so
通过
php -m
或phpinfo()
来查看是否成功加载了swoole,如果没有可能是php.ini
的路径不对,可以使用php -i |grep php.ini
来定位到php.ini
的绝对路径。基本上不会出现这种情况。
如图所示:为成功。
-
接下来就是开始搭建了。
-
教你五分钟搭建简易版聊天室:https://segmentfault.com/a/1190000003057118