能通俗易懂的讲解下 微服务与 以前的面向服务的区别吗

橙色阳光 2019-02-22 12:08:36
如题 要通俗易懂哈,
能把复杂概念简单化,才能体现你的本事
...全文
350 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
我不懂电脑 2019-02-22
  • 打赏
  • 举报
回复
如果一句话来谈SOA和微服务的区别,即微服务不再强调传统SOA架构里面比较重的ESB企业服务总线,同时SOA的思想进入到单个业务系统内部实现真正的组件化
首先对于应用本身暴露出来的服务,是和应用一起部署的,即服务本身并不单独部署,服务本身就是业务组件已有的接口能力发布和暴露出来的。
其次,微服务架构本身来源于互联网的思路,因此组件对外发布的服务强调了采用HTTP Rest API的方式来进行
微服务的基本思想在于考虑围绕着业务领域组件来创建应用,这些就应用可独立地进行开发、管理和加速。在分散的组件中使用微服务云架构和平台使部署、管理和服务功能交付变得更加简单。
  • 打赏
  • 举报
回复
传统地,你让几个不同的部门自己用 asp.net 写了几个“服务”部署上去,集成在一起(一台或者多台服务器上),告诉用户说“我们用SOA 架构”。 但是微服务是个高性能的网络操作系统,部署和撤销服务应该比传统的 SOA 方式更自动化、更快何止千倍万倍,相当于你过去客户端是针对业务服务器接口和它(们)背后的数据库服务器来操作,现在你的客户端可以针对几千万上亿的“对象云”来直接操作。 比如说过去你查看档案,是访问某个 webapi 接口来输入输出 json 数据,访问是无状态的。现在你是直接获得档案 id 的客户端代理,然后你直接对档案的各个属性和方法进行(貌似)有状态的操作,而云端则会专门配置一个高速的对象服务给你(每一台服务器上都会动态创建几十万档案服务对象)。类似于18年前的 remoting,但是比 remoting 更加面向分布式计算,更加实用。
  • 打赏
  • 举报
回复
不是说你用 asp.net 之类的写个什么 webapi 服务然后部署上去,就说“我部署了一个微服务”了。 实际上微服务系统是一个网络操作系统层面的东西,它可以注册几百、几千台服务器,然后自动创建、收缩、承载几亿、几百亿服务对象,并且自动将针对某个服务对象的操作路由到正确的机器和线程上去。你可以提交一个 dll,然后注册 dll 中你的服务对象到这个操作系统上。网络就好像人的大脑,单个大脑也是由无数的计算机组成的。因为有了广义的网络操作系统模型,才有了细微的服务。 不是说传统地发布个什么 asp.net 服务就叫做微服务。
  • 打赏
  • 举报
回复
一个好的微服务管理系统,自身就应该是一个“调度总线”,它可以瞬间创建一个服务,也可以自动回收那些闲置了很久的服务。就好像上面的“档案馆微服务系统”例子一样,它不是说提供几个什么 api 功能调用接口,而是说它自身就能提供几十万、几百万动态创建和动态收缩的服务对象。
  • 打赏
  • 举报
回复
微服务做多了,又会回到服务注册发现里面去了,你又要做这些。
  • 打赏
  • 举报
回复
传统的 SOA 概念其实是个比较粗放、面向功能接口地说法,更多地强调的是大型服务系统中间关系,包括服务发现协议、服务权限控制等等,跨企业通讯的意思浓厚。但是微服务更像是 Object+Task 任务控制一样,往往强调的组织内部并发高性能的对象是高效率高并发和简单化地部署在一起的,实际上更强调地是那种依赖于传统的高速缓存机制优化的系统的分布式计算。由于性能高了成百上千倍,所以一个网络上可能存在相同功能的几十万个微服务并且自动路由,而不是传统的简单 SOA 设计者以为的那几个功能服务,而是几十万几百万的对立对象的服务。 比如说针对某档案馆系统,传统的 SOA 可能是指粗放地简单的 api 接口,而微服务是指这个档案馆的几百万档案每一个都可以独立看成是一个服务——假设一个档案服务没有创建那么微服务系统就会瞬间创建一个新的微服务实例。 SOA 的概念可以看成是初学者脑子中的那种“面向过程”的东西,过程访问数据时是通过什么“调用数据库驱动增删改查”来操作的。而微服务可以看成是电信级系统的“面向对象”的东西(类似过去的 Remoting 概念),过程访问数据是通过访问它本地缓存数据、或者访问其它微服务来编程而不是什么数据库增删改查。 当然当你集成多种简单系统时,完全可以把微服务技术与传统 SOA 应用结合起来。他们不是对立的,而是从 SOA 逐步演化到微服务架构的。
架构解密,从分布式到服务高清带书签版本,了解分布式系统的研发流程以及所用到的中间件,学习分布式系统到服务架构的演化过程。 历时三年终到稿,还未读完初稿,就知道《架构解密:从分布式到服务》将是一本畅销书。   从传统分布式架构迁移到基于容器技术的服务架构,这本就是百谈不厌的话题。   更别提内容涉及Microservices、Kubernetes、SOA、Distribute Memory、ElasticSearch、Kafka、CAP、NUMA、SOA、GlusterFS、Actor、Akka、RabbitMQ、Spring Cloud、ZeroC Ice……   Leader-us的文字还是那样充满IT情怀和抱负,也一如既往地流畅和通俗易懂。   一个很复杂的问题,经过Leader-us一个调侃就变得简单化。   一个看似很简单的问题,Leader-us却总能深入到幕后,包括独有的数据和原理讲解,一手的资料啊有木有,世上难买啊有木有,很珍贵啊有木有!   Leader-us调侃道:“《架构解密:从分布式到服务》是一本代码级吹水架构师读物,从此360°无死角吹水,绝地反击,打败纯吹水派架构师”,让我们拭目以待。 分布式架构与服务平台是当今IT界的关键技术,也是资深软件工程师和系统架构师必须掌握的核心技术。《架构解密:从分布式到服务》以从传统分布式架构迁移到基于容器技术的服务架构为主线,全面、透彻地介绍了与分布式架构及服务相关的知识和技术。《架构解密:从分布式到服务》一开始并没有提及分布式的枯燥理论,而是讲述了一段精彩的IT发展史,其中重点讲述了大型机、UNIX小机器的没落与X86平台的崛起,从而巧妙地引出CPU、内存、网络、存储的分布式演进过程,这恰恰是分布式软件系统赖以运行的“物质基础”。然后简明扼要地介绍了进行系统架构所必需的网络基础,并详细介绍了分布式系统中的经典理论、设计套路及RPC通信,对内存、SOA架构、分布式存储、分布式计算等进行了深度解析,后详细介绍了全文检索与消息队列中间件,以及服务架构所涉及的重点内容。   《架构解密:从分布式到服务》是Leader-us多年架构经验的倾情分享,主要面向关注分布式架构及服务,以及有志于成为实力派架构师的IT人士。 Leader-us,本名吴治辉,惠普资深软件架构师,国内知名开源分布式数据库中间件 Mycat的发起人,精通Java编程,拥有过16年软件研发经验,专注于电信和云计算方面的软件研发,参与过众多分布式与云计算相关的大型项目架构设计和 Coding,是业界少有的具备很强 Coding 能力的 S级资深架构师;曾经选拔和培养了大批Java工程师,他们中的大多数人进入知名软件公司参与核心研发,也有一些人选择创业。   Leader-us 也是《ZeroC Ice 木又威指南》《Kubernetes 木又威指南:从 Docker到 Kubernetes 实践全接触》的作者。

110,534

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