node-jsonrpc-dubbo
终于在祖鹏和文武的努力下,我们的dubbo可以暴露jsonrpc协议了。
这对于我们web端的小伙伴来说,真是喜大普奔的事情。必须鼎力支持。
从此开启web端快速进化之旅,无论是当红炸子鸡nodejs,还是沉稳健壮大python,亦或者Golang,从此八仙过海, 各显神通。
当然我们现在要先解决nodejs的问题。
TODO List
-
node可以连接zookkeeper,根据/dubbo的path,获取所有的provider,然后进入provider,获取真正的提供者url eg. path=/dubbo/com.ofpay.demo.api.UserProvider/providers,
-
根据提供者的信息,过滤出jsonrpc://协议的provider,解析url,获取host:port/path method param
-
通过jsonrpc去调用method
-
获取注册中心的信息,然后本地缓存配置信息,然后订阅zk的更新,如果有更新重新生成缓存文件
-
一个服务可能有多个提供者(集群),现在先随机调度到其中一个。
To be continue
-
按需缓存provider的元数据,而不是一下子全sync到client端
-
provider的调用支持version, group
-
接收zookeeper的更新通知,刷新本地provider缓存
-
写入consumer信息
usage
更符合node的使用方式和思维习惯
var client = ; var provider = 'com.ofpay.demo.api.UserProvider'; //简单的调用一个接口client; //group version supportclient;