1. 服务发布与订阅:服务端使用 Zookeeper 注册服务地址,客户端从 Zookeeper 获取可用的服务地址。
  2. 通信:使用 Netty 作为通信框架。
  3. Spring:使用 Spring 配置服务,加载 Bean,扫描注解。
  4. 动态代理:客户端使用代理模式透明化服务调用。
  5. 消息编解码:使用 Protostuff 序列化和反序列化消息。