centos 搭建websocket PHP websocket

老铁们,大家好,相信还有很多朋友对于centos 搭建websocket和PHP websocket的相关问题不太懂,没关系,今天就由我来为大家分享分享centos 搭建websocket以及PHP websocket的问题,文章篇幅可能偏长,希望可以帮助到大家,下面一起来看看吧!

centos下 Janus Server 搭建笔记

Janus是一个开源的,通过 C语言实现了对 WebRTC支持的 Gateway;Janus自身实现得很简单,提供插件机制来支持不同的业务逻辑,配合官方自带插件就可以用来实现高效的 Media Server服务。

本文主要介绍如何在 Centos 7.0下搭建起 janus服务器,实现 janus官方 Demo浏览器与 Android APP Demo(janus-gateway-android)之间的音视频通话。

目前浏览器仅支持 FireFox浏览器,因为 Chrome浏览器打开音视频采集的话需要 HTTPS加密访问!

效果图如下:

编译运行 Janus Server需要依赖较多的一些第三方库

2.1安装依赖

Ubuntu下通过 aptitude批量安装依赖工具包,这里建议 Ubuntu镜像源(/etc/apt/source.list)不要为了追求速度而改用了国内的某些镜像源,如网易 163,这可能会导致某些工具包下载失败,建议依然使用官方自带的镜像源。

yum list| grep nice

yum install gtk-doc

批量安装命令:

如果出现某个工具包下载失败,请修改镜像源为官方地址,并执行以下命令

以更新镜像源,完成后重新安装。

2、安装 WebSocket

janus支持 WebSocket是可选项,如果不安装,编译 janus时,默认不支持 WebSocket的链接请求,而 Android APP Demo是通过 WebSocket与 janus进行通信的,因为我们希望 Android APP Demo能与浏览器(HTTP)进行视频通话,所以就必须要在编译 janus时支持 WebSocket。

依次执行以下命令,分别进行下载,编译,安装:

安装成功后,在编译 janus时,janus默认会增加对 WebSocket的集成,或者通过增加编译参数--enable-websockets打开 WebSocket开关,或--disable-websockets关闭 WebSocket开关。

3、安装 Http Server

Janus源码目录下的 html下自带 Web Demo(html& JavaScript),Janus编译完成并 Start以后,需要通过 http server访问 Janus Web Demo,其中包括:

以上 janus插件均可通过相应的 http链接进行访问体验。

以下介绍一种快速,便捷,轻巧的 HTTP Server安装方式:

通过 Node.js(基于 Chrome V8引擎的 JavaScript运行环境)进行安装,首先安装 Node.js:

安装成功后,通过 npm(npm是 Node.js的包管理器,是全球最大的开源库生态系统)进行安装 httpserver:

启动方式:

进入到 html目录,执行 http-server命令即可,如:

输入 http url即可访问。

注:需首先 build& start janus Server!

4、安装 libsrtp

Janus需要至少 version 1.5以上的 libsrtp,如果系统中已经安装了 libsrtp,则首先卸载后,手动安装新版本,这里我们安装 libsrtp 2.0,依次执行以下命令:

5、编译 Janus

通过 Git下载 Janus源码,并编译安装:

configure执行成功后,会输出 janus所支持的协议及插件,如下:

6、运行 Janus

如果全部安装以上步骤进行编译的 janus,那么 janus的全局配置文件存放目录为:

或者在启动 janus时,加上相应的启动参数,参数可通过 janus--help查看;

janus默认的配置中是没有 WebSocket的配置的,直接启动 Janus会因没有 WebSocket配置文件而报错。幸运的是在配置目录中 Janus已经给我们提供了一个 WebSocket的示例配置文件: janus.transport.websockets.cfg.sample,(如果我们要通过 WebSocket连接 Janus,则需要有个 WebSocket的配置文件)这里我们可以直接拷贝这个示例文件:

通过查看此配置文件,可以得知 Janus默认的 WebSocket的端口号为 8188,记住这个端口号,在 Android APP Demo中会使用到!

启动 Janus:

根据需要可以选择是否加上后面两个启动参数。

我们使用 PC下的浏览器与 Android APP Demo进行联调。

1、启动 Web Demo

进入到 janus目录下的 html目录,启动 http-server

这样外部便可以通过 进行访问了,进入首页后,找到 videoRoom,Start

2、启动 Android APP Demo

修改源代码

janus-gateway-android支持两个 Demo测试:EchoTest和 VideoRoom,默认情况下会启用 EchoTest,这个 Demo仅仅是连接服务器后,将数据再发回本地进行本地测试,我们要改为与房间内的其它用户(浏览器)进行视频通话,则需要启用另外一个测试用例 VideoRoom,按照如下方式修改代码:

JanusActivity.java类中新增 VideoRenderer.Callbacks数组(视频房间中可能会有多人),暂定义为 2个,实际连接人数不要超过此数字:

OnCreate方法中初始化以上定义的数组:

APP Demo是通过 WebSocket连接 Janus Server,所以修改 VideoRoomTest.java中 JANUS_URL地址为我们启动的 Janus服务器 WebSocket地址,IP为 janus server地址,端口默认为 8188:

3、联调测试

Janus Server默认会开启两个视频房间:1234和 5678,分别使用 VP8和 VP9视频编码器,所以我们通过 Brower和 Android APP Demo进行联调测试时,暂不需要设置房间 ID。

效果图:

修改/opt/janus/etc/janus/janus.jcfg

nat:{

stun_server="stun.voip.eutelia.it"

stun_port= 3478

nice_debug= false

Linux(CentOS7)搭建Nginx反向代理分布式minio教程

本文将指导您在CentOS 7上使用Nginx搭建反向代理,以实现分布式minio的访问。注意,教程不涉及minio的分布式部署。

步骤1:Nginx环境准备

首先,创建一个Nginx的安装目录,然后进入该目录。您可以根据需要下载特定版本的nginx,建议选择1.3.13及以上版本,以支持minio所需的WebSocket功能。下载后解压文件,检查所需的工具包是否齐全,如有缺失则进行安装。

步骤2:安装与配置Nginx

执行`./configure`检查配置,然后进行编译。安装命令会将nginx的可执行文件、配置文件等安装到`/usr/local/nginx`。启动nginx,可通过检查进程确认安装成功。

配置Nginx

编辑nginx的配置文件,针对http指令容器进行必要的修改,针对minio部分已添加了注释。配置完成后,保存并更新配置,如果nginx正在运行,使用`nginx-s reload`,否则直接启动。

验证与测试

在Nginx服务器(假设IP为192.168.64.120)上,访问nginx的管理页面以确认配置是否生效。成功访问管理页面,说明反向代理设置已完成。

阅读剩余
THE END