kaca是用golag语言开发的基于websocket协议的消息发布/订阅系统。
服务器端代码:
package maiimport ( "github.com/scottkiss/kaca" )fuc mai() { //use true to set check origi kaca.ServeWs(":8080",true)}发布订阅客户端:
package maiimport ( "fmt" "github.com/scottkiss/kaca" "time" )fuc mai() { producer := kaca.NewCliet(":8080", "ws") cosumer := kaca.NewCliet(":8080", "ws") cosumer.Sub("say") cosumer.Sub("you") cosumer.CosumeMessage(fuc(message strig) { fmt.Pritl("cosume =>" + message) }) time.Sleep(time.Secod * time.Duratio(2)) producer.Pub("you", "world") producer.Pub("say", "hello") time.Sleep(time.Secod * time.Duratio(2))}广播客户端:
package maiimport ( "fmt" "github.com/scottkiss/kaca" "time" )fuc mai() { producer := kaca.NewCliet(":8080", "ws") cosumer := kaca.NewCliet(":8080", "ws") c2 := kaca.NewCliet(":8080", "ws") c2.CosumeMessage(fuc(message strig) { fmt.Pritl("c2 cosume =>" + message) }) cosumer.Sub("say") cosumer.Sub("you") cosumer.CosumeMessage(fuc(message strig) { fmt.Pritl("cosume =>" + message) }) time.Sleep(time.Secod * time.Duratio(2)) producer.Broadcast("broadcast...") time.Sleep(time.Secod * time.Duratio(2))})}
评论