《微服务系统期末测试.docx》由会员分享,可在线阅读,更多相关《微服务系统期末测试.docx(5页珍藏版)》请在优知文库上搜索。
1、1 .微服务系统架构的优点和缺点有哪些?优点:复杂度可控、功能特定、易于扩展、易于容错、技术选型灵活、可独立部署缺点:开发人员必须处理创建分布式系统的复杂性部署的复杂性增加内存消耗2 .传统单体应用架构的优点和缺点有哪些?优点:易于开发与调试,易于部署缺点:应用复杂度增加,更新、维护困难。易造成系统资源浪费、影响开发效率、应用可靠性低、不利于技术的更新3 .什么是微服务?什么是微服务架构?、微服务是一种用于构建应用的架构方案。其中每个功能都被称为一项服务,每个服务都维护着自身的数据存储、业务开发、自动化测试案例,服务与服务间采用轻量级的通信机制互相沟通。每个服务都围绕着具体业务进行构建,并且能
2、够独立的部署到生产环境。微服务架构是一种架构风格和架构思想,它倡导我们在传统软件应用架构的基础上,将系统业务按照功能拆分为更加细粒度的服务,所拆分的每一个服务都是一个独立的应用,这些应用对外提供公共的API,可以独立承担对外服务的职责,通过此种思想方式所开发的软件服务实体就是微服务),而围绕着微服务思想构建的一系列体系结构(包括开发、测试、部署等),我们可以将它称之为“微服务架构二4、SPingBoOt框架设计的目的是什么?有哪些优点?目的:为了简化SPring应用的初始搭建过程和开发过程。优点:可快速构建独立的SPring应用程序内嵌Servlet容器,无需单独安装容器即可独立运行项目对主流
3、开发框架的无配置集成提供开箱即用的SPring插件,简化了MaVen、Gradle的配置自动配置SPring,极大地提高了开发、部署效率无需任何XML配置5、写出下列注解的作用SPringBOOtCOnfigUratiOn、EnabIeAUtOCOnfigUratiOn和COmPOnentSCan,SpringBootAppIication.SPringBoOtCOnfigUratiOn:该注解与Configuration的作用相同,它表示其标注的类是IoC容器的配置类。EnabIeAUtoCOnfigUratiOn:用于将所有符合自动配置的Bean加裁到当前SoringBoot创建并使用的I
4、oC容器中。COmPOnentSCan:用于自动扫描和加载符合条件的组件或Bean,并将Bean加载到IOC容器中。SPringBOOtAPPliCatiOn:是SpringBoot的核心注解,并且是一个复合注解。6、请特下面ymi格式的配置文件转换为ProPertieS格式的配置文件server:port:8900eureka:cIient:service-urI:defauItzone:http:IOCaIhost:8900/eureka/Service,port=8900Eureka,client,service-url.defauItZone=http:loCalhOSt:8900/e
5、ureka/7、列出SpringBoot与MyBatiS集成开发Web应用程序的8个步骤。准备数据库环境、创建项目,添加依赖、编写配置文件、创建实体类、编写MaPPer、编写SerViCe、编写ContrOller、实现前端页面8、SpringBoot的核心注解是哪个?它主要由哪3个注解组成的?核心注解:SpringBootApp1ication组成:SpringBootConfiguration、Enab1eAutoConfiguration、ComponentScan9、请对ymI格式文件进行简要介绍,并与PrOPertieS文件对比说明注意事项。Yml是JSON的一个超集,可以非常方便地
6、将外部配置以层次结构形式存储起来,yml文件是一个树状结构的配置.(1)在properties文件中是以”进行分割的,在yml中是用“:”进行分割的。(2) yml的数据格式都是KT格式,并且通过“:”进行赋值。(3)每个k的冒号后面一定都要加一个空格,否则文件会报错。10、SpringClOUd框架有哪些特点?最大的特点是什么?最大特点:它的集成性,它将很多开源产品都集成到自身的框架中,使其越来越强大。特点:使用方便、功能齐全、易于扩展和维护、适用于各种环境11画图说明EUreka的服务发现机制。Eureka的服务发现包含两大组件:服务端发现组件(FurekaCerver)和客户端发现组件(
7、EUrekaClient)。服务端发现组件也被称之为服务注册中心、主要提供了服务的注册功能;而客户端发现组件主要用于处理服务的注册与发现。12、画图说明SPringCloudHyStriX断路器的状态转换机制。断路器的开关由关闭到打开的状态是通过当前服务健康状况(服务的健康状况二请求失败数/请求总数)和设定阈值(默认为10秒内的20次故障)比较决定的。当断路器开关关闭时,请求被允许通过断路器,如果当前健康状况高于设定阈值,开关继续保持关闭;如果当前健康状况低于设定阈值,开关则切换为打开状态。当断路器开关打开时,请求被禁止通过;如果设置了fallback方法,则会进入fallback的流程。当断
8、路器开关处于打开状态,经过一段时间后,断路器会自动进入半开状态,这时断路器只允许一个请求通过;当该请求调用成功时,系路器恢复到关闭状态;若该请求失败,断路器继续保持打开状态,接下来的请求会被禁止通过;13、简述在SpringCloud技术架构中不使用API网关存在什么问题?使用API网有什么好处?问题:增加开发和维护成本、微服务重构困难、微服务协议限制好处:(1)封装了应用的内部结构,与调用指定的服务相比,客户端直接与Gateway交互会更简单。(2)供给每一个客户端一个特定APl,这样减少了期客户端与服务器端的通信次数,也简化了客户端代码。(3)可以在Web协议与内部用的非Web协议间进行转
9、换。14、在SPringClOUd中为了解决什么问题引入了SPringCloudCOnfig组件?为了便于集中配置的统一管理避免因集成不同开发软件造成的版本依赖冲突等问题15、简述什么是SPringCloud?SpringCloud是在SpringBoot的基础上构建的,用于简化分布式系统构建的工具集。该工具集为微服务架构中所涉及的配置管理、服务发现、智能路由、断路器、微代理和控制总线等操作提供了一种简单的开发方式。16、什么是DOCker?引入DOCker技术主要是为了解决什么问题?Docker是一个开源的应用容器引擎,它基于go语言开发,并遵从Apache2.0开源协议。使用Docker可
10、以让开发者封装他们的应用以及依赖包到一个可移植的容器中,然后发布到任意的LinUX机器上,也可以实现虚拟化。DOCker容器完全使用沙箱机制,相互之间不会有任何接口,这保证了容器之间的安全性。17、什么是DOCker镜像?什么是容器?以及他们之间的关系是什么Image:DoCkCr镜像就是一个只读的模板,包含了一些创建DOCkCr容器的操作指令。ContainersiDocker容器属于镜像的一个可运行实例(镜像与容器的关系其实与Java中的类与对象类以),开发者可以通过API接口或者CLI命今行接口来创建、运行、停止、移动、删除一个容器,也可以将一个容器连接到一个或多个网络中,将数据存储与容
11、器进行关联。18、请对dockerbuild-thellodocker.指令进行分别说明。dockerbuild是DoCker构建镜像的指令,-t参数指定了生成的镜像名称为hellodocker,指令最后的点代表的是当前目录下的应用上下文19请对dockerrun-d-p8000:80nameheIIowordheIIodocker指令进行分别说明。dockerrun:表示创建并启动一个容器后面的hellodocker就表示要启动运行的镜像名称。-亡表示容器启动时在后台运行。-P5000:80:表示将容器内暴露的80端口映射到宿主机指定的5000端口一nametest,表示为创建后的容器指定名
12、称为heIlowrd20、Docker的主要特点。更快速的交付和部署、更高效的虚拟化、更轻松的迁移和扩展、更简单的管理21V列出Dockernetwork常用指令并说明其作用。(1)查看docker中的网络dockernetworkIs(2)创建并启动容备dockerrun-itd-name=networktestubuntu(3)使用网络查看指令查看网络详情dockernetworkinspectbridge(4)创建网络dockernetworkcreatedriverbridgeisolated_nw(5)启动一个容器dockerrun-network=isolatednw-itd-name=nwtestbusybox22、列出DockerVOIUme常用指令并说明其作用。.(1)创建数据卷在dockervolumecreatemy-vol(2)查看数据卷使用dockervolumeIs(3)核查数据卷使用dockervolumeinspectmy-vol(4)删除数据卷dockervolumermmy-vol