java RPC框架:
远程过程(方法)调用;
提升性能最关键、最耗时的两个方面:序列化、网络通信;
网络通信:
Dubbo采用Socket通信机制,一步到位,可建立长连接,不用反复连接,直接传输数据;
三大核心功能:
面向接口的远程方法调用、智能容错和负载均衡、服务自动注册和发现;
Dubbo Architecture
dubbo 支持的协议:dubbo、hessian、rmi、http、webservice、thrift、memcached、redis.
dubbo官方推荐使用dubbo协议。dubbo协议默认端口号20880。
使用dubbo协议,spring配置文件中加入:
<dubbo:protocol name="dubbo" port="20880"/>
Zookeeper 目录结构:
zookeeper-3.7.1 需要 jdk 1.7 以上版本;
Zookeeper 的启动需要java环境变量,linux环境和windows环境使用的一样;
下载的zookeeper包可以在linux和windows同时使用;
zookeeper 启动时,会占用8080端口, 可以修改conf目录下的zoo.cfg文件,添加admin.serverPort=8888,避免占用8080端口;
Dubbo官方推荐的项目结构:
1、服务者工程 web工程
2、消费者工程 web工程
3、接口工程 java工程
4、注册中心 zookeeper