1
kalista 2020-08-08 17:04:18 +08:00
想知道为什么不通过 rpc 通信的方式,和 cgo 调用优劣在哪,我个人比较倾向前者
|
2
Jirajine 2020-08-08 18:16:40 +08:00
写成接口出来调用比较合适,两个带 GC 的语言之间根本没法共享内存,相互调用麻烦且低效。
|
3
sunny352787 2020-08-08 18:20:46 +08:00
有没有碰到线程问题?我在 Unity 的 C#中调用 go 的时候发现在 go 中开 goroutine 会卡死,以及各个平台传递数据的方式是不太一样的,具体使用方式在 https://github.com/sunny352/Example_Unity_Plugin_Go
|
4
xcstream 2020-08-08 18:50:06 +08:00
走管道吧 或者网络也行
|
5
supermoonie 2020-08-08 20:36:53 +08:00 via iPhone
rpc 吧,简单方便
|
6
wangxiaoaer 2020-08-08 20:57:44 +08:00
借楼问一下,以前一直一位 RPC 跟 API 请求没啥两样,刚搜了下,好像还不太一样。
API 不限语言,RPC 需要 client 跟 server 开发语言一致? 而且感觉 RPC 的话 client 跟 server 有大量重复代码(定义接口之类),是不是更麻烦些? |
7
lcj2class OP @kalista #1 看依赖服务的情况吧,如果就依赖一两个功能,JNA 方便些。rpc 调用的话, 相当于整条链路上多了一跳,服务的治理、维护、升级都是不小的问题
|
8
labulaka521 2020-08-08 22:56:40 +08:00 via iPhone
@wangxiaoaer rpc 服务端客户端语言可以不一样吧
|
9
magicdu 2020-08-08 22:59:25 +08:00
grpc
|
10
huanghe314 2020-08-09 02:39:48 +08:00 via iPhone
@wangxiaoaer 当然可以不一样了,只要 rpc 是一套协议就行
|
11
tairan2006 2020-08-09 09:09:47 +08:00 via Android
@wangxiaoaer RPC 也是一种 API
|
12
wangxiaoaer 2020-08-09 09:37:08 +08:00 via iPhone
|
13
GoLand 2020-08-09 10:13:05 +08:00
@wangxiaoaer 两个层面的东西,HTTP 接口也可以看做 RPC 的一种,只不过具体是用 HTTP 协议来实现的。RPC 是一个很宽泛的概念。
|