365bet官网手机版下载,您可以在一篇文章中找到有关微服务测试的所有信息

Home / 365bet注册在线 / 365bet官网手机版下载,您可以在一篇文章中找到有关微服务测试的所有信息

近年来,微服务架构变得越来越流行,并逐渐被公司所采用。当软件体系结构更改时,需要对相应的软件测试策略进行哪些调整?在这里,我将首先讨论微服务和SpringCloud(微服务的主流框架)的相关概念,以便每个人都对微服务有透彻的了解,然后概述如何进行微服务测试。我相信,仔细阅读本文后,服务微服务将有0到1的突破!
微服务概念
微服务的英文名称为Microservice。微服务架构的模式是将整个Web应用程序组织为一系列小型Web服务。这些小型Web服务可以独立编译和部署,并通过其公开的API相互通信。它们共同为用户提供服务,但是总体上可以彼此独立地扩展提供的功能。
重要事项
微服务的基本思想是为业务域组件构建应用程序。
微服务的主要框架包括:Dubbo,SpringCloud,Istio;
当涉及到互联网的微服务架构时,它绝对是关于开发的,即开发,测试,部署,操作和维护的集成。
微服务简化了开发,并将将复杂的系统构建成数十个甚至数百个小型服务的任务,这些小服务易于由一小组软件工程师理解和修改,但是微服务实际上并没有复杂性,但是消除了转移到虚拟机上的复杂性。连接,管理和监视大量服务。
微服务和SOA,微服务是SOA开发的产物,它是一种相对现代且细粒度的SOA实现。
传统服务和微服务之间的区别
如您所见,传统服务的所有功能都在一台计算机上提供(请参见左上图),并且可以通过增加服务器数量来扩展容量!微服务作为一个业务单位提供,不同的服务在不同的服务器上提供,如果频繁使用商店,则可以使用更多资源进行调配(上图右侧有5个橙色调配的单元,而Mei仅使用一个红色的单位,因此可以更明智地使用资源!
数据库中传统设计与微服务设计之间的区别
您可以看到传统服务的所有功能都对应一个数据库(在上图的左侧),而微服务可以为不同公司设计不同的数据库(在上图的右侧,一个公司可以对应一个独立的数据库)。
微服务架构设计的核心
1:我们根据业务将整个系统分为多个子系统。
2:每个子系统可以为多个应用程序提供服务,并且在多个应用程序之间使用负载平衡。
3:需要服务注册,所有服务都在注册表中注册,并且通过对注册表中注册的服务使用某些策略也可以实现负载平衡。
4:所有客户端通过相同的网关地址访问后台服务,通过路由配置,网关确定哪个服务将处理URL请求,并且将请求路由到服务时也使用负载均衡。
5:有时服务需要互相访问,例如有一个用户模块,当其他服务处理业务时,它们必须从用户服务获取用户数据。
6:断路器需要在及时调用服务时处理超时和错误,以防止由于其中一项服务出现问题而使整个系统瘫痪。
7:还需要监视功能来监视每个服务呼叫等中花费的时间。
SpringCloudSpringCloud是基于SpringBoot实现微服务的一组框架,它提供配置管理,服务发现,断路器,智能路由,微代理,控制总线,全局锁定,决策活动,分布式会话管理以及微服务开发所需的集群状态。
官方网站:https://springcloud.cc/
特征:
分布式/版本化配置
服务注册和识别
路由
服务到服务的呼叫
负载分担
断路器
分布式消息传递
SpringCloud的主要组件是:
SpringCloud项目的POM配置文件如下:您可以像在SpringCloud中一样理解它。
您只需要将项目的pom.xml中需要哪个函数直接导入到项目中由于我们在这里主要介绍微服务的概念,因此我们不会对springcloud的开发内容进行过多的解释。
微服务测试
前端用户界面
与常规测试没有什么不同,因为您只执行功能,以致无法感觉到体系结构的变化!
服务器
微服务通常通过REST over HTTP公开,因此测试微服务等同于测试接口。在微服务提供的接口上执行功能,性能和安全性测试。具体测试方法如下:
1.通过创建可以通过编码或工具仿真完成的请求来调用每个微服务接口。
编码:Python(unittest + urllib2); Java(junit4 + httpclient)
工具模拟:jMeter,oupUI,邮递员等
2.需求检查:除了检查接口的返回值之外,还必须注意负载平衡(需求是否已分发到多点应用程序)。
3.监视:使用工具SpringCloudSleuth,Turbine,Prometheus进行监视
4.协议:通过ELK(ElasticStack)集中管理协议
重点:
微服务架构必须确保每个服务中每个模块的完整性,并且还必须注意模块和服务之间的交互。
困难
1.相关性:微服务通常与多个微服务交互。当一项服务更改时,它将直接影响其他从属服务。
2.可靠性:为了最小化微服务之间的通信对网络状况的高度依赖并减少由网络不稳定引起的故障率,在设计微服务架构时设计了隔离机制。
3.数据一致性:微服务基于分布式系统,因此必须考虑分布式系统中的数据一致性问题。创意不容易,如果本文对您有帮助,请随时转发并让更多朋友受益!