您的位置:首页 > 运维架构 > 网站架构

阿里架构之dubbo

2015-12-21 15:17 537 查看
1、首先先感谢dubbo的作者-----梁飞等开发人员

2、公司是电商型的一家公司。无意中接触了一下dubbo。也去了解下dubbo。简单了解了一下dubbo瞬间颠覆了。我们传统的单工程开发模式。(勿喷,小白一个)

3、为什么学习dubbo?

答:传统的单工程架构,虽然也是分模块,但是模块最终需要一个类似web的工程去承载,以至于后期项目增大。开发人员之间的交互变得繁琐。不满足开发的 高内聚、低耦
合的风格。为此感谢阿里提供的开源架构。dubbo的思想是 业务层一下的结构不将直接对待controller层展示。直接托管zookpeeper。这里zookpeeper就是一个服务的中
心。有兴趣的朋友可以去了解下。这就达到了解耦的目的。加入有1000个项目。我们只需要,分组进行开发,各个模块之间不会有业务的调度。一切业务去zookeeper中
心调度。相关的模块负责人,只需要打包一个服务方和消费方一个公用的接口方公用起来,就能完美的调用。从而达到了。后期项目庞大。分模块去部署。大大提高项目
的性能。(个人看法。在写这篇日志之前,我是小白一个)

4、走进dubbo的世界----第一步。helloworld

①:准备工作

1、jdk7、tomcat7、zookeeper3.4.7、dubbo-admin-2.4.1

2、准备一台linux服务器。(这里推荐使用阿里云的服务器本人的推荐码:I1FX1J )。

3、在linux上安装jdk、和部署tomcat7(使用免安装版,网上有教程)

4、完成第3步之后,我们上传zookeeper3.4.7和dubbo-admin-2.4.1

5、解压zookeeper3.4.7后;在对应的zookeeper-3.4.7/conf 下有一个文件zoo_sample.cfg的这个文件里面配置了监听客户端连接的端口等一些信息,Zookeeper 在启动
时会找zoo.cfg这个文件作为默认配置文件,所以我们复制一个名称为zoo.cfg的文件,如图所示:



6、说明:

clientPort:监听客户端连接的端口。

tickTime:基本事件单元,以毫秒为单位。它用来控制心跳和超时,默认情况下最小的会话超时时间为两倍的 tickTime。

我们可以对配置文件的端口等或者进行高级配置和集群配置例如:maxClientCnxns:限制连接到 ZooKeeper 的客户端的数量等

7、启动Zookeeper 的服务;执行命令:./bin/zkServer.sh start

8、dubbo-admin-2.4.1是一个war包。解压。修改配置文件dubbo.properties;


9、启动tomcat服务。个解压好的war包,在tomcat运行这个就不在多说了。注意引用的路径就好。
②:项目构建



一共建立了四个项目。看官方文档以及结合自己的思想。先简历一个parent是为了,项目的继承方便和聚合使用。
dubbo-demo-faced这个是服务方和消费方公用的接口包,这个在项目的时候,就是直接打成jar包。没有实现。实现在服务方实现。
dubbo-demo-consumer服务消费者
dubbo-demo-provider服务提供方
③、程序就不在解释了。大家有兴趣自行下载。说明下服务方中的provider.java先执行。执行完之后,不要关闭进程。此时进入zookeeper管理界面会有一个服务提供的接口,表示,服务方已经在zookeeper中心注册。消费方有一个consumer.java执行完之后,就会看到成功调用了。
结果如下图:





consumer.java会输出hello world信息。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: