什么是服务化?说说面向服务架构以及微服务
所谓的服务化是指把一个大型系统中的各个业务进行抽象以后,以服务为单位进行开发和管理的方法。与之相关联就是面向服务架构。
面向服务架构(SOA)是一种软件设计风格,其理念是通过服务组件来实现一个系统的需求。
每个SOA服务是一个独立的功能单元,可以独立执行。
属性
每个SOA服务是一个独立的功能单元,可以独立执行。
属性
一个SOA服务有四个属性:
· 逻辑上代表了一种具有特定结果的商业活动。
· 是自成一体的。
· 对它的消费者来说是一个黑匣子,消费者不需要知道该服务的内部运作。
· 可能由其他基础服务组成。
角色
每个SOA服务可以扮演以下三种角色中的任何一种:
服务提供者
主要考虑的是提供什么服务,如何提供服务。
服务经纪商
它是服务提供者和消费者的中介。
服务消费者
通过服务经纪商查找服务,然后与服务提供商绑定,以调用其网络服务。
服务消费者与服务提供者的关系是由标准化的服务合同来规范的。
技术
SOA架构中服务可以使用独立的技术,这些技术实现包括:
·基于WSDL和SOAP的Web服务
· 消息传递,例如ActiveMQ、JMS、RabbitMQ等消息传递
· RESTful HTTP服务
· OPC-UA
· WCF(微软的Web服务的实现)
· Apache Thrift
· gRPC
· SORCER
微服务
微服务是对面向服务架构的现代解释,用于构建分布式软件系统。
微服务体系结构中的服务是通过网络通信来实现一个功能目标。
微服务有助于封装语言和框架的选择。
关于微服务一般来说具有如下特征:
·可独立部署的服务;
· 业务驱动的开发(如:领域驱动的设计);
· 云应用架构;
· 多元化编程和持久性;
· 轻量级的容器部署;
· 分散式连续交付;
· DevOps与整体服务监控;
领取专属 10元无门槛券
私享最新 技术干货