常见问题总汇

关于too many openfile问题

由Linux系统默认情况下只允许建立一个相关效低的网络连接数,所以需要使用ulimit -a查看当时系统的限制数,一般通过“sudo ulimit -u 数量” 和 “sudo ulimit -n 数量”进行相关参数设置。如需永久生效设置请参阅本手册中的(单机千万连接测试)章节。

当前流行的物联网协议有?

MQTT、MQTT-SN、CoAP、WebSocket

Coolpy7与普通MQTT服务器的区别?

Coolpy7的亮点是万物皆是消息,通过自主研发的CGP协议,任何Coolpy7端都可以直接操作数据库,外加用户中心控制

Coolpy7添加自己业务的两种方式?

通过dbpoxy操作数据库和Coolpy7的hook,hook实现的功能有[用户鉴定和授权]、[subs消息过滤]、[pubs消息收集]

Coolpy7的集群?

使用高效率的quic协议

Coolpy7的客户端ID的约定?

不能用空,也不能包括“-”,用UUID的同学此处需要做额外处理

CGP协议支持多表查询?

支持,在对应的sql语句中,写多表查询的sql即可,其中,对于表名的声明为主表。

后期增加的功能?

有订阅和取消订阅、客户端意外断开

Coolpy7是否有缓存客户端列表?

没有

Coolpy7判断对应在线的具体方法?

通过消息来做到判断下对方是否在线,做法如下:例如当连接成功就订阅一个qos 0的私有地址,把它当ping用,你pub一个消息去这个地址,如果有回复他就是在线的

pubs中的newpayload介绍?

newpayload是直接function返回到cp7内核去做发送用的,http那个是body,你http要哪个都可以,你自己随意,newpayload如果==“”的话内核不会替换原来的payload

如果你用同一个clientID去连接Coolpy7?

那么前一个会被T掉,同学们注意。

Coolpy7今后会桥接的中间件?

Kafka/RocketMQ/RabbitMQ

Coolpy7支持的数据通信格式?

支持json和msgpack,msgpack比protobuffer快

心跳检测的设置?

Coolpy7严格依照MQTT协议,不支持设置心跳超时机制

Coolpy7的订阅-发布模式?

mqtt要求每个订阅都有回应包,如果你不允许订阅回应包协议没有定义订阅失败的回应包,要么就订阅逻辑不生效,然后返回一个订阅成功的包回去,不然客户端为认为没有等到订阅包而关闭连接

对于发布消息的负载均衡处理?

比如我有三个订阅了/usr/local 那么我现在发送一个/usr/local,coolpy7是三个订阅都会收到信息。 后期增加过滤功能,实现负载,类似于Kafka和RocketMQ中的组消费

Coolpy7的后台管理?

你的官网+社区+IOT平台,一整套用Coolpy7 oauth2做用户中心就是同一套用户账号系统公用

关于Coolpy7客户端对数据库操作权限的控制?

解决方案正在路上.....可能,会增加类似拦截器的功能,来实现过滤

为什么我登陆时密码无法传送到hook代码里?

用户登陆时,一但需要使用密码标识即必需用户名标识不为空,因为没有填空用户名信息导致的。

Last updated