关于分布式开发的资料

我说的都是基于TCP消息传递的分布式。

网络层: Netty , Mina. 我自己用的Netty, 公司用的Mina. (都是NIO,异步,当你有同步需求的时候很蛋疼,比如负载均衡)

消息传输格式: google protocol buffer (我用的就是这个,序列化和饭序列化速度很快,缺点:要定义格式文件,没有继承的概念!!用编译器生成java代码,所以不要想extends)

集群管理, 心跳, FailOver通知, leader选举:zookeeper (基本快成行业标准了。)

负载均衡:基于zookeeper自己写代码就可以(RoundRobin,WeightedRoundRobin)

缓存Redis(也快成行业标准了。速度暴快!配合protocol buffer很给力)

缓存定位:自己写(根据你分布式缓存存储方式,比如full cache. 单点缓存。我用的单点缓存,参考一致性Hash)

我目前就做了这么多,如果你还想做消息列队,消息订阅之类的东西,直接用redis。

还有一些优秀的框架 参考: Hadoop IPC. dubbo.

你可能感兴趣的:(分布式)