centos7.4 64位下swoole安装及配置
关键词: 发布时间:2018-06-14 23:00:45 浏览次数:1773

方法1:(自测安装失败)

pecl install swoole


方法2:【源码安装swoole】,自测安装成功


安装对异步redis的支持:

官方文档:https://wiki.swoole.com/wiki/page/p-redis.html

操作步骤:

wget https://github.com/redis/hiredis/archive/v0.13.3.tar.gz

tar -zxvf v0.13.3.tar.gz

cd hiredis-0.13.3/

[root@localhost hiredis-0.13.3]make -j

[root@localhost hiredis-0.13.3]sudo make install

[root@localhost hiredis-0.13.3]sudo ldconfig


安装需要的包:

  1. yum install glibc-headers  

  2. yum install gcc-c++   

安装swoole:

www.swoole.com首页找到下载:

https://gitee.com/swoole/swoole/tree/v2.1.2

yum install git

git clone https://gitee.com/swoole/swoole.git

或直接下载zip包然后unzip

cd进入解压后的目录

看看有没有configure这个文件,如果没有,在解压后的swoole目录中执行:

/php安装目录/bin/phpize

执行完成后就可以看到生成的configure文件了

./configure --help可以看到安装时可以指定的相关设置项

如:

--with-php-config=/usr/local/bin/php-config(指定php配置文件路径)

--enable-async-redis(增加对异步redis的支持)

--enable-coroutine(开启协程)

[root@localhost swoole]# ./configure --with-php-config=/usr/local/bin/php-config --enable-openssl --enable-async-redis --enable-mysqlnd

[root@localhost swoole]#make clean(如果之前make过,执行一下次行命令)

[root@localhost swoole]#make

[root@localhost swoole]#make install后,可以看到屏幕打印出生成的扩展的路径


可能遇到的问题:

php-m 发现swoole消失或者是通过php --ri swoole没有显示async redis client

或报类似错误:


PHP Warning:  PHP Startup: Unable to load dynamic library 'swoole' (tried: /usr/local/lib/php/extensions/no-debug-non-zts-20170718/swoole (/usr/local/lib/php/extensions/no-debug-non-zts-20170718/swoole: cannot open shared object file: No such file or directory), /usr/local/lib/php/extensions/no-debug-non-zts-20170718/swoole.so (libhiredis.so.0.13: cannot open shared object file: No such file or directory)) in Unknown on line 0


解决方法:

vi ~/.bash_profile

在最后一行添加 export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib

source ~/.bash_profile

重新编译安装swoole即可


检查安装是否成功:

php -m 查看swoole扩展是否开启

php --ri swoole查看async redis client => enabled是否存在


【让php7支持swoole】

在php.ini中添加

extension=swoole

extension=sockets(如果报错的话)

php -m 查看是否有swoole扩展

到之前下载的swoole源码中的examples/server下执行

php echo.php

如果不报错就安装成功了

netstat -ntlp看看


【tcp与udp的区别】

https://blog.csdn.net/li_ning_/article/details/52117463


【查看进程及状态】

ps aft | grep tcp.php(某个server文件的名称)


    D    不可中断     Uninterruptible sleep (usually IO)

    R    正在运行,或在队列中的进程

    S    处于休眠状态

    T    停止或被追踪

    Z    僵尸进程

    W    进入内存交换(从内核2.6开始无效)

    X    死掉的进程


    <    高优先级

    N    低优先级

    L    有些页被锁进内存

    s    包含子进程

    +    位于后台的进程组

    l    多线程,克隆线程


【nginx转发】

将root指向的目录中不存在的请求转发

location / {

root /home/....

index index.html

if 这里有个空格(!-e $request_filename){

  #以下是一台机器时的配置方法

  proxy_pass http://ip:端口;

  #以下是多台机器时的配置方法

  proxy_pass http://swoole_hurong

}

}


upstream swoole_hurong这个名称随便起 {

server ip:端口 weight=2;#等号两边不能有空格

server ip:端口 weight=1;

}

【nginx负载均衡】

第一台承担2/3

第二台承担1/3

upstream swoole_hurong这个名称随便起 {

server ip:端口 weight=2;#等号两边不能有空格

server ip:端口 weight=1;

}


赞:(0)
踩:(0)
相关文章
windows下使用MongoDB Compass Com
Oracle VM VirtualBox上不了网的解
Oracle VM VirtualBox中设置共享文
centos7.4 64位下安装php-7.2.5及p
centos7.4 64位下安装nginx及站点
centos7.4 64位下composer安装及配
centos7.4 64位下安装MariaDB 10.2
centos7.4 64位下Git安装及使用
centos7.4 64位下redis安装密码设
SourceTree 免注册
热门文章
win7中将文件拷贝到虚拟机linux下
php中用uploadify上传时session丢
laravel页面静态化的方法
centos7.4 64位下swoole安装及配置
centos7.4下php7.25多线程pthreads
微信扫一扫在哪
php-fpm经常卡死
单点登录sso原理及php实现方式及de
phpexcel设置行高及列宽,背景颜色,
一个简单的laravel分表联合查询
好评文章
php7中使用mongodb的aggregate进行
windows下使用MongoDB Compass Com
phpexcel设置行高及列宽,背景颜色,
laravel 中悲观锁 & 乐观锁的使用
laravel整合dingo/api方法步骤:jwt
在php中用curl请求java接口无法获
laravel页面静态化的方法
一个简单的laravel分表联合查询
laravel对具体的路由不采用csrfTok
php7 mongodb distinct及count方法
标签
rabbitmq mysql备份 elasticsearch
站点信息
建站时间:2011年
文章数:500篇
浏览数:253628
粤ICP备18028092号-1  微信:hurong241