公司目前选择是 dubbo,但是有点黑盒子,发送请求和接受请求过程不可见,有时候还会在底层出现一些调用异常却不可查。 java 开发也要专门为 dubbo 写接口才能通过 zk 调用。各位大佬还有什么更好实践?
1
marksaas 2018-12-25 16:55:59 +08:00
http,websocks,webservice,消息中间键。。。。。。
|
2
benjunk OP @marksaas http 感觉是最后选择吧,java 都有 http 接口了,node 立在这里感觉很多余。并且大佬你后面这几个是客户端和服务器实时通信的协议吧?我是希望有一个类似 dubbo 的解决方案,node 在服务器端请求 java 接口
|
3
MicroPan 2018-12-25 17:03:58 +08:00
grpc
|
4
luozic 2018-12-25 17:14:12 +08:00 via iPhone
thrift
|
5
benjunk OP @luozic 已经被过度了,之前公司是 php+java 就是用的 thrift,现在全栈迁移 node,都是 Dubbo
|
6
momocraft 2018-12-25 17:23:04 +08:00
dubbo 是 apache dubbo (看介绍也是 http) ? 你说的 http 是指什么
|
7
benjunk OP @momocraft dubbo 是配合 zk 来的。java 把服务注册到 zk 上,node 到 zk 注册消费者,两者就通了。可能我叙述有问题,我说的 http 接口就是直接通过网址来获取数据了。
|
8
glasslion 2018-12-25 17:49:58 +08:00
dubbo? 还有更差的实践吗
|
9
benjunk OP @glasslion 现在他们想摆脱 dubbo 重新回到 http 时代。。因为要接 dubbo 的话,java 必须为 dubbo 单独写一份文件注册到 zk 上,还要写 dto。如果 http 的话 java 工作少了,node 没有黑盒子。但是这样我感觉没必要呀,java 都起了 http 接口了,用 node 有啥意义
|
10
zk123 2018-12-25 18:10:37 +08:00 via iPhone
请在 dubbo 上扩展一个自己的协议
|
11
fyibmsd 2018-12-25 18:12:15 +08:00
队列
|
12
luozic 2018-12-25 22:12:12 +08:00 via iPhone
dubbo 支持 http 协议直接搞 rest 啊
|
13
Cbdy 2018-12-25 22:17:00 +08:00 via Android
说一个以前用过的:hprose
|
14
guodong110 2018-12-25 23:34:55 +08:00 via Android
做个泛化调用,所有的 http 请求都到这个泛化调用转发器上,node 层不要去感知注册中心这些玩意
|
15
xhinliang 2018-12-26 00:45:42 +08:00
说下你们是出于什么原因要通信吧。
如果说 node 只是做一个中间层的话,那就别搞 zk 了。 |
16
marksaas 2018-12-26 09:38:33 +08:00
@benjunk 调用者都是客户端,看你怎么理解了,dubbo 只是一个框架,直接很多协议,不用 dubbo 协议还有很多其他的可以用的,具体参考: http://dubbo.apache.org/zh-cn/docs/user/references/protocol/dubbo.html
|
17
photon006 2018-12-26 09:53:21 +08:00
grpc
|
18
thonatos 2018-12-26 10:13:48 +08:00
跨语言调用要看使用场景了,通用场景的 RPC/HTTP 比较常见了,duboo/grpc 应该都可以满足了。
这里需要多说一下,zk 的存在是为了服务发现,这个换到其他模型也一样需要的,关键在于服务架构。 |
19
nocrush 2018-12-26 11:40:29 +08:00
rpc http
|
20
TomVista 2018-12-26 14:16:59 +08:00
可以写一个 2 进制文件夹存东西,两边进行读取,实现通信.:dog
|