
java
小胡不吃芹菜
这个作者很懒,什么都没留下…
展开
-
Spring Boot启动的时候运行一些特定的代码
注意事项:不管是实现接口还是使用注解来实现功能,他们的类上都需要添加@Component注解。第一种:创建类,并实现ApplicationRunner接口,重写run方法。第二种:创建类,实现CommandLineRunner接口,重写run方法。第三种:注解式,创建方法,添加注解:@PostConstruct。如果你想在Spring Boot启动的时候运行一些特定的代码。原创 2022-10-15 14:42:57 · 1817 阅读 · 0 评论 -
SpringCloud之Bus的基础使用
SpringCloud Bus俗称消息总线,是用来把轻量级消息系统与分布式系统的节点连接起来的框架;它整合了java的事件处理机制和消息中间件的功能;可用于广播状态更改(如,配置更改)或其它管理指令,事件推送,也可以当作微服务间的通信通道;目前支持RabbitMQ和Kafka。 可以借助消息总线来帮你扩散消息(指令),如SpringCloud Bus配合SpringCloud Config使用可以实现配置的大量动态刷新。原创 2022-09-11 23:23:30 · 889 阅读 · 0 评论 -
SpringCloud之Config的基础使用
在分布式环境里面,很多服务都要做集群部署,那意味着这些服务都要提供一样的服务,所以它们的配置文件必须相同;所以提取一个配置文件中心,让它能够从一个中心处拉取配置文件,这样就能保证所有的配置都相同;在修改时,也只需要修改一个地方就可以了。 SpringCloud **Config为微服务架构中的微服务提供集中化的外部配置的支持;**配置服务器为各个不同的微服务应用所有环境提供了一个中心化的外部配置;Config分为服务端和客户端两部分。原创 2022-09-11 23:22:53 · 228 阅读 · 0 评论 -
SpringCloud之GateWay的基础使用
网关是微服务最边缘的服务(网关也是一个服务),直接暴露给用户,用来做用户和微服务的桥梁。 网关作为微服务架构系统的统一入口,为微服务架构系统提供简单、有效且统一的API路由管理(提供内部服务的路由中转),还可以实现一些和业务没有耦合的公用逻辑,如token拦截、权限验证,限流、监控日志等操作。 断言就是一些布尔表达式,满足条件的返回true,不满足条件的返回false。原创 2022-09-11 23:22:09 · 512 阅读 · 0 评论 -
SpringCloud之Hystrix的基础使用
1)当用户访问A服务的一个url接口时,部署A服务的tomcat会给用户分配一个线程,支持用户访问。2)A服务要完成用户的操作,又需要访问B服务。3)A服务又去访问B服务,部署B服务的tomcat会给A服务分配一个线程,支持A服务的访问。4)B服务要完成A服务的操作,又需要访问C服务。5)B服务又去访问C服务,但是C服务挂了;B服务在访问C服务之前不知道C服务挂了,B去访问,直到超时,才知道C服务无法访问。原创 2022-09-11 23:21:21 · 287 阅读 · 0 评论 -
SpringCloud之OpenFeign的基础使用
OpenFeign集成了Ribbon,Ribbon又集成了eureka,通过OpenFeign基于注解可以快速简单的开发服务客户端,并完成服务发现和客户端负载均衡。总结:1)OpenFeign是实现服务调用及负载均衡的。2)OpenFeign底层封装了ribbon – 底层还是靠ribbon完成,但是不再直面ribbon。3)OpenFeign主要是通过一套注解来玩,简单 快速。原创 2022-09-11 23:20:08 · 437 阅读 · 0 评论 -
SpringCloud之Ribbon的基础使用
Ribbon作为消费者服务的负载均衡器,有两种使用方式,一种是和RestTemplate相结合,另一种是和OpenFeign相结合,OpenFeign已经默认集成了Ribbon。通过将IRule的实现类注入IOC中,覆盖默认的轮询算法,达到更换负载均衡算法的目的。2)获取请求的url地址:http://服务名/info。6)拿到该实例的ip和port,替换原来url中的服务名。4)从服务列表中找到该名称的服务的实例集合(服务发现)第一种:修改访问指定服务使用的算法。第二种:修改访问所有服务使用的算法。原创 2022-09-07 21:17:09 · 244 阅读 · 0 评论 -
SpringCloud之Eureka组件的基本使用
eureka称为注册中心,用于注册所有的微服务的,即就是使用SpringCloud做微服务开发,所有的服务都必须注册到eureka(注册中心),这样eureka(注册中心)就可以对所有的服务做统一管理了,最终是为了做服务发现(服务调用,只有注册在同一个注册中心中的所有服务之间才可以互相调用)。原创 2022-09-06 21:30:19 · 296 阅读 · 0 评论 -
商品秒杀的基本思想,借助hutool工具包实现
这样,在页面发送秒杀url请求后,会来到controller层的方法中,再经过布隆过滤器判断传进来的用户是否已经参与过秒杀,如果参与过则退出方法,如果没有则将用户信息和商品信息传入消息队列中;再经过消费服务项目中的监听器监听对应的消息队列,对该队列的消息进行判断和业务处理。秒杀重点:已经参与过秒杀的用户不能再进行秒杀,同时每个请求到达方法后都需要获得秒杀的商品的数量,被秒杀的商品的数量不能比0少;这里判断商品数量是使用的redis判断被秒杀的商品数量,每次业务处理前会先对redis中的商品的数量减一。原创 2022-09-03 20:37:30 · 430 阅读 · 0 评论 -
RabbitMQ中延迟消息的基本用法
消息生产者将消息发送到延迟队列后,由延迟队列缓存消息,并且计算延迟发送的时间,在到时间后发送给交换机,再由交换机发往消费者监听的队列。与普通的routing模式不同的是,在消息产生者和交换机之间,多一个延迟队列来缓存需要延迟发送的消息,补充:由消息生产者传入指定的延迟时间。将死信队列与死信交换机绑定在一起。生产者往延迟队列中传入内容。原创 2022-09-03 19:31:48 · 759 阅读 · 0 评论 -
Springboot集成RabbitMQ的基础使用+基础代码演示
这里使用两个SpringBoot项目来演示使用RabbitMQ,两个项目的配置文件和需要导入的依赖基本一致。分别测试了四种工作模式,hello/work/广播/路由。这里我直接使用测试类来模拟业务原创 2022-09-02 20:34:56 · 461 阅读 · 0 评论 -
Springboot+redis的application.yml=====>>>基础====>>>配置文件
Springboot+redis的application.yml配置文件原创 2022-08-16 14:29:10 · 644 阅读 · 0 评论 -
Springboot框架整合druid数据源::application.yml配置文件
Springboot框架整合druid数据源::application.yml配置文件、.原创 2022-08-16 11:05:29 · 2113 阅读 · 1 评论 -
SpringSecurity安全框架的配置类+处理器+service
前后端分离的SpringSecurity安全框架的配置类+处理器+service+实体类。原创 2022-08-05 17:12:18 · 1082 阅读 · 0 评论 -
SpringSecurity安全框架的配置类+service
SpringSecurity安全框架的配置类====配置类+service层+实体类+controller。原创 2022-08-05 15:44:07 · 313 阅读 · 1 评论