如何管理高朗的客户

我有一个软件包商店,如下所示。


package store


type dbClient struct {

   client rpc.Client

}


func init() {

    // init dbClient

}

type Args struct{}

type Reply struct{

   Stories []interface{}

}


func GetStories() ([]interface{}, error) {

   args := Args{}

   var reply Reply

   err := dbClient.client.Call("Database.GetStories", &Args, &reply)

   return reply.Stories, err

}

我面临两个问题:

  1. 商店。获取故事同时从多个戈鲁丁调用,但 rpc。客户端按顺序处理请求,因此构建dbClient的最佳方式是什么,以便我能够处理100个要存储的并发请求。获取故事?

  2. 每当我重新启动 rpc 服务器时,数据库客户端断开连接,并且调用给出错误 rpc。哎呀。那么,检查连接和重新连接的最优化方式是什么?我脑海中有一个民意调查的戈鲁丁,寻找更多的想法


慕哥6287543
浏览 65回答 1
1回答

拉莫斯之舞

最简单的解决方案是使用根据您的用例制作的方法:https://golang.org/pkg/net/rpc/#Client.Go
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java