Code Monkey home page Code Monkey logo

coolpy7's Introduction

Author Platform MQTT

Coolpy7

一个高性能、高稳定性的跨平台MQTT服务端

一个高性能、高稳定性的跨平台MQTT服务端,基于EPOLL之上开发,可以在嵌入式设备(OpenWrt/Arm64)、Linux、Windows、Mac上使用,拥有完善Qos功能和配套开源周边功能库,以极少的资源实现优质的单机百万千万级MQTT服务,并且无缝衔接主流数据库。

优势:

应用示例

整体框架

拥有非常明确的分层框架。

整体框架

支持的平台

目前已实现了Linux、Mac、Arm64、Mips平台,除此之外更多框架需要使用,请提交Issues需求!

平台 代码位置
Linux go_build_Coolpy7_go_linux.zip
Mac go_build_Coolpy7_go_mac
Windows docker_windows_coolpy7
Arm64 NanoPi,JetsonNano,树莓派等等...
Mips(le) OpenWrt(MT7688)等等...

版本

发布版本 描述
[最新版本] release下载

问题

欢迎以 GitHub Issues 的形式提交问题和bug报告

版权和许可

Coolpy7 遵循 MIT 开源协议。可以自由的使用、修改源代码,也可以将修改后的代码作为开源或闭源软件发布。也可直接用于商业项目。

QQ群

coolpy7's People

Contributors

jacoblai avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

coolpy7's Issues

unable to start

warning: test upstream error: dial tcp 127.0.0.1:1883: connect: connection refused

客户端如何删除

在管理页面上看到客户端一直在增加,应该如何删除 offline 的客户端?

感谢大家对Coolpy7的支持

最近大家在使用Coolpy7的朋友发邮件提出是否还在更新是技术支持的问题,现在统一回复大家,Coolpy7是一个商业级的产品支持,不会随意取消开源或停止更新,还会一直提供技术支持,请大家放心使用。请大家放心使用。请大家放心使用。最后顺便告诉大家一下个Coolpy7版本将增加跨数据中心多活群集功能。预计2020春季发布。敬请关注!!!

Coolpy7 kernel extension issue

UNADJUSTEDNONRAW_thumb_1

plugin: not implemented

Linux li818-156 3.16.0-6-amd64 #1 SMP Debian 3.16.56-1+deb8u1 (2018-05-08) x86_64 GNU/Linux

go version go1.12.5 linux/amd64

go env

GOARCH="amd64"
GOBIN=""
GOCACHE="/root/.cache/go-build"
GOEXE=""
GOFLAGS=""
GOHOSTARCH="amd64"
GOHOSTOS="linux"
GOOS="linux"
GOPATH="/root/work"
GOPROXY=""
GORACE=""
GOROOT="/usr/local/go"
GOTMPDIR=""
GOTOOLDIR="/usr/local/go/pkg/tool/linux_amd64"
GCCGO="gccgo"
CC="gcc"
CXX="g++"
CGO_ENABLED="1"
GOMOD=""
CGO_CFLAGS="-g -O2"
CGO_CPPFLAGS=""
CGO_CXXFLAGS="-g -O2"
CGO_FFLAGS="-g -O2"
CGO_LDFLAGS="-g -O2"
PKG_CONFIG="pkg-config"
GOGCCFLAGS="-fPIC -m64 -pthread -fmessage-length=0 -fdebug-prefix-map=/tmp/go-build291973316=/tmp/go-build -gno-record-gcc-switches"

This is the problem I encountered when I expanded the Coolpy7 kernel function hot load plugin. May I have any problems with this? Always encountered plugin: not implemented

启动主程序,提示找不到ip地址,求解决方法

[root@fair-beams-4 mqtt]# ./go_build_Coolpy7_go_linux 2021/04/06 14:42:43 Coolpy7 cluster Failed to get final advertise address: No private IP address found, and explicit IP not provided
加上-l 64.64.247.10:1883还是提示上面的错误,
下面是ifconfig信息
`[root@fair-beams-4 mqtt]# ifconfig
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 64.64.247.10 netmask 255.255.255.0 broadcast 64.64.247.255
inet6 fe80::a8aa:ff:fe16:aa68 prefixlen 64 scopeid 0x20
ether aa:aa:00:16:aa:68 txqueuelen 1000 (Ethernet)
RX packets 10824481 bytes 19227927461 (17.9 GiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 9332837 bytes 19443347210 (18.1 GiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

eth1: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
ether ba:aa:00:16:aa:68 txqueuelen 1000 (Ethernet)
RX packets 2305736 bytes 784729966 (748.3 MiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 39294 bytes 5727368 (5.4 MiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10
loop txqueuelen 1000 (Local Loopback)
RX packets 8256734 bytes 19270103438 (17.9 GiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 8256734 bytes 19270103438 (17.9 GiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
`
求解决方案;

组播功能无效

版本v7.2.0.8,采用chrom插件MQTTLens 测试,普通的topic能够正常发布和订阅消息,但是组播消息
$share/group1 和 $queue/group1 发布、订阅无法收到消息。是什么原因呢?
而且,发布组播消息到topic后,再次发布普通消息也没有任何响应了,就像服务卡在哪里了

是个好项目!

是个很好的项目,但是星星怎么这么少啊!请问有qq群之类的吗?不然都不好交流,不好推广啊

客户端定期掉线

内核按默认启动
客户端: github.com/eclipse/paho.mqtt.golang
1,客户端连接后会订阅指定主题 update/status
2,客户端每隔15秒上报一次数据
发现客户端会定期掉线,请问内核启动时需要配置什么参数,谢谢

如何检测客户端掉线

我现在是通过扩展服务器的 /term 事件来做客户端掉线检测,然后更新数据库的客户端在线状态
在客户端设置了keeplive , 发现不管设置keeplive 为多少,客户端还是会经常离线。
请问有什么更好的方案来检测,谢谢

qos为1或者2的消息没有被持久化保存

状况:客户端1订阅qos1的主题之后离线,客户端2发送qos1的消息到这个主题。重启coolpy7服务。客户端1重新上线,没有收到持久化消息。不过订阅关系倒是保存下来了。

测试的时候go_build_Coolpy7_ws_go_linux,出现runtime error: invalid memory address or nil pointer dereference

panic: runtime error: invalid memory address or nil pointer dereference
[signal SIGSEGV: segmentation violation code=0x1 addr=0x50 pc=0x55a675]

goroutine 18 [running]:
bridge.(*WsBridge).Receive(0xc0064d42c0, 0xc000066f88, 0x400)
/Users/jac/GolandProjects/new/coolpy7/src/bridge/wsbridge.go:96 +0xb5
main.main.func1.2(0xb5655d4cae970001)
/Users/jac/GolandProjects/new/coolpy7/Coolpy7_ws.go:77 +0x66
netpoll.poller.Start.func1(0x1)
/Users/jac/GolandProjects/new/coolpy7/src/netpoll/netpoll_epoll.go:46 +0x8f
netpoll.(*Epoll).wait(0xc0000c0380, 0x5c1d28)
/Users/jac/GolandProjects/new/coolpy7/src/netpoll/epoll.go:246 +0x37e
created by netpoll.EpollCreate
/Users/jac/GolandProjects/new/coolpy7/src/netpoll/epoll.go:106 +0x1d7

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.