摘要:https://www.jianshu.com/p/9fd5f04b62c8 首先二者从名称上就能看到区别,BeanFactory是Spring提供的存放Bean的工厂,FactoryBean是一个可生产Bean的工厂Bean。 https://zhuanlan.zhihu.com/p/518210
阅读全文
摘要:https://www.mianshigee.com/question/10477vxb https://www.zhihu.com/pin/1365332853371297792 https://blog.51cto.com/u_10954139/4839044 清楚
阅读全文
摘要:https://blog.csdn.net/jike11231/article/details/116357864 创建时机1:默认的在Spring容器启动的时候2:在getBean的时候创建对象(就是拿到配置文件中的标识符的时候创建对象) 在Spring的配置文件bean中有一个属性lazy-in
阅读全文
摘要:https://baijiahao.baidu.com/s?id=1610298792072480906&wfr=spider&for=pc https://blog.csdn.net/weixin_42223248/article/details/113852199 一共是5种作用域,低版本的是下
阅读全文
摘要:好文: https://www.cnblogs.com/syw20170419/p/16443105.html 1、三种格式:row、statement、mixed 2、区别:row格式文件比较大,statement比较小,row格式保存的是一行一行的数据,statement保存的是sql语句,mi
阅读全文
摘要:好文: https://www.cnblogs.com/dearcabbage/p/10603460.html 如果已经创建了一个相同的整数,使用valueOf创建第二次时,不会使用new关键字,而用已经缓存的对象。所以使用valueOf方法创建两次对象,若对应的数值相同,且数值在-128~127之
阅读全文
摘要:目前最新版本:Spring Cloud Alibaba 2.2.1 Spring Cloud Alibaba 2.1.0 RELEASE对应Spring Cloud Greenwich版本 Spring Cloud Alibaba 2.2.0 RELEASE对应Spring Cloud Hoxton
阅读全文
摘要:Spring Cloud Alibaba 是阿里巴巴开源中间件跟 Spring Cloud 体系的融合: 主要特性: 1、流量控制和服务降级:使用阿里巴巴Sentinel进行流量控制,断路和系统自适应保护; 2、服务注册和发现:实例可以在Alibaba Nacos上注册,客户可以使用Spring管理
阅读全文
摘要:前面是在Git仓库中明文存储配置信息值,很多场景下,对于某些敏感的配置内容(例如数据库账号、密码等),应该加密存储,config server为我们考虑到了这一点,对配置内容提供了加密与解密支持; 安装JCE config server的加解密功能依赖Java Cryptography Extens
阅读全文
摘要:前面已经搭建好了配置中心的服务端,并且通过访问接口从config服务端读取配置信息, 不过实际开发中,更多的不是我们人为去获取配置信息,而是由微服务自己从config服务端上加载配置信息, 那么怎么来加载呢? 1、我们的各个微服务都是客户端,比如服务提供者、服务消费者等各个微服务都可以从配置中心获取
阅读全文
摘要:构建一个 spring cloud config 配置中心按照如下方式进行: 1、创建一个普通的 Spring Boot 项目 2、在 pom.xml 文件中添加如下依赖: <dependency> <groupId>org.springframework.cloud</groupId> <arti
阅读全文
摘要:远程git 本地git 还有码云 码云上创建仓库,git clone 到本地,是一个工程; new 一个目录 config-server 需要在 gitee 上设置好配置中心,我们通过idea 把gitee上的springcloud项目clone到本地,然后再项目下创建一个文件夹config-cen
阅读全文
摘要:Spring Cloud Config 是一个解决分布式系统的配置管理方案。它包含 Client 和 Server 两个部分,Server 提供配置文件的存储、以接口的形式将配置文件的内容提供出去,Client 通过接口获取数据、并依据此数据初始化自己的应用。 Spring cloud config
阅读全文
摘要:配置中心: 用于解决服务配置管理问题; 1、传统配置方式: 配置信息分散到系统各个角落方式,配置文件或者在代码中; 2、集中式配置中心: 将应用系统中对配置信息的管理作为一个新的应用功能模块,进行集中统一管理,并且提供额外功能;3、分布式配置中心: 在分布式、微服务架构中,独立的配置中心服务; 为什
阅读全文
摘要:Spring Boot 的actuator提供了一个刷新端点/refresh,添加依赖spring-boot-starter-actuator,可用于配置的刷新; 1、添加依赖: <!--springboot的一个监控actuator--><dependency> <groupId>org.spri
阅读全文
摘要:服务降级是指当某个微服务响应时间过长,发生异常,或者服务不可用了,我们不能把错误信息返回回来,或者让它一直卡在那里,所以要准备一个对应的策略(一个方法),当发生这种问题时,我们直接调用这个备用的方法来快速返回一个默认的结果,让请求得到快速响应,而不是一直卡在那里; 降级的作用? 1、可以监听你的请求
阅读全文
摘要:参考文章: https://dandelioncloud.cn/article/details/1470692865516040193 Feign: 是Netflix开发的声明式、模板化的HTTP客户端, Feign可以帮助我们更快捷、优雅地调用HTTP API,”面向接口的形式“调用HTTP请求,
阅读全文
摘要:负载均衡: 我们知道,Spring Cloud 提供了 Ribbon 来实现负载均衡,使用 Ribbo 直接注入一个 RestTemplate 对象即可,RestTemplate 已经做好了负载均衡的配置; 在 Spring Cloud 下,使用 Feign 也是直接可以实现负载均衡的,定义一个有@
阅读全文
摘要:使用 Feign 实现消费者,我们通过下面步骤进行: 第一步:创建普通 Spring Boot 工程 把接口放在通用的接口层、常量类、model的项目中 第二步:添加依赖 要 添 加 的 依 赖 主 要 是 spring-cloud-starter-netflix-eureka-client 和 s
阅读全文
摘要:Feign旨在简化微服务消费方(调用者,客户端)代码的开发,前面在使用Ribbon+RestTemplate进行服务调用时,利用RestTemplate对http请求的封装处理,形成了一套模版化的调用方式,但是在实际开发中,由于服务提供者提供的接口非常多,一个接口也可能会被多处调用,Feign在Ri
阅读全文
摘要:Feign 是 Netflix 公司开发的一个声明式的 REST 调用客户端; (调用远程的restful风格的http接口 的一个组件) 调用组件其实很多,比如: 1、Httpclient(apache) 2、Httpurlconnection (jdk) 3、restTemplate(sprin
阅读全文
摘要:简单明了的好文章: https://blog.csdn.net/weixin_56032340/article/details/122587184
阅读全文
摘要:Ribbon 的负载均衡策略是由 IRule 接口定义, 该接口由如下实现: 在jar包:com.netflix.ribbon#ribbon-loadbalancer中; 要使用ribbon实现负载均衡,在Spring 的配置类里面把对应的负载均衡接口实现类作为一个Bean配置一下就行了; 负载均衡
阅读全文
摘要:1、首先加入ribbon的依赖,但是eureka已经依赖了ribbon,所以这里不需要再引用ribbon的依赖; 2、要使用ribbon,只需要一个注解: @Bean@LoadBalancedpublic RestTemplate restTemplate(){ RestTemplate restT
阅读全文
摘要:Spring Cloud Netflix) -->大量使用了Netflix公司的开源项目 (Spring Cloud Alibaba)-->大量使用了Alibaba公司的开源项目 Spring Cloud Ribbon是基于Netflix Ribbon实现的一套客户端负载均衡器; 我们通常说的负载均
阅读全文
摘要:自我保护机制是 Eureka 注册中心的重要特性,当 Eureka 注册中心进入自我保护模式时,在 Eureka Server 首页会输出如下警告信息: EMERGENCY! EUREKA MAY BE INCORRECTLY CLAIMING INSTANCES ARE UP WHEN THEY'
阅读全文
摘要:在实际项目中,需要将Eureka发布到具体服务器上进行部署,打包部署其实和SpringBoot里面的一样,我们可以把其达成jar包,启动时对于properties文件,不同的环境激活不同的配置文件; 运行: java -jar springcloud-service-eureka.jar --spr
阅读全文
摘要:我们知道,Eureka 注册中心高可用集群就是各个注册中心相互注册,所以: 在 8761 的配置文件中,让它的 service-url 指向 8762和8763,在 8762 的配置文件中让它的 service-url 指向 8761和8763, 在 8763 的配置文件中让它的 service-u
阅读全文
摘要:在微服务架构的这种分布式系统中,我们要充分考虑各个微服务组件的高可用性问题,不能有单点故障,由于注册中心 eureka 本身也是一个服务,如果它只有一个节点,那么它有可能发生故障,这样我们就不能注册与查询服务了,所以我们需要一个高可用的服务注册中心,这就需要通过注册中心集群来解决。 eureka 服
阅读全文
摘要:Eureka 与 Zookeeper 的比较 著名的 CAP 理论指出,一个分布式系统不可能同时满足 C(一致性)、A(可用性) 和 P(分区容错性); 由于分区容错性在是分布式系统中必须要保证的,因此我们只能在 A 和 C 之间进行权衡,在此 Zookeeper 保证的是 CP, 而 Eureka
阅读全文
摘要:已经搭建一个服务注册中心,同时也向这个服务注册中心注册了服务,接下来我们就可以发现和消费服务了,这其中服务的发现由 eureka 客户端实现,而服务的消费由 Ribbon 实现,也就是说服务的调用需要 eureka 客户端和 Ribbon,两者配合起来才能实现; Eureka 客户端是一个 Java
阅读全文
摘要:参考文章: https://blog.csdn.net/qq_43788878/article/details/115894882 springboot和springcloud或者相关插件的版本问题
阅读全文
摘要:eureka-server就是我们自己开发的module,是eureka的服务端,扮演注册中心的角色; eureka-client就是我们自己开的微服务module,向eureka-server注册中心注册服务; 前面搭建了服务提供者项目,接下来我们就可以将该服务提供者注册到Eureke 注册中心,
阅读全文
摘要:参考文章: https://blog.csdn.net/zongzhankui/article/details/122644078 spring.autoconfigure.exclude=org.springframework.cloud.client.serviceregistry.Servic
阅读全文
摘要:Spring Cloud 要使用 Eureka 注册中心非常简单和方便,Spring Cloud 中的 Eureka 服务注册中心实际上也是一个 Spring Boot 工程,我们只需通过引入相关依赖和注解配置就能让 Spring Boot 构建的微服务应用轻松地与 Eureka 进行整合。 具体步
阅读全文
摘要:Eureka是Netflix的子模块之一,也是一个核心的模块,Eureka 采用了 C-S(客户端/服务端)的设计架构,也就是 Eureka 由两个组件组成:Eureka 服务端和 Eureka 客户端。 Eureka Server(一个独立的项目) 用于注册服务以及实现服务的负载平衡和故障转移,它
阅读全文
摘要:前面手动直接调用的方式,当服务接口增多,这种手动指定接口地址的方式变得非常难以维护,SpringCloud提供了多种服务注册与发现的实现方式,Spring Cloud 支持得最好的是 Eureka,其次是 Consul,再次是 Zookeeper。 什么是服务注册? 服务注册:将服务所在主机、端口、
阅读全文
摘要:服务消费方直接调用服务提供方 1、创建一个 SpringBoot 工程,并且添加 SpringBoot 的相关依赖; 2、创建服务提供者的访问方法,也就是后续消费者如何访问提供者; Spring Cloud 是基于 rest 的访问,所以我们添加一个 Controller,在该 Controller
阅读全文
摘要:Spring Cloud 的整体架构 Service Provider: 暴露服务的服务提供方。 Service Consumer:调用远程服务的服务消费方。 EureKa Server: 服务注册中心和服务发现中心。
阅读全文
摘要:Error starting ApplicationContext. To display the conditions report re-run your application with 'debug' enabled.2023-04-04 14:54:30.963 ERROR 49212 [
阅读全文
摘要:在实际开发中,我们会把所有服务都注册到nacos注册中心上,由nacos去维护和管理我们的所有服务; 通过添加一个starter依赖:spring-cloud-starter-alibaba-nacos-discovery它通过自动配置、注解以及Spring Boot 编程模型与Nacos无缝集成,
阅读全文
摘要:1、下载nacos最新的二进制压缩包; 下载地址:https://github.com/alibaba/nacos/releases 2、解压下载下来的nacos最新的二进制压缩包; tar -zxvf nacos-server-1.3.1.tar.gzcd nacos/bin 3、启动nacos
阅读全文
摘要:Nacos是阿里巴巴2018年7月推出来的一个开源项目,是一个更易于构建云原生应用的动态服务注册与发现、配置管理和服务管理平台;(Nacos:纳科斯) Nacos致力于快速实现动态服务注册与发现、服务配置、服务元数据及流量管理; Nacos 属于Spring cloud alibaba下的一个组件;
阅读全文
摘要:1、内置web对象 thymaleaf内置的web对象,可以直接在模板中使用,这些对象由#号开头: #request: 相当于HttpServletRequest 对象,这是Thymeleaf 3.x版本,若是Thymeleaf 2.x版本使用 #httpServletRequest; ${#req
阅读全文
摘要:Thymeleaf 字符串拼接 一种是字符串拼接: <span th:text="'当前是第'+${sex}+'页 ,共'+${sex}+'页'"></span> 另一种更简洁的方式,使用“|”减少了字符串的拼接: <span th:text="|当前是第${sex}页,共${sex}页|"></s
阅读全文
摘要:th:action <form id="login" th:action="@{/login}">......</form> th:method <form id="login" th:action="@{/login}" th:method="post">......</form> th:href
阅读全文
摘要:1.添加热部署,为了测试不用频繁重启 <!--热部署插件--><dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-devtools</artifactId> <optional>true</
阅读全文
摘要:Spring Boot 官方推荐前端不使用JSP,推荐使用thymeleaf来替代JSP技术; Thymeleaf是一种模板技术,该模板技术也采用Java语言开发的; 但是thymeleaf是另外一家公司开源做的,并不属于springboot,springboot只是很好地集成这种模板技术,作为前端
阅读全文
摘要:可以做成页面监控(springboot-admin),而不是json的格式,看起来会更方便。 在生产环境中,有时可能需要监控服务的可用性,spring-boot 的 actuator 就是提供了对应用的配置查看、健康检查、相关功能统计等,可以通过HTTP,JMX来访问这些监控功能;(端点) 如何使用
阅读全文
摘要:参考文章及实现方式 https://www.zhihu.com/question/61385975
阅读全文
摘要:1.打war包 1. 程序入口类需扩展继承 SpringBootServletInitializer 类 2、程序入口类覆盖如下方法: @Override protected SpringApplicationBuilder configure(SpringApplicationBuilder ap
阅读全文