微服务测试 Dubbo 接口测试
微服务测试 Dubbo 接口测试
URL:https://blog.csdn.net/qq_35759632/article/details/80832932
微服务测试 ----Dubbo 接口测试
微服务架构成了当下的技术热点,实现微服务是要付出很大成本的,但也许是因为微服务的优点太过于吸引人,以至于大部分开发者都将它当成未来的发展趋势。
微服务架构的演进过程
dubbo的用户手册中介绍了服务化架构的进化过程,如下图:
图一、服务化架构的演进过程
- orm – Object Relational Mapping单一应用架构
一个高内聚版本,所有功能部署在一起。数据访问框架(orm)成为关键。这个架构很少被人使用,几乎接近灭绝了吧。
优点:成本低,适合功能少又简单 缺点:很多,比如无法适应高流量,二次开发难,部署成本高
- mvc架构 Model View Controller- 垂直应用架构
当访问量渐渐增大,慢慢演化成用的很多的mvc架构。虽然还是所有的功能都是部署在同一个进程中,但是可以通过双机或者前置负载均衡来实现负载分流。这样应用也可以拆分成不同的几个应用,以提升性能和效率。
此时,mvc架构用于分离前后端逻辑。一方面,有一定的模块化。另一方面,加速和方便了开发。
- rpc架构 - Remote Procedure Call 分布式服务架构
当mvc垂直应用分成不同应用时,越来越多的情况下。不可避免的事应用a 与应用b之间的交互。此时将核心和公共的 业务功能抽出来,作为单独的服
务,并实现前后端逻辑分离。
此时则就需要提高业务的复用及整合的分布式rpc框架,例如dubbo等。
- soa架构 - service-oriented architecture 流动计算架构
当rpc架构中的服务越来越多时,服务的生命周期的管控,容量的评估等各种问题会出现,使服务化成为瓶颈。需要增加一个调度中心来进行对服务管
控,监督等。
- 微服务架构
在soa的基础上,人们又提出了微服务架构,它就是将功能分散到各个离散的服务中然后实现对方案的解耦。服务更原子,自治更小,然后高密度部署服务。
Dubbo 是一个分布式服务框架,致力于提供高性能和透明化的 RPC 远程服务调用方案,以及 SOA 服务治理方案。简单的说,Dubbo 就是个服务框架,说白了就是个远程服务调用的分布式框架。
模块注解:
Provider: 暴露服务的服务提供方。Consumer: 调用远程服务的服务消费方。Registry: 服务注册与发现的注册中心。
Monitor: 统计服务的调用次调和调用时间的监控中心。
Container: 服务运行容器。流程详解:
0 服务容器负责启动,加载,运行服务提供者(Standalone 容器)。
1 服务提供者在启动时,向注册中心注册自己提供的服务
(Zookeeper/Redis)。
2 服务消费者在启动时,向注册中心订阅自己所需的服务。
3 注册中心返回服务提供者地址列表给消费者,如果有变更,注册中心将基于长连接推送变更数据给消费者。
4 服务消费者,从提供者地址列表中,基于软负载均衡算法,选一台提供者进行调用,如果调用失败,再选另一台调用。
5 服务消费者和提供者,在内存中累计调用次数和调用时间,定时每分钟发送一次统计数据到监控中心(根据数据可以动态调整权重)。
什么是Zookeeper,为什么我们要使用Zookeeper
Zookeeper是Googel的的一个开源实现,是Hadoop的分布式协调服务,它包好了一个简单的原语,分布式应用程序可以基于它实现同步服务,配置维护和命名服务等。
- 大部分的分布式应用程序都需要一个主控、协调器或者控制器来物理分布的子进程(如资源, 内存分配等)
- 目前大部分应用开发私有的协调程序,缺乏一个通用性
- 协调程序的反复编写浪费,难以形成通用、伸缩性好的协调器
- ZooKeeper:提供通用的分布式锁服务,用以协调分布式应用
telnet 打开命令:
方法/步骤:
1,首先是找到系统的控制面板,并打开控制面板的界面。鼠标右键点击左下角系统徽标,弹出上拉菜单,点击控制面板;
2,在控制面板弹出界面,控制面板 所有控制面板项,点击【程序和功能】
选项;
3,进入到【程序和功能】面板,在右侧可以找到【启动或关闭Windows功能】,并点击;
4,在打开启动或关闭Windows功能面板的过程中,需要等待一会;