Dubbo背景和简介
Dubbo开始于电商系统,因此在这里先从电商系统的演变讲起。
单一应用框架(ORM)
当网站流量很小时,只需一个应用,将所有功能如下单支付等都部署在一起,以减少部署节点和成本。
缺点:单一的系统架构,使得在开发过程中,占用的资源越来越多,而且随着流量的增加越来越难以维护
垂直应用框架(MVC)
垂直应用架构解决了单一应用架构所面临的扩容问题,流量能够分散到各个子系统当中,且系统的体积可控,一定程度上降低了开发人员之间协同以及维护的成本,提升了开发效率。
缺点:但是在垂直架构中相同逻辑代码需要不断的复制,不能复用。
分布式应用架构(RPC)
当垂直应用越来越多,应用之间交互不可避免,将核心业务抽取出来,作为独立的服务,逐渐形成稳定的服务中心
流动计算架构(SOA)
随着服务化的进一步发展,服务越来越多,服务之间的调用和依赖关系也越来越复杂,诞生了面向服务的架构体系(SOA),也因此衍生出了一系列相应的技术,如对服务提供、服务调用、连接处理、通信协议、序列化方式、服务发现、服务路由、日志输出等行为进行封装的服务框架
从以上是电商系统的演变可以看出架构演变的过程:
单一应用架构
当网站流量很小时,只需一个应用,将所有功能都部署在一起,以减少部署节点和成本。
此时,用于简化增删改查工作量的 数据访问框架(ORM) 是关键。
垂直应用架构
当访问量逐渐增大,单一应用增加机器带来的加速度越来越小,将应用拆成互不相干的几个应用,以提升效率。
此时,用于加速前端页面开发的 Web框架(MVC) 是关键。
分布式服务架构
当垂直应用越来越多,应用之间交互不可避免,将核心业务抽取出来,作为独立的服务,逐渐形成稳定的服务中心,使前端应用能更快速的响应多变的市场需求。
此时,用于提高业务复用及整合的 分布式服务框架(RPC) 是关键。
流动计算架构
当服务越来越多,容量的评估,小服务资源的浪费等问题逐渐显现,此时需增加一个调度中心基于访问压力实时管理集群容量,提高集群利用率。
此时,用于提高机器利用率的 资源调度和治理中心(SOA) 是关键。
!
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
微服务之服务调用与安全控制
一、微服务平台架构简介 EOS8 微服务平台功能架构图 普元8月份发布了EOS8微服务平台,上图为功能架构图。平台提供了微服务开发测试、运行容器、公共服务以及管理监控等较为完善的工具套件,用以支撑企业级的It系统微服务架构落地。 微服务平台运行视图 这是微服务平台的一个简化版的运行视图,比照这张图,我们先一起理解并统一下概念术语,这里的术语解释不一定是业界共识,仅作为今天分享内容上下文中的一个定义对大家理解分享内容来说非常重要。 域:从物理部署角度看,指微服务业务系统的基础运行环境,可以支持多个系统再域内运行监控和管理,即一个域部署一套微服务基础环境即可。从逻辑角度看,域常与业务或组织划分有所关联,可根据实际需求定义。 系统:即传统意义上的业务系统。微服务架构模式下,一个系统包含一个或者多个微服务。 应用:特指拆分后的 “微服务”。微服务架构模式下,系统按业务特点拆分成多个微服务,为避免“服务”这个词的使用混乱,我们这里将系统拆分后的微服务称作“应用”。 服务:特指API,即应用或网关发布和开放的对外接口。 网关:系统服务对外开放的服务门户。网关为客户端提供服务,作为服务出口屏蔽服务端...
- 下一篇
RocketMQ概念详细之broker
生产者角色 Broker的角色有ASYNC_MASTER,SYNC_MASTER 或SLAVE。如果不能容忍消息丢失,我们建议你部署SYNC_MASTER并为其附加SLAVE。如果消息丢失影响不大,但需要Broker一直可用,你可以使用SLAVE部署ASYNC_MASTER。如果仅想简单,你可能只需要一个没有SLAVE的ASYNC_MASTER。 刷盘类型 推荐异步刷盘,同步刷盘太昂贵且会引起大量性能下降。如果需要可靠性,推荐使用带有SLAVE的SYNC_MASTER 。 后续待完成
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- CentOS8编译安装MySQL8.0.19
- CentOS7,CentOS8安装Elasticsearch6.8.6
- CentOS7安装Docker,走上虚拟化容器引擎之路
- Eclipse初始化配置,告别卡顿、闪退、编译时间过长
- Mario游戏-低调大师作品
- 2048小游戏-低调大师作品
- SpringBoot2初体验,简单认识spring boot2并且搭建基础工程
- SpringBoot2编写第一个Controller,响应你的http请求并返回结果
- SpringBoot2整合MyBatis,连接MySql数据库做增删改查操作
- SpringBoot2整合Thymeleaf,官方推荐html解决方案