RPC框架的使用及总结

0.缘由:涉及到对某服务调用,想问rpc方式调用与http方式调用的区别,问出此问题后才发现对过去的xoa框架只是进行了简单的使用,对其背后的原理并没有一点深入理解。匆匆开头,后续补充。

1.rpc与http:rpc本身是通过网络通信调用的,相对socket的方式在于封装好了对象,相对而言更为高层,比如java中的RMI方式。

1.1日常中使用的更多是http请求方式还是rpc方式?区别优劣在哪里?

贴个链接,没细看:http://codebetter.com/glennblock/2012/01/19/http-is-not-a-transport-protocol-http-is-not-rpc/

 

如果http请求,有没有办法做到一致性?(http请求-->nginx-->各台机器上的tomcat/resin-->mysql/nosql,这种一致性还是体现在mysql/nosql这一层吧,访问的是同一数据库集群。)

如果是rpc请求,公司是通过zookeeper的方式,由zookeeper来保证一致性。zookeeper起的作用在哪里呢?保证了什么一致性?(原理解有误,zk主要是用于寻址服务,保证服务地址的一致性及变动后的可见性,每个xoa客户端都嵌入了去zk寻址的程序,相当于zk的客户端,去zk服务器根据serviceId查找zk地址,同时xoa如果有变动也会去zk发布),一致性指的是多个zk服务器上的数据的一致性。

 

 

 

 

@Todo

3.目前公司使用的thrift/xoa深入分析

参考资料:

 

1.zc的博客http://blog.csdn.net/column/details/thrift.html

posted on 2015-03-12 13:34  majia1949  阅读(474)  评论(0编辑  收藏  举报

导航