zeroice icestorm pub/sub 性能测试

## zero-IceStorm测试结果
延迟:1.5G/0.9S

| 速度  | MB/S    |
| ------------ | ------------ |
| 发送速度 | 103.9MB/S        |
| 到达速度 | 101.85MB/S        | 


全干掉
netstat -ano | findstr 10000
netstat -ano | findstr 10001
netstat -ano | findstr 10002

测试方法:
3p+6s

start icebox --Ice.Config=config.icebox

start subscriber.exe
start subscriber.exe
start subscriber.exe
start subscriber.exe
start subscriber.exe
start subscriber.exe
start publisher.exe
start publisher.exe
 

zeroice icestorm介绍

java源码:
 * IceStorm APIs. IceStorm is a broker-based pub/sub service, where
 * subscribers connect to publishers using topics.

延迟加载:
Ice.InitPlugins=0属性来让ICE延迟加载插件   

创建实例:
Ice::ObjectAdapterPtr publishAdapter = communicator->createObjectAdapter(name + ".Publish");
获取实例

接口调用
 

icestorm sub端关闭连接报错:

 subscriber errored out: C:\Users\vagrant\workspace\ice-dist\3.7\dist-utils\build\ice\builds\ice-v142\cpp\src\Ice\StreamSocket.cpp:302: ::Ice::ConnectionLostException:
   connection lost: WSAECONNRESET retry: 0/0

如果客户端发送的消息超过了服务器的Ice.MessageSizeMax,服务器会立即关闭其连接,因此在这种情况下客户端会收到一个ConnectionLostException。此外,服务器记录

修改最大长度限制:
icestorm 服务侧配置文件*****
Ice.MessageSizeMax = 31720

订阅客户端同样需要设置*****
Ice.MessageSizeMax = 31720

发布端不需要设置该参数

这里最XX的就是要设置两处才起作用。

高可用 Replica 副本机制:
IceStorm Administration/管理员控制机制:
Qos设置
配置属性:
线程池配置
topic跨端口发布
持久化数据库配置

strom里的nodeadapter 里面的多个node类似kafka的broker集群选举机制
IceStormElection

sub端
解析配置文件
解析topic shared_ptr<IceStorm::TopicPrx> topic;
创建subadapter
subadapter 添加订阅接收回调函数 
订阅激活
订阅模式根据配置文件设置
启动订阅 关联qos和topic subscribeAndGetPublisher
每接收一条数据 拿到一张发票 tick 

多个插件如何顺序加载:保证了进程插件的初始化顺序,一般都是模型加载顺序
Ice.Plugin.Hello=./HelloPlugin:createHello
Ice.Plugin.Ate=./AtePlugin:createAte
Ice.PluginLoadOrder=Ate Hello 

#thread pool setting
Ice.ThreadPool.Server.Size=5
Ice.ThreadPool.Server.SizeWarn=5
Ice.ThreadPool.Server.SizeMax=10
 

报错1:
::IceStorm::NoSuchTopic报错:
没发布过create一次即可
https://doc.zeroc.com/ice/latest/ice-services/icestorm/using-icestorm/implementing-an-icestorm-publisher


报错2:
猜测是storm内存问题导致?
icebox-IceStorm: Subscriber dec subscriber errored out:
 C:\Users\vagrant\workspace\ice-dist\3.7\dist-utils\build\ice\builds\ice-v142\cpp\src\Ice\Network.cpp:2223: ::Ice::ConnectionRefusedException:
   connection refused: 远程计算机拒绝网络连接。 retry: 0/0

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值