基于服务的SOA架构_后续篇
今天是元宵节,首先祝各位广大博友在接下来的光阴中技术更上一层,事事如意!
昨天简单介绍了一下本人在近期开发过的一个电商购物平台的架构流程和一些技术说明;今天将详细总结一下在项目中用到的各个架构技术的环境部署和细节,希望能够帮到大家,如有瑕疵,请各位大神指正。
一:详谈服务治理的核心框架之Dubbo及注册中心zookeeper
首先说说Dubbo这个框架吧,接触这个框架是在去年的年底,当时我们公司的架构师震哥赏了我一点关于架构方面的资料,我看了几天感觉挺对它们感冒的,所以就想着学学架构,哪天当当架构师,呵呵,这只是个近期目标,好了,还是吹吹主角dubbo吧。
Dubbo它是阿里巴巴出品的开源的分布式框架,它最大的特点是可以用分层的架构,使表现层和业务层实现解耦合。从面向服务的角度来谈,dubbo采用一种非常简单的模型,要么就是给消费者提供服务,要么就是引用提供方发布的服务(这里的名词解释就不详了,大家可以去找度娘),再接着就是说说dubbo的调用关系原理吧,明白了这点可以强化我们对dubbo的感觉,至少我是这么认为的。

但是说到这里,又一个优秀的角色注册中心zookeeper登场了,他主要是作为Dubbo服务框架的注册中心(当然也可以使用我们熟悉的redis作为注册中心,但是这里我采用最优的,任性一把),他主要是负责各种服务的地址查询和注册,说白了相当于一个目录服务,还有它的一个优点就是从来不转发请求,压力很小(友情提示:在使用Dubbo2.3以上的版本时,建议使用zookeeper注册中心)。
最后就跟大家分享一些安装步骤和在项目中使用的源码。
1、安装zookeeper注册中心
首先上传压缩包,进行解压,然后进入zookeeper解压目录,找到conf目录下文件名为zoo_sample.cfg并将文件名称修改为zoo.cfg,然后进行编辑配置,截图如下:

配置过程中主要注意:
主要配置dataDir和clientPort参数,clientPort参数使用默认值2181即可。
注意:datadir目录中的data目录如果不存在,也会自动生成,你也可以提前手动创建好。
2、Linux系统上部署Dubbo环境monitor监控中心(监控中心可安装也可不安装,建议安装,方便查看各个服务的调用情况)
首先上传dubbo-admin-2.5.4.war压缩包,然后准备一台Tomcat服务器,将上传好的dubbo-admin-2.5.4.war弄到tomcat/webapps目录下,启动服务器解压war包;找到tomcat/webapps/dubbo-admin-2.5.4/WEB-INF/dubbo.properties文件,进行修改,截图如下:

部署成功后访问情况如下:

二:论论Nginx服务器
首先给大家介绍一下我所理解的Nginx以及它在项目中的主要担当的角色,Nginx是一款高性能的http服务器/反向代理服务器及电子邮件代理服务器,经过官方测试nginx能够支撑5万并发链接,实际生产环境能到2-3万并发连接数,这就说明Nginx可以解决项目中的高并发问题,我是有所接触过,的确很强。并且cpu、内存等资源消耗缺非常低,运行非常稳定,高性能吧,呵呵。
Nginx的应用场景:

说了一点理论废话,我就分享一下我之前在项目中的搭建和配置Nginx服务器的经验,都是一些截图,希望能够帮到大家,谢谢。


三:Nginx实现负载均衡(这块我本人比较感兴趣,所以就跟大家所聊聊)
Nginx能够作为负载均衡的理由,这是我感觉非常有用,各位可以在以后的设计结构过程中完全可以考虑:

下面我就拿一个需求来说说吧,也没多少时间了。
需求:当我们访问由一台服务器的IP地址映射的域名访问网站时,后台不仅只有一台服务器在响应数据,而是有多台服务器在轮训进行响应数据。

最后赠送几张我们项目的总体架构流程图及模块分析图,可能有点不清晰,大家就将就瞅瞅,莫怪。【其他技术架构的分享后期还会更新,希望大家能够支持,谢谢】


