SpringCloud基本技术点介绍
SpringCloud
学习微服务架构必须有三年以上的开发的经验:
微服务概念
把一个大型的单体应用拆分为数十个支持微服务,他可扩展单个组件而不是整个的应用程序堆栈,从而满足服务等级协议
定义:围绕业务领域组件进行创建组件,这些应用可独立进行开发,管理迭代,在分散的组件中使用云架构和平台式部署,管理,和服务功能,使得产品交互更加的简单
本质:是用一些功能比较明确的,业务精练的服务去解决更大的更实际的问题,(2012年为微服务元年)
微服务架构:
微服务架构是一种架构概念,旨在通过将功能分解到各个离散的服务中以实现对解决方案的解耦。 它的主要作用是将功能分解到离散的各个服务当中,从而降低系统的耦合性,并提供更加灵活的服务支持。
缺点
1.微服务的另一个挑战是分区数据库架构。更新多个业务实体的业务事务是相当普遍的。这些事务在单体应用中的实现显得微不足道,因为单体只存在一个单独的数据库。在基于微服务的应用程序中,您需要更新不同服务所用的数据库。通常不会选择分布式事务,不仅仅是因为 CAP 定理。他们根本不支持如今高度可扩展的 NoSQL 数据库和消息代理。2.部署复杂3.测试微服务应用程序也很复杂4.微服务架构模式的另一个主要挑战是实现了跨越多服务变更5.每个服务都有多个运行时实例。还有更多的移动部件需要配置、部署、扩展和监控构建复杂的微服务应用程序本质上是困难的。单体架构模式只适用于简单、轻量级的应用程序,如果您使用它来构建复杂应用,您最终会陷入痛苦的境地。微服务架构模式是复杂、持续发展应用的一个更好的选择。尽管它存在着缺点和实现挑战微服务的数据的库的设置:是反范式的设计模式:根据情况来设计不同的数据库
优点
- 1.第一,它解决了复杂问题。它把可能会变得庞大的单体应用程序分解成一套服务。虽然功能数量不变,但是应用程序已经被分解成可管理的块或者服务。
- 2.这种架构使得每个服务都可以由一个团队独立专注开发。开发者可以自由选择任何符合服务 API 契约的技术。
- 3.微服务架构模式可以实现每个微服务独立部署。开发人员根本不需要去协调部署本地变更到服务。这些变更一经测试即可立即部署
- 4.微服务架构模式使得每个服务能够独立扩展。您可以仅部署满足每个服务的容量和可用性约束的实例数目。此外,您可以使用与服务资源要求最匹配的硬件。目标在于充分分解应用程序以方便应用的敏捷开发和部署,
CAP定理:
一个分布式系统最多只能同时满足一致性(Consistency)、可用性(Availability)和分区容错性(Partition tolerance)这三项中的两项。C:即更新操作成功并返回客户端完成后,所有节点在同一时间的数据完全一致。A:即服务一直可用,而且是正常响应时间P:即分布式系统在遇到某节点或网络分区故障的时候,仍然能够对外提供满足一致性和可用性的服务
CAP权衡:
C 必须保证。网络发生故障宁可停止服务,这是保证 CA,舍弃 P。貌似这几年国内银行业发生了不下 10 起事故,但影响面不大,报到也不多,广大群众知道的少。还有一种是保证 CP,舍弃 A。例如网络故障是只读不写。孰优孰略,没有定论,只能根据场景定夺,适合的才是最好的
BASE理论:
ebay架构师在 ACM 上发表文章提出 BASE 理论,BASE 理论是对 CAP 理论的延伸,核心思想是即使无法做到强一致性(Strong Consistency,CAP 的一致性就是强一致性),但应用可以采用适合的方式达到最终一致性(Eventual Consitency)。
服务间的通信
同步调用:网路间只有字符串可以通过穿透防火墙
Rest:(对外)HttP通信 Rest API String json=/usr/list;User usr=new User();usr.setId(json.getId)使用框架:springboot+Spring Cloud;RPC:(对内) 远程过程调用调用也是对内部的,同样需要new出的,但是不是直接new User()的,而是new 的另一个框架:Dubbo问题:就会出现阻塞,出现单点故障,RPC 也有自己的优点,传输协议更高效,安全更可控,特别在一个公司内部,如果有统一个的开发规范和统一的服务框架时,他的开发效率优势更明显些。就看各自的技术积累实际条件,自己的选择了
异步消息调用:
异步消息的方式在分布式系统中有特别广泛的应用,他既能减低调用服务之间的耦合,又能成为调用之间的缓冲,确保消息积压不会冲垮被调用方,同时能保证调用方的服务体验,继续干自己该干的活,不至于被后台性能拖慢。不过需要付出的代价是一致性的减弱,需要接受数据 最终一致性;还有就是后台服务一般要实现 幂等性,因为消息送出于性能的考虑一般会有重复(保证消息的被收到且仅收到一次对性能是很大的考验);最后就是必须引入一个独立的 BrokerKafkaNotifyMessageQueue
服务间是如何发现的呢:
在微服务架构中,一般每一个服务都是有多个拷贝,来做负载均衡。一个服务随时可能下线,也可能应对临时访问压力增加新的服务节点。服务之间如何相互感知?服务如何管理?这就是服务发现的问题了。一般有两类做法,也各有优缺点。基本都是通过 Zookeeper 等类似技术做服务注册信息的分布式管理。当服务上线时,服务提供者将自己的服务信息注册到 ZK(或类似框架),并通过心跳维持长链接,实时更新链接信息。服务调用者通过 ZK 寻址,根据可定制算法,找到一个服务,还可以将服务信息缓存在本地以提高性能。当服务下线时,ZK 会发通知给服务客户端
基于客户端的服务注册与发现
优点是架构简单,扩展灵活,只对服务注册器依赖。缺点是客户端要维护所有调用服务的地址,有技术难度,一般大公司都有成熟的内部框架支持,比如 Dubbo。每次需要调用服务时需要在zookeeper中注册发现中查询,前提是每一个服务新建时需要在这个注册中心,进行ip注册和端口,服务名称。
基于服务端的服务注册与发现:
优点是简单,所有服务对于前台调用方透明,一般在小公司在云服务上部署的应用采用的比较多。主要有这几个框架:Eureka:Consul:Zookeeper:如果服务挂了如何解决呢:重试机制:即当没响应时他会自己再次发送请求,限流:秒杀机制,直接在客户端中让百分之90的人不能直接访问到服务,而是直接提示出,熔断机制:在服务端进行流量的控制负载均衡:降级(本地缓存)
服务注册与发现原理:
单点故障:
在分不式锁服务中,有一种典型的应用场景,通过集群对Master进行选举,即主节点不能使用的话,既不能为从节点提供服务。传统的解决方案:主节点-------》备用主节点备用主节点------》》从节点 《《--------主节点 这种方式网络突然有问题时会进行对回复时就会丢失包,而这样的情况就是就会把两个主节点都是在这里主要使用zookeeper来解决这个问题,服务注册与发现引入:为什么使用分布式锁:
微服务架构的设计模式:
微服务架构需要考虑的问题:
- API Gateway
- 服务间调用
- 服务发现
- 服务容错
- 服务部署
- 数据调用
模式:
聚合器微服务形式::由api网关进行对其聚合代理微服务设计模式:代理委派请求链式微服务设计模式:链式同步调用,分支微服务设计模式:同时允许两个微服务链,数据共享微服务设计模式:SQL数据库反规范化可能会导致数据重复和不一致。异步消息传递微服务设计模式:使用消息队列
微服务架构开发建议:
应用程序的核心是业务逻辑,按照业务或客户需求组织资源(这是最难的)做有生命的产品,而不是项目全栈化后台服务贯彻 Single Responsibility Principle(单一职责原则)VM -> DockerDevOpsspringCloud 基于springboot的技术技术框架;java原生云开发=springCloud+spring boot
springCloud Netflix:
目前最流行的微服务架构解决方案是:springBoot+spring cloud Netflix
Spring Cloud 为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智能路由,微代理,控制总线)。分布式系统的协调导致了样板模式, 使用 Spring Cloud 开发人员可以快速地支持实现这些模式的服务和应用程序。他们将在任何分布式环境中运行良好,包括开发人员自己的笔记本电脑,裸机数据中心,以及 Cloud Foundry 等托管平台。
Spring Cloud 是基于Spring Boot进行开发,并且都是使用 Maven 做项目管理工具。
创建一个依赖管理项目:
<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>2.0.2.RELEASE</version></parent><groupId>com.funtl</groupId><artifactId>hello-spring-cloud-dependencies</artifactId><version>1.0.0-SNAPSHOT</version><packaging>pom</packaging><name>hello-spring-cloud-dependencies</name><url>http://www.funtl.com</url><inceptionYear>2018-Now</inceptionYear><properties><!-- Environment Settings --><java.version>1.8</java.version><project.build.sourceEncoding>UTF-8</project.build.sourceEncoding><project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding><!-- Spring Settings --><spring-cloud.version>Finchley.RC1</spring-cloud.version></properties><dependencyManagement><dependencies><dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-dependencies</artifactId><version>${spring-cloud.version}</version><type>pom</type><scope>import</scope></dependency></dependencies></dependencyManagement><build><plugins><!-- Compiler 插件, 设定 JDK 版本 --><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-compiler-plugin</artifactId><configuration><showWarnings>true</showWarnings></configuration></plugin><!-- 打包 jar 文件时,配置 manifest 文件,加入 lib 包的 jar 依赖 --><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-jar-plugin</artifactId><configuration><archive><addMavenDescriptor>false</addMavenDescriptor></archive></configuration><executions><execution><configuration><archive><manifest><!-- Add directory entries --><addDefaultImplementationEntries>true</addDefaultImplementationEntries><addDefaultSpecificationEntries>true</addDefaultSpecificationEntries><addClasspath>true</addClasspath></manifest></archive></configuration></execution></executions></plugin><!-- resource --><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-resources-plugin</artifactId></plugin><!-- install --><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-install-plugin</artifactId></plugin><!-- clean --><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-clean-plugin</artifactId></plugin><!-- ant --><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-antrun-plugin</artifactId></plugin><!-- dependency --><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-dependency-plugin</artifactId></plugin></plugins><pluginManagement><plugins><!-- Java Document Generate --><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-javadoc-plugin</artifactId><executions><execution><phase>prepare-package</phase><goals><goal>jar</goal></goals></execution></executions></plugin><!-- YUI Compressor (CSS/JS压缩) --><plugin><groupId>net.alchim31.maven</groupId><artifactId>yuicompressor-maven-plugin</artifactId><version>1.5.1</version><executions><execution><phase>prepare-package</phase><goals><goal>compress</goal></goals></execution></executions><configuration><encoding>UTF-8</encoding><jswarn>false</jswarn><nosuffix>true</nosuffix><linebreakpos>30000</linebreakpos><force>true</force><includes><include>/*.js</include><include>/.css</include></includes><excludes><exclude>**/.min.js</exclude><exclude>*/.min.css</exclude></excludes></configuration></plugin></plugins></pluginManagement><!-- 资源文件配置 --><resources><resource><directory>src/main/java</directory><excludes><exclude>*/.java</exclude></excludes></resource><resource><directory>src/main/resources</directory></resource></resources></build><repositories><repository><id>aliyun-repos</id><name>Aliyun Repository</name><url>http://maven.aliyun.com/nexus/content/groups/public</url><releases><enabled>true</enabled></releases><snapshots><enabled>false</enabled></snapshots></repository><repository><id>sonatype-repos</id><name>Sonatype Repository</name><url>https://oss.sonatype.org/content/groups/public</url><releases><enabled>true</enabled></releases><snapshots><enabled>false</enabled></snapshots></repository><repository><id>sonatype-repos-s</id><name>Sonatype Repository</name><url>https://oss.sonatype.org/content/repositories/snapshots</url><releases><enabled>false</enabled></releases><snapshots><enabled>true</enabled></snapshots></repository><repository><id>spring-snapshots</id><name>Spring Snapshots</name><url>https://repo.spring.io/snapshot</url><snapshots><enabled>true</enabled></snapshots></repository><repository><id>spring-milestones</id><name>Spring Milestones</name><url>https://repo.spring.io/milestone</url><snapshots><enabled>false</enabled></snapshots></repository></repositories><pluginRepositories><pluginRepository><id>aliyun-repos</id><name>Aliyun Repository</name><url>http://maven.aliyun.com/nexus/content/groups/public</url><releases><enabled>true</enabled></releases><snapshots><enabled>false</enabled></snapshots></pluginRepository></pluginRepositories></project>
创建服务注册与发现:
- 用的是Eureak是一个服务注册和发现模块(与zookeeper的作用是一样的)
- 引入配置文件pom.xml
- 启动一个服务注册中心:需要注解@EnableEureakaServcer
- 配置application.yml文件:每一个实例注册之后需要向注册中心发送心跳(因此可以在内存中完成),在默认情况下 Erureka Server 也是一个 Eureka Client ,必须要指定一个 Server。
- 通过服务可以打开浏览器进行访问http://localhost:8761
创建服务提供者:
当 Client 向 Server 注册时,它会提供一些元数据,例如主机和端口,URL,主页等。Eureka Server 从每个 Client 实例接收心跳消息。 如果心跳超时,则通常将该实例从注册 Server 中删除
引入pom.xm文件:
application中的yml
spring:application:name: hello-spring-cloud-service-adminserver:port: 8762eureka:client:serviceUrl:defaultZone: http://localhost:8761/eureka/
创建服务消费者Ribbon:
pom.xml:<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><parent><groupId>com.funtl</groupId><artifactId>hello-spring-cloud-dependencies</artifactId><version>1.0.0-SNAPSHOT</version><relativePath>../hello-spring-cloud-dependencies/pom.xml</relativePath></parent><artifactId>hello-spring-cloud-web-admin-ribbon</artifactId><packaging>jar</packaging><name>hello-spring-cloud-web-admin-ribbon</name><url>http://www.funtl.com</url><inceptionYear>2018-Now</inceptionYear><dependencies><!-- Spring Boot Begin --><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-tomcat</artifactId></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-thymeleaf</artifactId></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-actuator</artifactId></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-test</artifactId><scope>test</scope></dependency><!-- Spring Boot End --><!-- Spring Cloud Begin --><dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-netflix-eureka-server</artifactId></dependency><dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-netflix-ribbon</artifactId></dependency><!-- Spring Cloud End --><!-- 解决 thymeleaf 模板引擎一定要执行严格的 html5 格式校验问题 --><dependency><groupId>net.sourceforge.nekohtml</groupId><artifactId>nekohtml</artifactId></dependency></dependencies><build><plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId><configuration><mainClass>com.funtl.hello.spring.cloud.web.admin.ribbon.WebAdminRibbonApplication</mainClass></configuration></plugin></plugins></build></project>
在application.yml中书写配置文件:
spring:application:name: hello-spring-cloud-service-adminserver:port: 8763eureka:client:serviceUrl:defaultZone: http://localhost:8761/eureka/创建服务feign:feign是集成了ribbon的一个服务消费者:项目中使用用Feign可以理解为将ribbon峰会在哪个了一次
熔断器防止服务雪崩:
在微服务架构中,根据业务来拆分成一个个的服务,服务与服务之间可以通过 RPC 相互调用,在 Spring Cloud 中可以用 RestTemplate + Ribbon 和 Feign 来调用。为了保证其高可用,单个服务通常会集群部署。
由于网络原因或者自身的原因,服务并不能保证 100% 可用,如果单个服务出现问题,调用这个服务就会出现线程阻塞,此时若有大量的请求涌入,Servlet 容器的线程资源会被消耗完毕,导致服务瘫痪。服务与服务之间的依赖性,故障会传播,会对整个微服务系统造成灾难性的严重后果,这就是服务故障的 “雪崩” 效应。
1.在feign中使用:
Feign中自带熔断器:feign:hystrix:enabled: trueservice中指定fallback的类:@FeignClient(value = "hello-spring-cloud-service-admin", fallback = AdminServiceHystrix.class)public interface AdminService {@RequestMapping(value = "hi", method = RequestMethod.GET)public String sayHi(@RequestParam(value = "message") String message);}创建这个借口的实现类:@Componentpublic class AdminServiceHystrix implements AdminService {@Overridepublic String sayHi(String message) {return "Hi,your message is :"" + message + "" but request error.";}}
2.在ribbon中使用:
pom.xml中加入:<dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-netflix-hystrix</artifactId></dependency>主函数中加入注解@EnableHystrix在service中使用:@HystrixCommand(fallbackMethod = "hiError")public String sayHi(String message) {return restTemplate.getForObject("http://HELLO-SPRING-CLOUD-SERVICE-ADMIN/hi?message=" + message, String.class);}public String hiError(String message) {return "Hi,your message is :"" + message + "" but request error.";}
使用熔断仪器监控hystrix:
pom.xml中加入:<dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-netflix-hystrix-dashboard</artifactId></dependency>
application中加入注解:@EnableHystrixDashboard创建配置文件:增加HystrixMetricsStreamServlet 的配置@Configurationpublic class HystrixDashboardConfiguration {@Beanpublic ServletRegistrationBean getServlet() {HystrixMetricsStreamServlet streamServlet = new HystrixMetricsStreamServlet();ServletRegistrationBean registrationBean = new ServletRegistrationBean(streamServlet);registrationBean.setLoadOnStartup(1);registrationBean.addUrlMappings("/hystrix.stream");registrationBean.setName("HystrixMetricsStreamServlet");return registrationBean;}}测试熔断localhost:8764/hystrix
hystrix触发fallback的方法:、
timeout,SHORT_CIRCUITED:断路器打开不尝试执行,THREAD_POOL_REJECTED:线程池拒绝,不尝试执行,SEMAPHORE_REJECTED 信号量拒绝,不尝试执行 YES
使用统一的网关访问接口zuul:
在 Spring Cloud 微服务系统中,一种常见的负载均衡方式是,客户端的请求首先经过负载均衡(Zuul、Ngnix),再到达服务网关(Zuul 集群),然后再到具体的服。 服务统一注册到高可用的服务注册中心集群,服务的所有的配置文件由配置服务管理,配置服务的配置文件放在 GIT 仓库,方便开发人员随时改配置
zuul:
Zuul 的主要功能是路由转发和过滤器。路由功能是微服务的一部分,比如 /api/user 转发到到 User 服务,/api/shop 转发到到 Shop 服务。Zuul 默认和 Ribbon 结合实现了负载均衡的功能。
pom.xml中加入:
<dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-netflix-zuul</artifactId></dependency>
application.yml中书写配置文件:
spring:application:name: hello-spring-cloud-zuulserver:port: 8769eureka:client:serviceUrl:defaultZone: http://localhost:8761/eureka/##以/api/a/请求全部转发到ribbon服务中,以/api/b/全部转发到feign服务##zuul:routes:api-a:path: /api/a/**serviceId: hello-spring-cloud-web-admin-ribbonapi-b:path: /api/b/**serviceId: hello-spring-cloud-web-admin-feign创建回调的类:主要是创建对对其出现错误后的回调机制:
主函数:
@SpringBootApplication@EnableEurekaClient@EnableZuulProxypublic class ZuulApplication {public static void main(String[] args) {SpringApplication.run(ZuulApplication.class, args);}} 其实就是聚合其他的服务:以上聚合了ribbon和feign两个服务。
分布式配置中心:
有分布式配置中心组件 Spring Cloud Config ,它支持配置服务放在配置服务的内存中(即本地),也支持放在远程 Git 仓库中。在 Spring Cloud Config 组件中,分两个角色,一是 Config Server,二是 Config Client。
分布式配置中心服务端:
pom.xml中加入:
<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><parent><groupId>com.funtl</groupId><artifactId>hello-spring-cloud-dependencies</artifactId><version>1.0.0-SNAPSHOT</version><relativePath>../hello-spring-cloud-dependencies/pom.xml</relativePath></parent><artifactId>hello-spring-cloud-config</artifactId><packaging>jar</packaging><name>hello-spring-cloud-config</name><url>http://www.funtl.com</url><inceptionYear>2018-Now</inceptionYear><dependencies><!-- Spring Boot Begin --><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-tomcat</artifactId></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-actuator</artifactId></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-test</artifactId><scope>test</scope></dependency><!-- Spring Boot End --><!-- Spring Cloud Begin --><dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-config-server</artifactId></dependency><dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-netflix-eureka-server</artifactId></dependency><!-- Spring Cloud End --></dependencies><build><plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId><configuration><mainClass>com.funtl.hello.spring.cloud.config.ConfigApplication</mainClass></configuration></plugin></plugins></build></project>
在ConfigApplication中开启:
@SpringBootApplication
@EnableConfigServer
@EnableEurekaClient
public class ConfigApplication {public static void main(String[] args) {SpringApplication.run(ConfigApplication.class, args);}
}
在application.yml中书写配置文件:
spring:application:name: hello-spring-cloud-configcloud:config:label: masterserver:git:uri: https://github.com/topsale/spring-cloud-configsearch-paths: respousername:password:server:port: 8888eureka:client:serviceUrl:defaultZone: http://localhost:8761/eureka/
配置说明:
spring.cloud.config.label:配置仓库的分支spring.cloud.config.server.git.uri:配置 Git 仓库地址(GitHub、GitLab、码云 ...)spring.cloud.config.server.git.search-paths:配置仓库路径(存放配置文件的目录)spring.cloud.config.server.git.username:访问 Git 仓库的账号spring.cloud.config.server.git.password:访问 Git 仓库的密码
分布式配置中心客户端配置:
pom.xml中配置:
<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><parent><groupId>com.funtl</groupId><artifactId>hello-spring-cloud-dependencies</artifactId><version>1.0.0-SNAPSHOT</version><relativePath>../hello-spring-cloud-dependencies/pom.xml</relativePath></parent><artifactId>hello-spring-cloud-config-client</artifactId><packaging>jar</packaging><name>hello-spring-cloud-config-client</name><url>http://www.funtl.com</url><inceptionYear>2018-Now</inceptionYear><dependencies><!-- Spring Boot Begin --><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-tomcat</artifactId></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-actuator</artifactId></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-test</artifactId><scope>test</scope></dependency><!-- Spring Boot End --><!-- Spring Cloud Begin --><dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-config</artifactId></dependency><dependency><groupId>org.springframework.cloud</groupId><artifactId>spring-cloud-starter-netflix-eureka-server</artifactId></dependency><!-- Spring Cloud End --></dependencies><build><plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId><configuration><mainClass>com.funtl.hello.spring.cloud.config.client.ConfigClientApplication</mainClass></configuration></plugin></plugins></build></project>
入口类处理方式:
@SpringBootApplication
@EnableDiscoveryClient
public class ConfigClientApplication {
public static void main(String[] args) {
SpringApplication.run(ConfigClientApplication.class, args);
}
}
application.yml中书写配置文件:
spring:application:name: hello-spring-cloud-config-clientcloud:config:uri: http://localhost:8888name: config-clientlabel: masterprofile: devserver:port: 8889eureka:client:serviceUrl:defaultZone: http://localhost:8761/eureka/
配置说明:
spring.cloud.config.uri:配置服务中心的网址spring.cloud.config.name:配置文件名称的前缀spring.cloud.config.label:配置仓库的分支spring.cloud.config.profile:配置文件的环境标识dev:表示开发环境test:表示测试环境prod:表示生产环境
服务链路追踪:
这里主要使用ZipKin:每个服务向 ZipKin 报告计时数据,ZipKin 会根据调用关系通过 ZipKin UI 生成依赖关系图,显示了多少跟踪请求通过每个服务,该系统让开发者可通过一个 Web 前端轻松的收集和分析数据,例如用户每次请求服务的处理时间等,可方便的监测系统中存在的瓶颈 。
说明:微服务架构是通过业务来划分服务的,使用 REST 调用。对外暴露的一个接口,可能需要很多个服务协同才能完成这个接口功能,如果链路上任何一个服务出现问题或者网络超时,都会形成导致接口调用失败。随着业务的不断扩张,服务之间互相调用会越来越复杂。
服务监控:
admin
启动顺序:config->eureka--->--->zipkin--->Admin--->serviceAdmin--->ZuulApplication
如若内容造成侵权/违法违规/事实不符,请联系编程学习网邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
相关文章
- 04-KVM虚拟机克隆和网络
一、虚拟机完整克隆 [rootkvm opt]# virt-clone -o web01 -n web02 --auto-clone #克隆虚拟机web01为web02 ERROR Domain with devices to clone must be paused or shutoff. #克隆需要先关闭虚拟机 [rootkvm opt]# virsh destroy web01 Domain web01 destroyed[rootkvm …...
2024/4/3 17:16:31 - Exercise 8:异常检测和推荐系统(Coursera-吴恩达Machine Learning编程作业)
1 Anomaly detection 1.1 Gaussian distribution 高斯分布函数为 其中,μ\muμ为平均值(控制中心位置),σ2\sigma^2σ2为方差(控制分布展宽)。 1.2 Estimating parameters for a Gaussian 高斯分布函数…...
2024/4/3 12:42:20 - (精华)2020年10月4日 微服务 k8s-集群搭建
k8s-集群搭建 k8s介绍 什么是k8s k8s是一个舵手,专门用来进行给docker掌管方向的,换句话说,就是用来控制docker运行容器的 和docker 是一样的功能。所以就有一个概念cluster 为什么要使用k8s 因为当docker容器异常的时候,do…...
2024/4/16 14:55:28 - (Redis):数据类型实践案例
目录 数据类型实践案例 解决方案列表 数据类型实践案例 业务场景人工智能领域的语义识别与自动对话将是未来服务业机器人应答呼叫体系中的重要技术,百度自研用户评价语义识别服务,免费开放给企业试用,同时训练百度自己的模型。现对试用用户的…...
2024/4/3 14:30:00 - 建模杂谈系列27- 面向小团队(个人)的人工智能生产力平台方案 - 待续
说明 从工业革命的角度看人工智能。以下参考 18世纪中叶,蒸汽机的问世让英国率先跨入了蒸汽时代,引领了第一次工业革命,也让英国一跃成为日不落帝国。 一个世纪后,19世纪中叶,以德国为代表的欧洲大陆国家引领了第二次…...
2024/4/3 16:40:06 - 2020.10.4论文笔记
2020.10.4论文笔记PRETRAINED ENCYCLOPEDIA: WEAKLY SUPERVISED KNOWLEDGE-PRETRAINED LANGUAGE MODELNON-AUTOREGRESSIVE NEURAL MACHINE TRANSLATIONInsertion Transformer: Flexible Sequence Generation via Insertion OperationsLevenshtein TransformerNon-Autoregressiv…...
2024/4/20 0:18:09 - 说说员工与老板的那些事尔雅答案
超星学习通说说员工与老板的那些事章节测验答案,主讲老师 王永刚 第一章 章节测试 1【单选题】劳动关系的根本特征是(C )。 A、身份性 B、财产性 C、从属性 D、继续性 2【单选题】下列属于劳动法上的劳动者的是(A )。 A、企业工人 B…...
2024/4/20 4:52:59 - 白帽子黑客与网络安全工程师教你:信息扫描集成工具Sparta使用技巧
课前声明: 1、本分享仅做学习交流,请自觉遵守法律法规! 2、搜索:Kali与编程,学习更多网络攻防干货! 3、Kali与编程每天准时更新,敬请学习和关注! 正文部分 一、背景介绍 Sparta是py…...
2024/4/14 15:58:51 - Go语言-流程控制
1.顺序控制 package mainimport "fmt"func main() {var days int 97var week int days / 7var day int days % 7fmt.Printf("%d个星期零%d天\n", week, day) }2.分支控制 1.单分支控制 package mainimport "fmt"//单分支控制 func main() …...
2024/4/16 0:17:34 - 用四叉树加速碰撞检测
长话短说 1.Define Quad Tree 四叉树的作用就是从原点开始根据一定的范围画出周围的四个象限,然后每个子象限继续划分为四个孙子象限,以此类推,到达递归深度最大值时停止。 2.在碰撞检测中的作用 如果场景里有1万个障碍物和2个子弹&…...
2024/4/3 19:19:22 - Fundations of Machine Learning 2nd——第三章(一)拉德马赫复杂度
Fundations of Machine Learning 2nd——第三章(一)拉德马赫复杂度和VC维度回顾第二章拉德马赫复杂度定义1 经验拉德马赫复杂度(Empirical Rademacher complexity)定义2 拉德马赫复杂度定理1引理1定理2 拉德马赫复杂度边界——二分…...
2024/4/3 21:51:45 - 机器学习 之 贝叶斯分布与范数
每日小常识 范数,是具有“长度”概念的函数。 欧式范数,实际上是l2l_2l2-范数 ∣∣x∣∣32(−2)2123.742||x||\sqrt{3^2(-2)^21^2}3.742∣∣x∣∣32(−2)2123.742 lpl_plp-范数定义为 ∣∣x∣∣pp∑i∣xi∣p||x||_p^p\sqrt{\sum_i|x_i|^p}∣∣x∣∣…...
2024/4/3 23:22:49 - STM32+ESP8266获取网络时间和天气
目录 1:连网 2:获取天气和时间 3:对获取到的数据进行解析 先给出两个可以获取天气和时间的网站 https://www.seniverse.com/docs 可以获取天气 http://api.k780.com:88/?applife.time&appkey10003&signb59bc3ef6191eb9f747dd4…...
2024/4/3 18:40:28 - MySQL架构与历史3 事务
...
2024/4/17 19:15:34 - Gym - 101673C DRM Messages
题目 传送门 Sample Input 1 EWPGAJRB Sample Output 1 ABCD Sample Input 2 UEQBJPJCBUDGBNKCAHXCVERXUCVK Sample Output 2 ACMECNACONTEST 题意:给出一个字符串执行以下三步操作 1:把字符串分为前后相等的两部分 2:把前一半的价值相加&a…...
2024/4/19 22:58:57 - LeetCode-2-两数相加
2. 两数相加 说明 给出两个 非空 的链表用来表示两个非负的整数。其中,它们各自的位数是按照 逆序 的方式存储的,并且它们的每个节点只能存储 一位 数字。 如果,我们将这两个数相加起来,则会返回一个新的链表来表示它们的和。 …...
2024/4/16 6:55:29 - threading violation: expected the main thread | 线程违规 | iOS开发
今天在测试中遇到程序崩溃,报错信息中有一句threading violation: expected the main thread 原因 产生这个错误的原因就是苹果系统对在子线程进行UI操作做了非常严格的检验,如果我们在子线程中更新UI,则会直接因为线程违规而导致Crash 解…...
2024/4/3 22:28:21 - View Adaptive Neural Networks for High Performance Skeleton-based Human Action Recognition
这是一个论文的笔记 大致思路:对每一个动作视频选一个更好的角度进行旋转处理(这么理解,原来的数据集的摄像头的位置不咋地,导致数据集中的视频不咋地,而这篇论文做的就是给数据集中的每个视频自动找一个好的角度&…...
2024/4/14 22:32:38 - 第2部分 字符串算法(提高篇)--第3章 trie字典树1471:【例题1】Phone List
1471:【例题1】Phone List 时间限制: 1000 ms 内存限制: 65536 KB 提交数: 1777 通过数: 609 【题目描述】 原题来自:POJ 3630 给定 n 个长度不超过 10 的数字串,问其中是否存在两个数字串 S,T,使得 S 是 T 的前缀,多…...
2024/4/19 1:50:10 - 【遥感遥测】【2016】灌溉玉米田间土壤水分变化的遥感定量研究
本文为美国科罗拉多州大学(作者:Jeffrey Alan Siegfried)的硕士论文,共134页。 农业是全球最大的水消费领域。随着可用水资源压力的增加,用更少的水生产更多的粮食变得至关重要。精确供水方法(如变量灌溉&…...
2024/4/18 12:25:38
最新文章
- AI原生时代,操作系统为何是创新之源?
一直以来,操作系统都是软件行业皇冠上的明珠。 从上世纪40、50年代,汇编语言和汇编器实现软件管理硬件,操作系统的雏形出现;到60年代,高级编程语言和编译器诞生,开发者通过操作系统用更接近人的表达方式去…...
2024/4/20 20:21:13 - 梯度消失和梯度爆炸的一些处理方法
在这里是记录一下梯度消失或梯度爆炸的一些处理技巧。全当学习总结了如有错误还请留言,在此感激不尽。 权重和梯度的更新公式如下: w w − η ⋅ ∇ w w w - \eta \cdot \nabla w ww−η⋅∇w 个人通俗的理解梯度消失就是网络模型在反向求导的时候出…...
2024/3/20 10:50:27 - 北航2023年考研机试题
【问题描述】一共6个手机基站,具有记录手机连接基站的能力,6个手机基站分别为ABCDEF,他们具有自己的覆盖范围且任何两个基站的覆盖范围不想交,基站保存的手机登陆日志包括手机号(11位,用字符串保存…...
2024/4/18 16:22:48 - ssm框架中各层级介绍
1、Spring(业务逻辑层): Spring框架提供了依赖注入(DI)和面向切面编程(AOP)等功能,可以帮助管理Java应用程序中的对象依赖关系和提供横切关注点的支持。 在SSM框架中,S…...
2024/4/19 3:29:12 - 416. 分割等和子集问题(动态规划)
题目 题解 class Solution:def canPartition(self, nums: List[int]) -> bool:# badcaseif not nums:return True# 不能被2整除if sum(nums) % 2 ! 0:return False# 状态定义:dp[i][j]表示当背包容量为j,用前i个物品是否正好可以将背包填满ÿ…...
2024/4/19 19:02:10 - 【Java】ExcelWriter自适应宽度工具类(支持中文)
工具类 import org.apache.poi.ss.usermodel.Cell; import org.apache.poi.ss.usermodel.CellType; import org.apache.poi.ss.usermodel.Row; import org.apache.poi.ss.usermodel.Sheet;/*** Excel工具类** author xiaoming* date 2023/11/17 10:40*/ public class ExcelUti…...
2024/4/20 15:00:23 - Spring cloud负载均衡@LoadBalanced LoadBalancerClient
LoadBalance vs Ribbon 由于Spring cloud2020之后移除了Ribbon,直接使用Spring Cloud LoadBalancer作为客户端负载均衡组件,我们讨论Spring负载均衡以Spring Cloud2020之后版本为主,学习Spring Cloud LoadBalance,暂不讨论Ribbon…...
2024/4/19 11:33:34 - TSINGSEE青犀AI智能分析+视频监控工业园区周界安全防范方案
一、背景需求分析 在工业产业园、化工园或生产制造园区中,周界防范意义重大,对园区的安全起到重要的作用。常规的安防方式是采用人员巡查,人力投入成本大而且效率低。周界一旦被破坏或入侵,会影响园区人员和资产安全,…...
2024/4/19 11:52:08 - VB.net WebBrowser网页元素抓取分析方法
在用WebBrowser编程实现网页操作自动化时,常要分析网页Html,例如网页在加载数据时,常会显示“系统处理中,请稍候..”,我们需要在数据加载完成后才能继续下一步操作,如何抓取这个信息的网页html元素变化&…...
2024/4/20 9:42:32 - 【Objective-C】Objective-C汇总
方法定义 参考:https://www.yiibai.com/objective_c/objective_c_functions.html Objective-C编程语言中方法定义的一般形式如下 - (return_type) method_name:( argumentType1 )argumentName1 joiningArgument2:( argumentType2 )argumentName2 ... joiningArgu…...
2024/4/20 7:01:14 - 【洛谷算法题】P5713-洛谷团队系统【入门2分支结构】
👨💻博客主页:花无缺 欢迎 点赞👍 收藏⭐ 留言📝 加关注✅! 本文由 花无缺 原创 收录于专栏 【洛谷算法题】 文章目录 【洛谷算法题】P5713-洛谷团队系统【入门2分支结构】🌏题目描述🌏输入格…...
2024/4/19 11:52:49 - 【ES6.0】- 扩展运算符(...)
【ES6.0】- 扩展运算符... 文章目录 【ES6.0】- 扩展运算符...一、概述二、拷贝数组对象三、合并操作四、参数传递五、数组去重六、字符串转字符数组七、NodeList转数组八、解构变量九、打印日志十、总结 一、概述 **扩展运算符(...)**允许一个表达式在期望多个参数࿰…...
2024/4/19 18:52:15 - 摩根看好的前智能硬件头部品牌双11交易数据极度异常!——是模式创新还是饮鸩止渴?
文 | 螳螂观察 作者 | 李燃 双11狂欢已落下帷幕,各大品牌纷纷晒出优异的成绩单,摩根士丹利投资的智能硬件头部品牌凯迪仕也不例外。然而有爆料称,在自媒体平台发布霸榜各大榜单喜讯的凯迪仕智能锁,多个平台数据都表现出极度异常…...
2024/4/19 23:08:02 - Go语言常用命令详解(二)
文章目录 前言常用命令go bug示例参数说明 go doc示例参数说明 go env示例 go fix示例 go fmt示例 go generate示例 总结写在最后 前言 接着上一篇继续介绍Go语言的常用命令 常用命令 以下是一些常用的Go命令,这些命令可以帮助您在Go开发中进行编译、测试、运行和…...
2024/4/20 0:22:23 - 用欧拉路径判断图同构推出reverse合法性:1116T4
http://cplusoj.com/d/senior/p/SS231116D 假设我们要把 a a a 变成 b b b,我们在 a i a_i ai 和 a i 1 a_{i1} ai1 之间连边, b b b 同理,则 a a a 能变成 b b b 的充要条件是两图 A , B A,B A,B 同构。 必要性显然࿰…...
2024/4/19 23:04:54 - 【NGINX--1】基础知识
1、在 Debian/Ubuntu 上安装 NGINX 在 Debian 或 Ubuntu 机器上安装 NGINX 开源版。 更新已配置源的软件包信息,并安装一些有助于配置官方 NGINX 软件包仓库的软件包: apt-get update apt install -y curl gnupg2 ca-certificates lsb-release debian-…...
2024/4/20 1:12:38 - Hive默认分割符、存储格式与数据压缩
目录 1、Hive默认分割符2、Hive存储格式3、Hive数据压缩 1、Hive默认分割符 Hive创建表时指定的行受限(ROW FORMAT)配置标准HQL为: ... ROW FORMAT DELIMITED FIELDS TERMINATED BY \u0001 COLLECTION ITEMS TERMINATED BY , MAP KEYS TERMI…...
2024/4/20 19:58:29 - 【论文阅读】MAG:一种用于航天器遥测数据中有效异常检测的新方法
文章目录 摘要1 引言2 问题描述3 拟议框架4 所提出方法的细节A.数据预处理B.变量相关分析C.MAG模型D.异常分数 5 实验A.数据集和性能指标B.实验设置与平台C.结果和比较 6 结论 摘要 异常检测是保证航天器稳定性的关键。在航天器运行过程中,传感器和控制器产生大量周…...
2024/4/19 19:50:16 - --max-old-space-size=8192报错
vue项目运行时,如果经常运行慢,崩溃停止服务,报如下错误 FATAL ERROR: CALL_AND_RETRY_LAST Allocation failed - JavaScript heap out of memory 因为在 Node 中,通过JavaScript使用内存时只能使用部分内存(64位系统&…...
2024/4/20 1:43:00 - 基于深度学习的恶意软件检测
恶意软件是指恶意软件犯罪者用来感染个人计算机或整个组织的网络的软件。 它利用目标系统漏洞,例如可以被劫持的合法软件(例如浏览器或 Web 应用程序插件)中的错误。 恶意软件渗透可能会造成灾难性的后果,包括数据被盗、勒索或网…...
2024/4/20 13:55:02 - JS原型对象prototype
让我简单的为大家介绍一下原型对象prototype吧! 使用原型实现方法共享 1.构造函数通过原型分配的函数是所有对象所 共享的。 2.JavaScript 规定,每一个构造函数都有一个 prototype 属性,指向另一个对象,所以我们也称为原型对象…...
2024/4/19 23:35:17 - C++中只能有一个实例的单例类
C中只能有一个实例的单例类 前面讨论的 President 类很不错,但存在一个缺陷:无法禁止通过实例化多个对象来创建多名总统: President One, Two, Three; 由于复制构造函数是私有的,其中每个对象都是不可复制的,但您的目…...
2024/4/19 10:00:05 - python django 小程序图书借阅源码
开发工具: PyCharm,mysql5.7,微信开发者工具 技术说明: python django html 小程序 功能介绍: 用户端: 登录注册(含授权登录) 首页显示搜索图书,轮播图࿰…...
2024/4/20 6:45:17 - 电子学会C/C++编程等级考试2022年03月(一级)真题解析
C/C++等级考试(1~8级)全部真题・点这里 第1题:双精度浮点数的输入输出 输入一个双精度浮点数,保留8位小数,输出这个浮点数。 时间限制:1000 内存限制:65536输入 只有一行,一个双精度浮点数。输出 一行,保留8位小数的浮点数。样例输入 3.1415926535798932样例输出 3.1…...
2024/4/20 3:28:04 - 配置失败还原请勿关闭计算机,电脑开机屏幕上面显示,配置失败还原更改 请勿关闭计算机 开不了机 这个问题怎么办...
解析如下:1、长按电脑电源键直至关机,然后再按一次电源健重启电脑,按F8健进入安全模式2、安全模式下进入Windows系统桌面后,按住“winR”打开运行窗口,输入“services.msc”打开服务设置3、在服务界面,选中…...
2022/11/19 21:17:18 - 错误使用 reshape要执行 RESHAPE,请勿更改元素数目。
%读入6幅图像(每一幅图像的大小是564*564) f1 imread(WashingtonDC_Band1_564.tif); subplot(3,2,1),imshow(f1); f2 imread(WashingtonDC_Band2_564.tif); subplot(3,2,2),imshow(f2); f3 imread(WashingtonDC_Band3_564.tif); subplot(3,2,3),imsho…...
2022/11/19 21:17:16 - 配置 已完成 请勿关闭计算机,win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机...
win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机”问题的解决方法在win7系统关机时如果有升级系统的或者其他需要会直接进入一个 等待界面,在等待界面中我们需要等待操作结束才能关机,虽然这比较麻烦,但是对系统进行配置和升级…...
2022/11/19 21:17:15 - 台式电脑显示配置100%请勿关闭计算机,“准备配置windows 请勿关闭计算机”的解决方法...
有不少用户在重装Win7系统或更新系统后会遇到“准备配置windows,请勿关闭计算机”的提示,要过很久才能进入系统,有的用户甚至几个小时也无法进入,下面就教大家这个问题的解决方法。第一种方法:我们首先在左下角的“开始…...
2022/11/19 21:17:14 - win7 正在配置 请勿关闭计算机,怎么办Win7开机显示正在配置Windows Update请勿关机...
置信有很多用户都跟小编一样遇到过这样的问题,电脑时发现开机屏幕显现“正在配置Windows Update,请勿关机”(如下图所示),而且还需求等大约5分钟才干进入系统。这是怎样回事呢?一切都是正常操作的,为什么开时机呈现“正…...
2022/11/19 21:17:13 - 准备配置windows 请勿关闭计算机 蓝屏,Win7开机总是出现提示“配置Windows请勿关机”...
Win7系统开机启动时总是出现“配置Windows请勿关机”的提示,没过几秒后电脑自动重启,每次开机都这样无法进入系统,此时碰到这种现象的用户就可以使用以下5种方法解决问题。方法一:开机按下F8,在出现的Windows高级启动选…...
2022/11/19 21:17:12 - 准备windows请勿关闭计算机要多久,windows10系统提示正在准备windows请勿关闭计算机怎么办...
有不少windows10系统用户反映说碰到这样一个情况,就是电脑提示正在准备windows请勿关闭计算机,碰到这样的问题该怎么解决呢,现在小编就给大家分享一下windows10系统提示正在准备windows请勿关闭计算机的具体第一种方法:1、2、依次…...
2022/11/19 21:17:11 - 配置 已完成 请勿关闭计算机,win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机”的解决方法...
今天和大家分享一下win7系统重装了Win7旗舰版系统后,每次关机的时候桌面上都会显示一个“配置Windows Update的界面,提示请勿关闭计算机”,每次停留好几分钟才能正常关机,导致什么情况引起的呢?出现配置Windows Update…...
2022/11/19 21:17:10 - 电脑桌面一直是清理请关闭计算机,windows7一直卡在清理 请勿关闭计算机-win7清理请勿关机,win7配置更新35%不动...
只能是等着,别无他法。说是卡着如果你看硬盘灯应该在读写。如果从 Win 10 无法正常回滚,只能是考虑备份数据后重装系统了。解决来方案一:管理员运行cmd:net stop WuAuServcd %windir%ren SoftwareDistribution SDoldnet start WuA…...
2022/11/19 21:17:09 - 计算机配置更新不起,电脑提示“配置Windows Update请勿关闭计算机”怎么办?
原标题:电脑提示“配置Windows Update请勿关闭计算机”怎么办?win7系统中在开机与关闭的时候总是显示“配置windows update请勿关闭计算机”相信有不少朋友都曾遇到过一次两次还能忍但经常遇到就叫人感到心烦了遇到这种问题怎么办呢?一般的方…...
2022/11/19 21:17:08 - 计算机正在配置无法关机,关机提示 windows7 正在配置windows 请勿关闭计算机 ,然后等了一晚上也没有关掉。现在电脑无法正常关机...
关机提示 windows7 正在配置windows 请勿关闭计算机 ,然后等了一晚上也没有关掉。现在电脑无法正常关机以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!关机提示 windows7 正在配…...
2022/11/19 21:17:05 - 钉钉提示请勿通过开发者调试模式_钉钉请勿通过开发者调试模式是真的吗好不好用...
钉钉请勿通过开发者调试模式是真的吗好不好用 更新时间:2020-04-20 22:24:19 浏览次数:729次 区域: 南阳 > 卧龙 列举网提醒您:为保障您的权益,请不要提前支付任何费用! 虚拟位置外设器!!轨迹模拟&虚拟位置外设神器 专业用于:钉钉,外勤365,红圈通,企业微信和…...
2022/11/19 21:17:05 - 配置失败还原请勿关闭计算机怎么办,win7系统出现“配置windows update失败 还原更改 请勿关闭计算机”,长时间没反应,无法进入系统的解决方案...
前几天班里有位学生电脑(windows 7系统)出问题了,具体表现是开机时一直停留在“配置windows update失败 还原更改 请勿关闭计算机”这个界面,长时间没反应,无法进入系统。这个问题原来帮其他同学也解决过,网上搜了不少资料&#x…...
2022/11/19 21:17:04 - 一个电脑无法关闭计算机你应该怎么办,电脑显示“清理请勿关闭计算机”怎么办?...
本文为你提供了3个有效解决电脑显示“清理请勿关闭计算机”问题的方法,并在最后教给你1种保护系统安全的好方法,一起来看看!电脑出现“清理请勿关闭计算机”在Windows 7(SP1)和Windows Server 2008 R2 SP1中,添加了1个新功能在“磁…...
2022/11/19 21:17:03 - 请勿关闭计算机还原更改要多久,电脑显示:配置windows更新失败,正在还原更改,请勿关闭计算机怎么办...
许多用户在长期不使用电脑的时候,开启电脑发现电脑显示:配置windows更新失败,正在还原更改,请勿关闭计算机。。.这要怎么办呢?下面小编就带着大家一起看看吧!如果能够正常进入系统,建议您暂时移…...
2022/11/19 21:17:02 - 还原更改请勿关闭计算机 要多久,配置windows update失败 还原更改 请勿关闭计算机,电脑开机后一直显示以...
配置windows update失败 还原更改 请勿关闭计算机,电脑开机后一直显示以以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!配置windows update失败 还原更改 请勿关闭计算机&#x…...
2022/11/19 21:17:01 - 电脑配置中请勿关闭计算机怎么办,准备配置windows请勿关闭计算机一直显示怎么办【图解】...
不知道大家有没有遇到过这样的一个问题,就是我们的win7系统在关机的时候,总是喜欢显示“准备配置windows,请勿关机”这样的一个页面,没有什么大碍,但是如果一直等着的话就要两个小时甚至更久都关不了机,非常…...
2022/11/19 21:17:00 - 正在准备配置请勿关闭计算机,正在准备配置windows请勿关闭计算机时间长了解决教程...
当电脑出现正在准备配置windows请勿关闭计算机时,一般是您正对windows进行升级,但是这个要是长时间没有反应,我们不能再傻等下去了。可能是电脑出了别的问题了,来看看教程的说法。正在准备配置windows请勿关闭计算机时间长了方法一…...
2022/11/19 21:16:59 - 配置失败还原请勿关闭计算机,配置Windows Update失败,还原更改请勿关闭计算机...
我们使用电脑的过程中有时会遇到这种情况,当我们打开电脑之后,发现一直停留在一个界面:“配置Windows Update失败,还原更改请勿关闭计算机”,等了许久还是无法进入系统。如果我们遇到此类问题应该如何解决呢࿰…...
2022/11/19 21:16:58 - 如何在iPhone上关闭“请勿打扰”
Apple’s “Do Not Disturb While Driving” is a potentially lifesaving iPhone feature, but it doesn’t always turn on automatically at the appropriate time. For example, you might be a passenger in a moving car, but your iPhone may think you’re the one dri…...
2022/11/19 21:16:57