本来一直想总结下关于Red5服务器的知识。各种原因耽搁了,最近比较清闲,所以会陆续总结一些相关知识。
今天呢,先说说red5的集群吧,自带的集群-边源方式。
red5本身自带集群的,在0.9.1版本的时候,可以配置边源服务器,配置的步骤也不算繁琐。但是有一个缺点是默认的服务器,支持单边多源,但是多个源之间的信息不互通。
说个例子: 我部署一个集群,一个边:edge1 ,两个源:origin1和origin2 。 Flash肯定是连接edge1的, edge1服务器只负责网络转发,并不做底层的解包和分包处理。
如果有两个客户端同时连接edge1 ,client1和client2。 正好呢,client1 被分配到origin1上,client2被分配到origin2上。 这样的话, 这两个客户端看似是连接通一个服务器,其实是不能共享资源的。比如说client1发布一个视频流,client2是无法订阅到这个视频流的。
这样呢,就需要改造这个集群。
具体的改造方法,我就不细说了。
我简单说下,改造的逻辑。 首先呢,要对客户端进行分组,如果你是做视频会议的,那么每一场会,被分配到一个源服务器上。这样就能保证数据的互通了。
分组可以根据会议的ID号来区分,在连接的时候,把会议的Id号传给服务器端,服务器端就可以分组了。
改造的代码太多,我就不贴了。如果想对red5改造的朋友可以加我好友。