基于服务的SOA架构_后续篇的更多相关文章
- 面向服务的SOA架构与服务总线ESB
之前的软件的开发主要是面向对象的编程架构 方法---对象---模块---组件---服务,感觉现在的开发的主流的软件架构的设计思想都是对其进行重用,只不过范围越来越大,有一个系统之间进行通信到多个系统之 ...
- jquery 直接调用 wcf,面向服务的SOA架构 ( 第二天)
在前面的基础上,我们来开始第二天编写 客户端 的东西,不过讲之前,我想告诉大家的是: 这个简单的SOA的架构,我们直接通过wcf 调用到 后台的方法, 而中间没有使用 C#代码,大大减少我们客户端的代 ...
- jquery 直接调用 wcf,面向服务的SOA架构 ( 第三天)
所谓万事 具备,只欠东风了!! 接下来就是 wcf 的调用, 首先 在客户端下,随便 写一个 html页面,然后写入如下方法: <script src="scripts/jquery. ...
- SOA架构
基于服务的SOA架构_后续篇 今天是元宵节,首先祝各位广大博友在接下来的光阴中技术更上一层,事事如意!(没能在元宵节发布,今天就补上吧) 昨天简单介绍了一下本人在近期开发过的一个电商购物平台的架构 ...
- SOA 架构与微服务架构的区别
注重重用,微服务注重重写 SOA 的主要目的是为了企业各个系统更加容易地融合在一起. 微服务通常由重写一个模块开始.要把整个巨石型的应用重写是有很大的风险的,也不一定必要.我们向微服务迁移的时候通常从 ...
- SOA架构设计
架构是—套构建系统的准则,通过这套准则,把—个复杂的系统划 分为一套更简单的子系统的集合,这些子系统之间保持相互独立,并与 整个系统保持一致,而且每—个子系统还可以继续细分下去,从而构成 —个企业级架 ...
- JAVAEE——宜立方商城02:服务中间件dubbo、工程改造为基于soa架构、商品列表实现
1. 学习计划 第二天:商品列表功能实现 1.服务中间件dubbo 2.工程改造为基于soa架构 3.商品列表查询功能实现. 2. 将工程改造为SOA架构 2.1. 分析 由于宜立方商城是基于soa的 ...
- SOA实践之基于服务总线的设计
在上文中,主要介绍了SOA的概念,什么叫做“服务”,“服务”应该具备哪些特性.本篇中,我将介绍SOA的一种很常见的设计实践--基于服务总线的设计. 基于服务总线的设计 基于总线的设计,借鉴了计算机内部 ...
- 基于AgileEAS.NET企业应用平台实现基于SOA架构的应用整合方案-开篇
开篇 系统架构的文章,准备在这段时间好好的梳理和整理一下,然后发布基于AgileEAS.NET平台之上的企业级应用架构实践,结合具体的案例来说明AgileEAS.NET平 台之上如何进行系统的逻辑架构 ...
随机推荐
- 浅谈web应用的负载均衡、集群、高可用(HA)解决方案(转)
1.熟悉几个组件 1.1.apache —— 它是Apache软件基金会的一个开放源代码的跨平台的网页服务器,属于老牌的web服务器了,支持基于Ip或者域名的虚拟主机,支持代理服务器,支持安 ...
- kafka第六篇---多个进程读不齐
问题: 4台kafka组成的集群,多余5个进程读的话,造成偏移不齐. 解决办法: 用小于4个进程执行,如果执行够快,就可以追得上
- Objective-c学习笔记3
objective-c代码块多并发 1.代码块对象是对C语言中函数的扩展,除了函数中的代码,代码块还包含有变量绑定,代码块有时也被称为闭包 2.代码块包含两种绑定类型,自动绑定使用的是栈空间,托管绑定 ...
- 对float的理解
从IE6下的双边距引出 对一个div设置float:left;同时设置了margin-left:100px时在IE6下会出现双边距. 有两种解决办法: 1,推荐办法.加display:inline 2 ...
- iOS开发——判断手机格式
添加NSString分类 1.在NSString+Check.h中,添加方法: -(BOOL)checkPhoneNumInput; 2.在NSString+Check.m文件中: -(BOOL)ch ...
- 基于STM32的uCOS-II移植详解
百度:基于STM32的uCOS-II移植详解 源:基于STM32的uCOS-II移植详解
- iOS 生产证书
首先登陆https://developer.apple.com(99美元账号) 选择iOS Developer program 板块下的 Certificates,Identifiers & ...
- 【转】C\C++代码优化的27个建议
1. 记住阿姆达尔定律: funccost是函数func运行时间百分比,funcspeedup是你优化函数的运行的系数. 所以,如果你优化了函数TriangleIntersect执行40%的运行时间, ...
- jQuery-ui datepicker的使用演示代码
这两天使用jquery做一个web端展示的工具,遇到了不少问题也学到了不少知识.其中有一个就是在页面中显示日期选择器的功能,通过百度直接使用的是jquery datepicker 看到一篇使用说明很不 ...
- AFNetworking content type not support
ref:http://blog.csdn.net/nyh1006/article/details/25068255 1.错误信息:Error:Error Domain=AFNetworkingErro ...