标签:服务器
  一个非常大的好处就是高性能,如果使用普通的web服务器,每次运行 PHP 脚本的时候,PHP都需要初始化模块并为你的运行环境启动Zend引擎。并且将 PHP 脚本编译为 OpCodes 交给 Zend引擎执行。这样就意味着每次HTTP请求的时候都执行一遍。因为单个请求创建的环境在请求执行结束后会...
  因为HTTPS是基于SSL依靠证书来验证服务器的身份,并为浏览器和服务器之间的通信加密,所以在HTTPS站点调用某些非SSL验证的资源时浏览器可能会阻止。比如使用ws://***调用websocket服务器或者引入类似http://***.js的js文件等都会报错。这里简述一下连接websock...
假设nginx直播服务器已经搭建完毕,如果还没有搭建完毕可以查阅利用nginx的nginx-rtmp-module搭建流媒体直播服务器这篇文章。在开发直播项目时推流应该是需要做权限认证的,不是任何人都可以随意向直播服务器推流,这就需要权限认证,实现起来也不复杂,只需要在nginx配置文件中的rtmp...
Nginx除了做web服务器之外在流媒体方面的支持也是有对应的模块,nginx-rtmp-module就是nginx的一个扩展模块,支持rtmp视频推流,同时利用nginx作为web服务器的有时可以很方便的实现直播拉流,项目官方地址是https://github.com/arut/nginx-rtm...
Docker Store上已经有很多官方的镜像我们可以直接使用,但是有时候我们的环境和镜像会有些许差异,在pull之后还需要做一些变更,如果是团队开发那操作起来就略显繁琐,如果能实现镜像的定制那就很方便了。定制镜像有两种方式一种是从容器commit生成镜像,但是这种操作生成的镜像体积会比较大,很多无...
docker公共仓库的使用如果使用公有仓库首先使用命令docker login登录docker,如果没有账号需要先在官网注册,注册地址https://hub.docker.com/注册后再使用docker login登录 按照提示输入username和pawword即可docker login使用d...
PHP开发环境中的一些服务之间是需要通信的,例如nginx和php-fpm,PHP和MySQL,PHP和redis等都需要通信,如果采用宿主机端口映射的方式可以满足网络通信但是效率和安全性都会减弱,所以可以使用Docker的网络指令来构建一个互通的网络,下面列出常用的网络命令。创建网络docker ...
首先说明一点,并不是仅仅配置就可以使用真正的https服务,因为需要向证书颁发机构申请SSL证书首先生成私钥和csr文件切换到某个目录,在linux机器上执行以下命令生成私钥openssl genrsa -out server.key 2048然后在linux机器上执行以下命令生成csr文件open...
#下载wget http://download.redis.io/releases/redis-5.0.2.tar.gz#解压tar zxvf redis-5.0.2.tar.gzcd redis-5.0.2makemkdir -p /usr/local/redis/bin#创建日志目录mkdir ...
首先下载memcachedwget http://www.memcached.org/files/memcached-1.5.9.tar.gz安装前需要先安装libeventyum -y install libevent libevent-devel#解压tar zxvf memcached-1.5...
注:以下介绍的安装方式为PHP的安装路径为/usr/local/php,如果你的服务器上PHP的安装目录不一致请按实际情况处理。首先下载PHP7的redis扩展wget https://github.com/phpredis/phpredis/archive/php7-ipv6.zip#解压unzi...
如果使用php操作memcached服务器最方便的方式就是安装memcache扩展了,其实php还有另外一个扩展那就是memcached,和memcached服务同名,并且扩展提供的方法更便于使用,下面分别介绍一下两种扩展在PHP7环境下的安装方式。注:以下介绍的安装方式为PHP的安装路径为/usr...
  市面上的NoSQL数据库已经很多了,SSDB也是其中的一份子,和Redis的安装使用都非常接近。但是存储机制依赖于硬盘,因此支持的存储数据量非常大,某些情况下速度可能比Redis要差一些。官方有和Redis的对比测试,这个可以作为参考,和实际的应用场景有关系。下面说一下安装方式。#首先下载源码包...
  关于icomet的安装及使用方式可以阅读前面几篇博文,有了前面的基础再来实现一对一或者群聊就比较容易了,关键是如何设计。在实现的基础上还要保证信息实时送达,保证信息安全。  首先说一下一对一聊天,每一个用户有自己的独立通道(频道)和token(icomet生成),并且用户只接收自己通道(频道)的...
  在《icomet消息推送原理与常用指令》这篇文章中介绍了icomet的消息推送实现方式但是未涉及到安全认证,本文会介绍token认证的实现方式。首先需要在配置文件icomet.conf中开启token认证(将auth项由none修改为token),修改为如下配置:......front: ...
  iComet 是C++ 编写的高性能即时通讯服务器,支持百万并发,可用于多人聊天、一对一实时聊天,支持token权限认证,安全性很高。 支持移动或web应用,多浏览器和操作系统平台。本文以Linux的发行版CentOS7作为安装的服务器讲解安装过程,其他版本也是类似的。github地址是http...
  上一篇博文已经使用程序实现了聊天功能,但是数据无法持久化,本文介绍一下数据持久化的实现思路。其实数据的持久化和消息服务器或者使用的协议都没有关系,属于应用层方面的事情。  实现思路主要有两点,即数据的存储于数据的读取。在数据存储方面,可以使用关系型或者非关系型数据库,可以保存频道和内容,接收到客...
  在《使用nginx-push-stream-module构建在线聊天室(一)》这篇文章中已经介绍了nginx-push-stream-module插件的安装,本文中介绍一下如何通过程序来实现聊天功能。   其实实现聊天功能一个是客户单代码另外是服务器端的代码,关于客户端的程序在安装源文件中也有...
  有时我们需要在现有的web服务器上增加新的模块实现更为丰富的功能,Nginx算是比较常用的web服务器,但是nginx也不仅仅只可以做web服务器,只要有对应的插件还可用作反向代理、即时通讯、文件下载、流媒体服务等功能,如果已经安装好了Nginx有不想重新安装覆盖的前提下如何新增模块呢?下面通过...