kaca 消息发布/订阅系统 kaca

agolangf • 3014 次点击    
这是一个分享于 的项目,其中的信息可能已经有所发展或是发生改变。
kaca 是用 golang 语言开发的基于 websocket 协议的消息发布/订阅系统。 服务器端代码: <pre class="brush:cpp ;toolbar: true; auto-links: false;">package main import (         &#34;github.com/scottkiss/kaca&#34;        ) func main() {     //use true to set check origin     kaca.ServeWs(&#34;:8080&#34;,true) }</pre> 发布订阅客户端: <pre class="brush:cpp ;toolbar: true; auto-links: false;">package main import (     &#34;fmt&#34;     &#34;github.com/scottkiss/kaca&#34;     &#34;time&#34;    ) func main() {           producer := kaca.NewClient(&#34;:8080&#34;, &#34;ws&#34;)           consumer := kaca.NewClient(&#34;:8080&#34;, &#34;ws&#34;)           consumer.Sub(&#34;say&#34;)           consumer.Sub(&#34;you&#34;)           consumer.ConsumeMessage(func(message string) {                   fmt.Println(&#34;consume =&gt;&#34; + message)                   })       time.Sleep(time.Second * time.Duration(2))           producer.Pub(&#34;you&#34;, &#34;world&#34;)           producer.Pub(&#34;say&#34;, &#34;hello&#34;)           time.Sleep(time.Second * time.Duration(2)) }</pre> 广播客户端: <pre class="brush:cpp ;toolbar: true; auto-links: false;">package main import (     &#34;fmt&#34;     &#34;github.com/scottkiss/kaca&#34;     &#34;time&#34;    ) func main() {           producer := kaca.NewClient(&#34;:8080&#34;, &#34;ws&#34;)           consumer := kaca.NewClient(&#34;:8080&#34;, &#34;ws&#34;)           c2 := kaca.NewClient(&#34;:8080&#34;, &#34;ws&#34;)           c2.ConsumeMessage(func(message string) {                   fmt.Println(&#34;c2 consume =&gt;&#34; + message)                   })           consumer.Sub(&#34;say&#34;)           consumer.Sub(&#34;you&#34;)           consumer.ConsumeMessage(func(message string) {                   fmt.Println(&#34;consume =&gt;&#34; + message)                   })           time.Sleep(time.Second * time.Duration(2))           producer.Broadcast(&#34;broadcast...&#34;)           time.Sleep(time.Second * time.Duration(2)) }) }</pre>
授权协议:
MIT
开发语言:
Google Go 查看源码»
操作系统:
跨平台
3014 次点击  
加入收藏 微博
暂无回复
添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传