socket 属性介绍

socket 属性介绍

ZMQ_SNDHWM

高水位标志也即阈值,是发送消息队列中未发送消息的最大值(0无限制),若达到此值,进入静默状态

ØMQ does not guarantee that the socket will accept as many as ZMQ_SNDHWM messages, and the actual limit may be as much as 60-70% lower depending on the flow of messages on the socket.

但socket实际能接受的消息不一定能达到最大值。

  • 选项值类型 int
  • 值单位 message
  • 默认值 1000
  • 适用socket类型 all
ZMQ_RCVHWN

接受消息队列阈值(0无限制)
- 选项值类型 int
- 值单位 message
- 默认值 1000
- 适用socket类型 all

ZMQ_AFFINITY

线程亲和性,决定哪些线程应处理新创建的连接,为0则对各线程公平处理,若非0,第1位对应线程1,第2位对应线程2,依此类推。为1有亲和。
- 选项值类型 uint64_t
- 值单位 N/A(bitmap)
- 默认值 0
- 适用socket类型 N/A

ZMQ_SUBSCRIBE

用于在ZMQ_SUB上建立一个新的消息过滤器。由于新建的ZMQ_SUB socket会过滤掉所以消息,因此必须设置该项去建立一个初始过滤器。
其值为空,则接收所以消息,若非空则接收所有以这个值为前缀的消息。
同时可在一个socket上建立多个过滤器。接收的消息至少满足一个过滤器条件。
- 选项值类型 binary data
- 值单位 N/A
- 默认值 N/A
- 适用socket类型 ZMQ_SUB

ZMQ_UNSUBSCRIBE

删除过滤器,只可删除一个过滤器。
- 选项值类型 binary data
- 值单位 N/A
- 默认值 N/A
- 适用socket类型 ZMQ_SUB

ZMQ_IDENTITY

此选项用来设置Socket的身份标识,只能用于请求/答应模式。ROUTER Socket可以根据这个身份标识来路由信息。
身份标识的长度规定在1-255 bytes. 由二进制零开头的标识符为ZMQ保留使用。
如果两个身份标识相同的Socket连接到同一个对端(ROUTER),结果行为是未定义的,因为只有一个可以连上,但不能确定是哪一个。
- 选项值类型 binary data
- 值单位 N/A
- 默认值 NULL
- 适用socket类型 ZMQ_REQ, ZMQ_REP, ZMQ_ROUTER, ZMQ_DEALER.

ZMQ_RATE

设置组播的最大发送和接收速率。
- 选项值类型 int
- 值单位 kilobits per second
- 默认值 100
- 适用socket类型 all, when using multicast transports

ZMQ_RECOVERY_IVL

设置多播恢复间隔
- 选项值类型 int
- 值单位 milliseconds
- 默认值 10000
- 适用socket类型 all, when using multicast transports

ZMQ_SNDBUF ZMQ_RCVBUF

设置底层内核发送/接收缓冲区大小
- 选项值类型 int
- 值单位 bytes
- 默认值 0
- 适用socket类型 all

ZMQ_RECONNECT_IVL

设置重连间隔
- 选项值类型 int
- 值单位 milliseconds
- 默认值 100
- 适用socket类型 all, only for connection-oriented transports

ZMQ_RECONNECT_IVL_MAX

在每次重连后重连间隔加倍,直到到达这个值,小于ZMQ_RECONNECT_IVL或为0,则按设置的固定间隔重连
- 选项值类型 int
- 值单位 milliseconds
- 默认值 0
- 适用socket类型 all, only for connection-oriented transports

ZMQ_BACKLOG

设置未连接队列的最大长度
- 选项值类型 int
- 值单位 connections
- 默认值 100
- 适用socket类型 all, only for connection-oriented transports

ZMQ_RCVTIMEO ZMQ_SNDTIMEO

设置接收/发送超时时间
- 选项值类型 int
- 值单位 milliseconds
- 默认值 -1(infinite)
- 适用socket类型 all

Others
  • ZMQ_LINGER: Set linger period for socket shutdown
  • ZMQ_MAXMSGSIZE: Maximum acceptable inbound message size
  • ZMQ_MULTICAST_HOPS: Maximum network hops for multicast packets
  • ZMQ_IPV4ONLY: Use IPv4-only sockets
  • ZMQ_DELAY_ATTACH_ON_CONNECT: Accept messages only when connections are made
  • ZMQ_ROUTER_MANDATORY: accept only routable messages on ROUTER sockets
  • ZMQ_XPUB_VERBOSE: provide all subscription messages on XPUB sockets
  • ZMQ_TCP_KEEPALIVE: Override SO_KEEPALIVE socket option
  • ZMQ_TCP_KEEPALIVE_IDLE: Override TCP_KEEPCNT(or TCP_KEEPALIVE on some OS)
  • ZMQ_TCP_KEEPALIVE_CNT: Override TCP_KEEPCNT socket option
  • ZMQ_TCP_KEEPALIVE_INTVL: Override TCP_KEEPINTVL socket option
  • ZMQ_TCP_ACCEPT_FILTER: Assign filters to allow new TCP connections
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

紫无之紫

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值