
spring
文章平均质量分 77
Leopard锋
没有打不破的墙,只有不善于利用工具的苦工
展开
-
SpringBoot+Elasticsearch-7.X实现高亮分词搜索
对于基础应用包下载和安装流程,这里大体跳过。需要的可以参考比较老版本的搭建流程SpringBoot+Mybatis+Elasticsearch-2.X实现高亮分词搜索这里主要说下高版本7.X跟以前的版本的不同之处参考借鉴文章:springboot整合Elasticsearch7.6实现简单查询及高亮分词查询一、服务端安装搭建安装下载此处省略,详情可以参看老版本。启动的时候,进入bin目录, 运行启动elasticsearch.bat启动完成后,在浏览器输入http://...转载 2022-04-20 11:15:08 · 1268 阅读 · 0 评论 -
@RefreshScope 刷新配置使用
RefeshScope 使用实践原创 2021-11-22 16:11:37 · 5693 阅读 · 0 评论 -
JAVA @interface自定义注解快速实战
1、什么是JAVA注解从JDK5开始,Java增加对元数据的支持,也就是注解,注解与注释是有一定区别的,可以把注解理解为代码里的特殊标记,这些标记可以在编译,类加载,运行时被读取,并执行相应的处理。通过注解开发人员可以在不改变原有代码和逻辑的情况下在源代码中嵌入补充信息。2、JAVA自定义注解创建所依赖的标签@Documented表示使用该注解的元素应被javadoc或类似...转载 2019-06-13 17:17:36 · 6089 阅读 · 2 评论 -
SpringBoot+Mybatis+Elasticsearch-2.X实现高亮分词搜索
目录一、使用版本介绍二、搭建项目和ES环境1、Elasticsearch客户端搭建2、搭建SpringBoot服务及相关依赖3、Elasticsearch的分词搜索实战4、搜索方法源码分析5、分词搜索高亮实现话不多说,直接开干。一、使用版本介绍springboot :1.5.2.RELEASEspring-boot-starter-data-elast...原创 2019-03-14 15:25:43 · 5638 阅读 · 3 评论 -
第十篇: 断路器聚合监控(Hystrix Turbine)
上一篇文章讲述了如何利用Hystrix Dashboard去监控断路器的Hystrix command。当我们有很多个服务的时候,这就需要聚合所以服务的Hystrix Dashboard的数据了。这就需要用到Spring Cloud的另一个组件了,即Hystrix Turbine。一、Hystrix Turbine简介看单个的Hystrix Dashboard的数据并没有什么多大的价值,要...转载 2018-11-19 21:23:04 · 419 阅读 · 0 评论 -
第九篇: 断路器监控(Hystrix Dashboard)
在第三篇:断路器(Hystrix)讲述了如何使用断路器,并简单的介绍了下Hystrix Dashboard组件,这篇文章更加详细的介绍Hystrix Dashboard。一、Hystrix Dashboard简介在微服务架构中为例保证程序的可用性,防止程序出错导致网络阻塞,出现了断路器模型。断路器的状况反应了一个程序的可用性和健壮性,它是一个重要指标。Hystrix Dashboard是作...转载 2018-11-19 11:49:16 · 788 阅读 · 0 评论 -
第八篇: 消息总线(Spring Cloud Bus)
Spring Cloud Bus 将分布式的节点用轻量的消息代理连接起来。它可以用于广播配置文件的更改或者服务之间的通讯,也可以用于监控。本文要讲述的是用Spring Cloud Bus实现通知微服务架构的配置文件的更改。一、准备工作本文还是基于上一篇文章来实现。按照官方文档,我们只需要在配置文件中配置 spring-cloud-starter-bus-amqp ;这就是说我们需要装rab...转载 2018-11-12 22:12:21 · 200 阅读 · 0 评论 -
spring-boot & spring-cloud 教程
优先声明:本文的 Spring-Cloud主要搭建过程主要来源于以下博客史上最简单的 SpringCloud 教程 | 终章本章是为了加深个人印象,并在细节处修改,加入自己的其他引用,如要深入底层,可参看以上连接博客图文。Spring Cloud 搭建第一篇: 服务的注册与发现Eureka第二篇: 服务消费者(Feign)第三篇: 断路器(Hystrix)第四篇: 路...原创 2021-11-22 15:13:29 · 312 阅读 · 0 评论 -
第七篇: 高可用的服务注册中心
第一篇: 服务的注册与发现(Eureka) 介绍了服务注册与发现,其中服务注册中心Eureka Server,是一个实例,当成千上万个服务向它注册的时候,它的负载是非常高的,这在生产环境上是不太合适的,这篇文章主要介绍怎么将Eureka Server集群化(高可用),效果类似上一篇文章中的配置中心高可用相似。一、准备工作运用第一篇创建的注册中心 leopard-eureka ,进行配置修改...转载 2018-11-01 20:33:28 · 430 阅读 · 0 评论 -
第六篇: 高可用的分布式配置中心(Spring Cloud Config)
上一篇文章讲述了一个服务如何从配置中心读取文件,配置中心如何从远程git 或 本地读取配置文件,当服务实例很多时,都从配置中心读取文件,这时可以考虑将配置中心做成一个微服务,将其集群化,从而达到高可用,架构图如下:一、准备工作继续使用前面文章的工程(注册中心 leopard-eureka 、服务 leopard-service、配置中心 leopard-config)。修改 leo...转载 2018-10-29 20:18:59 · 216 阅读 · 0 评论 -
第五篇: 分布式配置中心(Spring Cloud Config)
在上一篇文章讲述zuul的时候,已经提到过,使用配置服一、简介在分布式系统中,由于服务数量巨多,为了方便服务配置文件统一管理,实时更新,所以需要分布式配置中心组件。在Spring Cloud中,有分布式配置中心组件spring cloud config ,它支持配置服务放在配置服务的内存中(即本地),也支持放在远程Git仓库中。在spring cloud config 组件中,分两个角色,...转载 2018-08-07 22:37:51 · 254 阅读 · 0 评论 -
第二篇: 服务消费者(Feign)
一、Feign简介Feign是一个声明式的伪Http客户端,它使得写Http客户端变得更简单。使用Feign,只需要创建一个接口并注解。它具有可插拔的注解特性,可使用Feign 注解和JAX-RS注解。Feign支持可插拔的编码器和解码器。Feign默认集成了Ribbon,并和Eureka结合,默认实现了负载均衡的效果。本章讲如何通过Feign去消费服务。简而言之:Feign 采用的是...转载 2018-08-02 22:32:07 · 255 阅读 · 0 评论 -
第四篇: 路由网关(zuul)
在微服务架构中,需要几个基础的服务治理组件,包括服务注册与发现、服务消费、负载均衡、断路器、智能路由、配置管理等,由这几个基础组件相互协作,共同组建了一个简单的微服务系统。一个简答的微服务系统如下图:在Spring Cloud微服务系统中,一种常见的负载均衡方式是,客户端的请求首先经过负载均衡(zuul、Ngnix),再到达服务网关(zuul集群),然后再到具体的服。,服务统一注册到高可用...转载 2018-08-03 23:19:06 · 255 阅读 · 0 评论 -
第三篇:断路器(Hystrix)
在微服务架构中,根据业务来拆分成一个个的服务,服务与服务之间可以相互调用(RPC),在Spring Cloud可以用RestTemplate+Ribbon和Feign来调用。为了保证其高可用,单个服务通常会集群部署。由于网络原因或者自身的原因,服务并不能保证100%可用,如果单个服务出现问题,调用这个服务就会出现线程阻塞,此时若有大量的请求涌入,Servlet容器的线程资源会被消耗完毕,导致服务瘫...转载 2018-08-03 22:29:54 · 296 阅读 · 0 评论 -
第一篇: 服务的注册与发现Eureka
一、创建服务注册中心1-1、建立maven主工程,主要引入spring-boot&spring-cloud通用依赖,之后的项目模块都会引入此项目依赖。pom.xml 文件如下:<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-ins...转载 2018-07-30 23:53:32 · 321 阅读 · 0 评论 -
spring Bean基本配置及注解
针对于资源文件的统一接口ResourcesUrlResource:URL对应的资源,根据一个URL地址即可构建ClassPathResource:获取类路径下的资源文件FileSystemResource:获取文件系统里面的资源ServletContextResource:ServletContext封装的资源,用于访问ServletContext环境下的资源InputSt原创 2016-03-21 12:00:44 · 554 阅读 · 0 评论