基于NATs消息队列的Hprose
- 超时
- 惰性加载
- 失败切换
- 负载均衡
go get github.com/vlorc/hprose-go-nats
这个项目是在Apache许可证下进行的。请参阅完整许可证文本的许可证文件。
client := rpc.NewClient("nats://localhost:4222?topic=test&timeout=1")
method := &struct{ Hello func(string) (string, error) }{}
client.UseService(method)
for i := 0; i < 10; i++ {
log.Print(method.Hello(fmt.Sprintf("baby(%d)",i)))
}
server := rpc.NewServer(rpc.NewOption(rpc.Uri("nats://localhost:4222?topic=test&group=balancer")))
server.AddFunction("hello", func(msg string) string {
log.Print("hello: ", msg)
return "hi bitch!"
})
server.Start()