做分布式开发有哪些开源项目开源用???其中各自的优缺点又是什么???小弟我期待各位牛人帮忙...
做分布式开发有哪些开源项目开源用???其中各自的优缺点又是什么???小弟我期待各位牛人帮忙...
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
做分布式开发有哪些开源项目开源用???其中各自的优缺点又是什么???小弟我期待各位牛人帮忙...
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
接受
或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
发布评论
评论(6)
我说的都是基于TCP消息传递的分布式。
网络层: Netty , Mina. 我自己用的Netty, 公司用的Mina. (都是NIO,异步,当你有同步需求的时候很蛋疼,比如负载均衡)
消息传输格式: google protocol buffer (我用的就是这个,序列化和饭序列化速度很快,缺点:要定义格式文件,没有继承的概念!!用编译器生成java代码,所以不要想extends)
集群管理, 心跳, FailOver通知, leader选举:zookeeper (基本快成行业标准了。)
负载均衡:基于zookeeper自己写代码就可以(RoundRobin,WeightedRoundRobin)
缓存:Redis(也快成行业标准了。速度暴快!配合protocol buffer很给力)
缓存定位:自己写(根据你分布式缓存存储方式,比如full cache. 单点缓存。我用的单点缓存,参考一致性Hash)
我目前就做了这么多,如果你还想做消息列队,消息订阅之类的东西,直接用redis。
关于分布式通信框架 请参考 http://www.oschina.net/question/147822_126819
还有一些优秀的框架 参考: Hadoop IPC. dubbo.
这个肯定不用说,主要是分布式开发这块。。。
版本管理方面 svn git是需要的
java
用什么语言啊?
我说的都是基于TCP消息传递的分布式。
网络层: Netty , Mina. 我自己用的Netty, 公司用的Mina. (都是NIO,异步,当你有同步需求的时候很蛋疼,比如负载均衡)
消息传输格式: google protocol buffer (我用的就是这个,序列化和饭序列化速度很快,缺点:要定义格式文件,没有继承的概念!!用编译器生成java代码,所以不要想extends)
集群管理, 心跳, FailOver通知, leader选举:zookeeper (基本快成行业标准了。)
负载均衡:基于zookeeper自己写代码就可以(RoundRobin,WeightedRoundRobin)
缓存:Redis(也快成行业标准了。速度暴快!配合protocol buffer很给力)
缓存定位:自己写(根据你分布式缓存存储方式,比如full cache. 单点缓存。我用的单点缓存,参考一致性Hash)
我目前就做了这么多,如果你还想做消息列队,消息订阅之类的东西,直接用redis。
关于分布式通信框架 请参考 http://www.oschina.net/question/147822_126819
还有一些优秀的框架 参考: Hadoop IPC. dubbo.