怎么启动http服务和rpc服务
导读:本文共3090字符,通常情况下阅读需要10分钟。同时您也可以点击右侧朗读,来听本文内容。按键盘←(左) →(右) 方向键可以翻页。
摘要: 怎么启动http服务和rpc服务?这篇文章运用了实例代码展示,代码非常详细,可供感兴趣的小伙伴们参考借鉴,希望对大家有所帮助。开启http服务老规矩,先添加配置,顺便把rpc的配置也写进去,config.json: "http_config": { "addr": ":8080" }, &quo... ...
目录
(为您整理了一些要点),点击可以直达。怎么启动http服务和rpc服务?这篇文章运用了实例代码展示,代码非常详细,可供感兴趣的小伙伴们参考借鉴,希望对大家有所帮助。
老规矩,先添加配置,顺便把rpc的配置也写进去,config.json:
config.go:
接着,来看看process/http/http.go的内容:
我用了gin来提供http服务,具体路由分发的方法写在了dispatch.go里面,这里写了一个简单的示例接口,获取服务器系统时间:
我定义了一个请求结构体和返回结构体来统一一下,请求和返回的数据格式。GetServerTime调用了controller.GetServerTime()方法。我希望有个数据处理层来隔离接口。
rpc服务
我现在想对外提供rpc服务,和http服务提供一样的数据。我用的是grpc。
我在process/rpc/server目录下,创建了一个server.proto文件来定义接口协议:
接着,进到process/rpc/server目录,并执行生成go文件的命令,会生成一个go文件:
然后,我们写一下我们的rpc服务端:
main.go
main.go添加了这几行代码,以go routine启动了http服务和rpc服务,因此,在最后用一个select来阻塞程序退出。
写一个rpc客户端的test如下:
编译:
运行:
测试:
测试rpc接口的文件我放在了process/rpc/test/request.go
关于就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。
怎么启动http服务和rpc服务的详细内容,希望对您有所帮助,信息来源于网络。