当前位置:首页 > 经验 >

架构解密从分布式到微服务(微服务和分布式最大区别)

来源:原点资讯(m.360kss.com)时间:2022-10-28 06:22:00作者:YD166手机阅读>>

我们知道Kubernetes是基于容器技术的微服务架构平台,每个微服务的二进制文件都被打包成标准的Docker镜像,因此应用的全生命周期管理过程的第一步,就是从源码到Docker镜像的打包,而这个过程很容易实现自动化,我们既可以通过编程方式实现,也可以通过成熟的第三方开源项目实现,这里推荐使用Jenkins。下图是Jenkins实现镜像打包流程的示意图,考虑到Jenkins的强大和用户群广泛,很多PaaS平台都集成了Jenkins 以实现应用的全生命周期管理功能。

架构解密从分布式到微服务,微服务和分布式最大区别(17)

PaaS 平台的基础中间件

一个完备的PaaS平台必须集成和提供一些常见的中间件,以方便应用开发和托管运行。首先,第1类重要的基础中间件是 ZooKeeper,ZooKeeper非常容易被部署到Kubernetes集群中,在Kubernetes 的 GitHub上有一个YAML参考文件。ZooKeeper除了给应用使用,也可以作为PaaS平台面向应用提供的“集中配置服务”的基础组成部分,如下图所示。

架构解密从分布式到微服务,微服务和分布式最大区别(18)

此外,考虑到很多开源分布式系统都采用了ZooKeeper来管理集群,所以我们也可以部署一个标准命名的ZooKeeper Service,以供这些集群共享使用。

第2类重要的中间件就是缓存中间件了,比如我们之前提到的Redis 及 Memcache,它们也很容易被部署到Kubernetes集群中,作为基础服务提供给第三方应用使用。在Kubernetes的入门案例中有一个GuestBook例子,演示了在PHP页面中访问Redis主从集群的方法,即使是复杂的Codis集群,也可以被成功部署到Kubernetes集群中。此外,RedHat 的J2EE内存缓存中间件Infinispan也有Kubernetes集群部署的案例。

第3类重要的中间件是消息队列中间件,不管是经典的ActiveMQ、RabbitMQ还是新一代的Kafka,这些消息中间件也很容易被部署到Kubernetes集群中提供服务。下图是一个3节点的RabbitMQ集群在Kubernetes平台上的建模示意图。为了组成RabbitMQ集群,我们定义了3个Pod,每个Pod都对应一个Kubernetes Service,从而映射到3个RabbitMQ Server 实例,此外,我们定义了一个单独的Service,名为 ku8-rabbit-mq-server,此 Service对外提供服务,并且对应到上述3个Pod 上,于是每个Pod都有两个标签。

架构解密从分布式到微服务,微服务和分布式最大区别(19)

第4类重要的中间件是分布式存储中间件,目前在Kubernetes集群上可以使用Ceph集群提供的块存储服务及GlusterFS提供的分布式文件存储服务,其中 GlusterFS被RedHat的OpenShift平台建议为文件存储的标配存储系统,下面是这种方案的示意图。

架构解密从分布式到微服务,微服务和分布式最大区别(20)

栏目热文

微服务单体和分布式(微服务第一单体架构)

微服务单体和分布式(微服务第一单体架构)

昨晚睡觉前,顺手撸了几个群聊的聊天记录。发现一个很有意思的名词“分布式单体”,顺藤摸瓜看了一下之前的聊天记录,由于内容骂...

2022-10-28 05:56:11查看全文 >>

java分布式和微服务有什么区别(java不适合微服务吗)

java分布式和微服务有什么区别(java不适合微服务吗)

一、微服务简介1. 微服务的诞生微服务是基于分而治之的思想演化出来的。过去传统的一个大型而又全面的系统,随着互联网的发展...

2022-10-28 05:53:48查看全文 >>

什么是分布式系统(分布式系统行业痛点)

什么是分布式系统(分布式系统行业痛点)

现在的架构很多,各种各样的,如高并发架构、异地多活架构、容器化架构、微服务架构、高可用架构、弹性化架构等,还有和这些架构...

2022-10-28 06:01:07查看全文 >>

微服务和分布式架构图解(微服务架构图谱大全)

微服务和分布式架构图解(微服务架构图谱大全)

微服务是一种架构,也是在分布式范畴之内的。多微才叫微?在分布式系统中,微服务更加强调单一职责、轻量级通信(HTTP)、独...

2022-10-28 06:17:01查看全文 >>

分布式系统和微服务(微服务与分布式服务对比)

分布式系统和微服务(微服务与分布式服务对比)

原文地址:https://www.yinxiang.com/everhub/note/1f39cf3a-4799-4d6...

2022-10-28 06:38:05查看全文 >>

微服务与分布式区别(微服务与分布式的优势)

微服务与分布式区别(微服务与分布式的优势)

分布式架构是分布式计算技术的应用和工具,目前成熟的技术包括J2EE, CORBA和.NET(DCOM),这些技术牵扯的内...

2022-10-28 05:59:47查看全文 >>

分布式事务一致性解决方案(springcloud分布式事务)

分布式事务一致性解决方案(springcloud分布式事务)

事务想必大家并不陌生,比如经常被人提起的ACID,但是为了后续的分布式事务的内容,我们先来聊聊 ACID,然后再介绍下什...

2022-10-28 06:21:22查看全文 >>

分布式微服务架构详解(各种微服务架构图解)

分布式微服务架构详解(各种微服务架构图解)

在分布式架构中,网络通信是底层基础,没有网络,也就没有所谓的分布式架构。只有通过网络才能使得一大片机器互相协作,共同完成...

2022-10-28 06:26:25查看全文 >>

分布式和微服务项目(微服务分布式方案)

分布式和微服务项目(微服务分布式方案)

微服务架构的演变微服务架构的技术体系、社区目前已经越来越成熟。在最初系统架构的搭建,或者当现有架构已到达瓶颈需要进行架构...

2022-10-28 06:21:12查看全文 >>

分布式微服务架构的优缺点(微服务架构缺点)

分布式微服务架构的优缺点(微服务架构缺点)

【51CTO.com原创稿件】伴随着业务的快速的发展、越来越高的业务复杂度,几乎每个公司的系统都会从单体走向分布式,特别...

2022-10-28 06:13:15查看全文 >>

文档排行