数据传输

说明

上面一节通信协议是制定了schat业务系统所使用的业务数据描述协议,但在实际的数据传输过程中,包括服务器与服务器之间,服务器与客户端之间,它们是作为传输协议的有效载荷payload来进行发送的。所以这里就涉及到更下一层的数据传输过程。也包括两方面,服务器之间与服务器客户端之间.

服务器之间传输

服务器之间的数据传输使用了proc_bridge作为进程通信组件。具体的proc_bridge细节参见本人的github地址:proc_bridge。这里我们只需要知道参与通信的进程需要指定一个proc_id进程ID,一个与之对应的proc_name进程名,以及整个系统处于的命名空间namespace.
schat内部集成了proc_bridge,所有的配置都位于schat/proc_bridge/schat/bridge.cfg,内容如下:

#PROC
#每一行表示一个需要通信的进程
#格式:进程名 = 全局ID : IP : PORT : SEND_SIZE : RECV_SIZE
#进程名:业务进程名.
#全局ID:业务进程在具体业务系统中的唯一ID. id属于[1,1000]为保留id,请勿使用
#IP:	 业务进程部署的IP
#PORT:	 业务进程在proc_bridge系统中的通信端口
#SEND_SIZE: 业务进程<-->委托carrier进程的发送缓冲区长度(最大包数目). null or <=0 则使用[DEFAULT_SEND_SIZE]
#RECV_SIZE: 业务进程<-->委托carrier进程的接收缓冲区长度(最大包数目). null or <=0 则使用[DEFAULT_RECV_SIZE]
[PROC]
conn_serv-1 = 2001:127.0.0.1:11000
logic_serv-1 = 3001:127.0.0.1:12001
db_logic_serv-1 = 4001:127.0.0.1:13001
conn_serv-2 = 2002:127.0.0.1:11002
logic_serv-2 = 3002:127.0.0.1:12002
db_logic_serv-2 = 4002:127.0.0.1:13002
disp_serv-1  = 5001:127.0.0.1:14001:60
disp_serv-2  = 5002:127.0.0.1:14002:60
chat_serv-1  = 6001:127.0.0.1:15101
chat_serv-2  = 6002:127.0.0.1:15102
db_chat_serv-1 = 7001:127.0.0.1:16401
db_chat_serv-2 = 7002:127.0.0.1:16402
online_serv-1 = 8001:127.0.0.1:16505
online_serv-2 = 8002:127.0.0.1:16506
file_serv-1 = 9001:127.0.0.1:13798
file_serv-2 = 9002:127.0.0.1:13799
dir_serv-1  = 10001:127.0.0.1:11245
[/PROC]



#CHANNEL
#用于配制每个进程的发射通道。如果A需要与B互相通信,则A需要配置对B的发送通道;同时B配置对A的发送通道
#格式: proc_name:target_proc_name1,target_proc_name2,...
####通配符处理:在进程名合乎规范
#   proc_name='prefix+数字' 时,支持简单的通配处理: 
#   prefix[A]:prefixA
#   prefix[A-B]:prefixA 直到 prefixB (注意A<=B)
#   prefix[A;B]:prefixA 和 prefixB
#   prefix[A-B;C]:prefixA 直到 prefixB 和 prefixC
[CHANNEL]
conn_serv-1:logic_serv-1
logic_serv-1:conn_serv-1,db_logic_serv-1,disp_serv-1,disp_serv-2
db_logic_serv-1:logic_serv-1
conn_serv-2:logic_serv-2
logic_serv-2:conn_serv-2,db_logic_serv-2,disp_serv-1,disp_serv-2
db_logic_serv-2:logic_serv-2
chat_serv-1:disp_serv-[1-2],db_chat_serv-1
chat_serv-2:disp_serv-[1-2],db_chat_serv-2
db_chat_serv-1:chat_serv-1
db_chat_serv-2:chat_serv-2
disp_serv-1:logic_serv-1,logic_
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值