阿里架构之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信息。
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信息。
相关文章推荐
- 阿里云上我微服务架构
- 高流量网站如何做出高性能?
- 高流量网站如何做出高性能?
- mysql高可用方案MHA介绍
- windows2008 R2访问php网站慢怎么办?
- 一名交互设计师必备的知识架构
- 网站优化:浏览器缓存控制简介及配置策略
- 推荐一个在线编辑Latex公式的网站
- 常用网站
- 转帖:网站服务架构
- 不依附于任何网站建立自己的博客(基于hexo + github)
- IMCART(网站建设公司):非洲国家买家对图案、色彩的禁忌网站
- [译] 企业级 OpenStack 的六大需求(第 3 部分):弹性架构、全球交付
- H5网站开发中常用的十五特性
- IMCART(网站建设公司):非洲国家买家对图案、色彩的禁忌网站
- 为你的网站项目安装BrowserSync
- MVC 架构设计
- 常用的网站和博客
- 【工具】今天有人问我可以直接离线一个完整的网站吗?有没有什么工具之类的?我推荐一款:Httrack (网站复制机)案例:离线你的博客园
- 健壮且可读的安卓架构设计