swoole高性能赛事直播平台(笔记)

swoole高性能赛事直播平台(笔记)

大家好,又见面了,我是全栈君。

(一)php7源码安装

1.解压文件夹:tar -xjvf php7.2.21.tar.bz2

2.configure: ./configure  –prefix = /home/soft/php  (PHP安装环境目录)

3.make

在make过程中报错:

ext/iconv/.libs/iconv.o: In function `php_iconv_stream_filter_ctor':
/ext/iconv/iconv.c:2491: undefined reference to `libiconv_open'
collect2: ld returned 1 exit status
make: *** [sapi/cli/php] Error 1

解决方法:https://blog.csdn.net/m0_37886429/article/details/78349709

4.make install

5.简化php执行命令

vi ~/.bash_profile
# .bash_profile

# Get the aliases and functions
if [ -f ~/.bashrc ]; then
        . ~/.bashrc
fi

# User specific environment and startup programs

PATH=$PATH:$HOME/.local/bin:$HOME/bin

#PATH=/home/soft/php/bin/php
export PATH
alias php=/home/soft/php/bin/php  #自定义的环境目录
source ~/.bash_profile

6.php.ini 文件配置

进入解压后的php7.2.21文件夹,找到php.ini-development 复制到/home/soft/php/lib文件夹下

swoole高性能赛事直播平台(笔记)

通过以下命令查看编译后PHP.ini文件应该存放的位置

php -i |grep php.ini

 

swoole高性能赛事直播平台(笔记)swoole高性能赛事直播平台(笔记)

(二)源码编译安装swoole

(四)网络通信引擎

websocket:websocket协议是基于tcp的一种新的网络协议,它实现了浏览器与服务器全双工(full-duplex)通信—允许服务器主动发送信息给客户端.

为什么需要wensocket?

http缺陷:http的通信只能由客户端发起,(轮询:效率低,浪费资源)

websocket特点:(聊天室,长连接)

1.建立在tcp协议之上

2.性能开销小,通信高效

3.客户端可以与任意服务器通信

4.协议标识符:ws wss(类似于HTTPS)

5.持久化网络通信协议

 

 

 

参考:https://blog.csdn.net/mrtwenty/article/details/80458264

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/112060.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 汇编指令之移位指令[通俗易懂]

    汇编指令之移位指令[通俗易懂]   移位指令包括了算术移位指令、逻辑移位指令、循环移位指令。    格式为:xxxoper1,CL/1       ;移位次数只能是1或者存放在CL里面。一、算术移位指令1、算术左移指令SAL功能:左移一次,最低位补0,最高位送入CF标志位,如图:意义:左移n次,等于x2的n次幂。所以可用于有符号操作数做x2的n次幂运算。2、算术右移指令SAR功能:右移一次,最高位保持不变,最低位送入…

    2022年4月28日
    60
  • java连接ldap服务器_从Java应用程序连接LDAP服务器「建议收藏」

    java连接ldap服务器_从Java应用程序连接LDAP服务器「建议收藏」我正在构建一个基于GXT(J2EE)的应用程序.现在的问题是我必须将应用程序连接到LDAP服务器.您能告诉我如何从我们的Java应用程序连接LDAP服务器以及我将使用哪些库或API?解决方法:要连接到LDAP,请查看以下包/类:javax.naming.directory.*javax.naming.ladp.*com.sun.jndi.ldap.LdapCtxFactorycom.sun.jnd…

    2022年5月14日
    37
  • 指令的四个周期_cpu指令周期流程图

    指令的四个周期_cpu指令周期流程图指令流程图的概念菱形:译码,测试,表示判断,如零指令字是0或者1.与前面的CPU周期紧密相连,不单独占用CPU周期。每个方框箭头下面的是公共操作符符号,表示一条指令结束。mov指令将R1寄存器的数据存储到R2寄存器中,lad指令时间主存中的数据存储到寄存器中。sto是将R2中的数据根据R3中的主存地址存储到主存中。lad和sto是寄存器-主存指令需要三个CPU周期,其他都是寄存器-…

    2022年10月13日
    3
  • 【2021最新版】MyBatis面试题总结(38道题含答案解析)[通俗易懂]

    【2021最新版】MyBatis面试题总结(38道题含答案解析)[通俗易懂]文章目录1、什么是Mybatis?2、Mybaits的优点?3、MyBatis框架的缺点?4、MyBatis框架适用场合5、MyBatis与Hibernate有哪些不同?6、#{}和${}的区别是什么?7、当实体类中的属性名和表中的字段名不一样,怎么办?8、模糊查询like语句该怎么写?9、通常一个Xml映射文件,都会写一个Dao接口与之对应,请问,这个Dao接口的工作原理是什么?Dao接口里的方法,参数不同时,方法能重载吗?10、Mybatis是如何进行分页的?分页插件的原理是什么?11、Myba

    2022年5月1日
    45
  • Redis设置过期时间_redis过期时间原理

    Redis设置过期时间_redis过期时间原理varredis=require(‘redis’),RDS_PORT=6389,//端口号RDS_HOST=’127.0.0.1′,//服务器IPRDS_PWD=’88888888888888′,//密码RDS_OPTS={},//设置项rclient=redi…

    2022年9月26日
    2
  • python自定义异常和主动抛出异常(raise)

    python自定义异常和主动抛出异常(raise)前言有时候python自带异常不够用,如同java,python也可以自定义异常,并且可以手动抛出。注意,自定义异常只能由自己抛出。python解释器是不知道用户自定义异常是什么鬼的。raise语句主动抛出异常。格式:主动抛出异常终止程序raise异常名称(‘异常描述’)raiseRuntimeError(‘testError’)主动抛出这个异常,并加以解释。自定义异常pytho

    2022年10月17日
    1

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号