kaca消息发布/订阅系统
kaca 是用 golang 语言开发的基于 websocket 协议的消息发布/订阅系统。
服务器端代码:
package main import ( "github.com/scottkiss/kaca" ) func main() { //use true to set check origin kaca.ServeWs(":8080",true) }
发布订阅客户端:
package main import ( "fmt" "github.com/scottkiss/kaca" "time" ) func main() { producer := kaca.NewClient(":8080", "ws") consumer := kaca.NewClient(":8080", "ws") consumer.Sub("say") consumer.Sub("you") consumer.ConsumeMessage(func(message string) { fmt.Println("consume =>" + message) }) time.Sleep(time.Second * time.Duration(2)) producer.Pub("you", "world") producer.Pub("say", "hello") time.Sleep(time.Second * time.Duration(2)) }
广播客户端:
package main import ( "fmt" "github.com/scottkiss/kaca" "time" ) func main() { producer := kaca.NewClient(":8080", "ws") consumer := kaca.NewClient(":8080", "ws") c2 := kaca.NewClient(":8080", "ws") c2.ConsumeMessage(func(message string) { fmt.Println("c2 consume =>" + message) }) consumer.Sub("say") consumer.Sub("you") consumer.ConsumeMessage(func(message string) { fmt.Println("consume =>" + message) }) time.Sleep(time.Second * time.Duration(2)) producer.Broadcast("broadcast...") time.Sleep(time.Second * time.Duration(2)) }) }
评论
Apache Kafka分布式发布订阅消息系统
kafka是一种高吞吐量的分布式发布订阅消息系统,她有如下特性:通过O(1)的磁盘数据结构提供消息的持久化,这种结构对于即使数以TB的消息存储也能够保持长时间的稳定性能。高吞吐量:即使是非常普通的硬件
Apache Kafka分布式发布订阅消息系统
0
Laharsub消息发布-订阅服务器
Laharsub是一种开源的.NET发布-订阅消息服务器,用于实时的web应用程序,像聊天、在线写作、新闻或者股票交易更新等等。Laharsub是一种构建在三层架构之上的发布-订阅消息服务器:前端——
Laharsub消息发布-订阅服务器
0