【Redis】linux开放Redis服务配置
场景
配置远程redis服务,使得本地能连接方便查看缓存数据
配置
通过以下步骤来确保远程 Redis 服务器配置正确,允许外部访问
编辑Redis配置文件:
在远程服务器上找到 redis.conf 文件。通常在
/etc/redis/redis.conf 或 /etc/redis.conf
目录下。
1sudo vim /etc/redis/redis.conf
修改 bind 设置:
找到 bind 配置项,并将 127.0.0.1 其设置为
0.0.0.0,允许所有 IP 地址连接。找到类似于以下内容的行:
1bind 0.0.0.0
检查 protected-mode 设置
确保 protected-mode 设置为
no,允许外部访问。如果 protected-mode 设置为
yes,即使 bind 设置为
0.0.0.0,也可能会阻止外部连接。
1protected-mode no
重启 Redis 服务:
1234# 重启redis服务sudo systemctl restart redis# 查看redis服务状态sudo s ...
【Feign】SpringBoot单元测试Feign调用前拦截认证
场景
A服务与B服务都注册到nacos中,A服务由于业务功能调用B服务的功能,因此A服务会远程调用B服务。
而此处B服务(系统)采用了SpringSecurity 做了认证,因此A服务需要在Fegin调用B服务前需要获取认证令牌(Token)
解决方案
A服务配置一个拦截器,当使用Fegin调用前,需要在请求头上加上Token(获取Token方式采用HttpClient)
配置
下面为A服务(系统)需要添加的配置:
Feign 客户端
12345678// b服务订单FeignClient@FeignClient(name = "b-service-name")public interface OrderFeignService { @GetMapping("/api/orderInfos") List<orderInfoVO> getOrderInfos();}
过滤器
123456789101112131415161718192021222324252627282930313 ...
【SSE】Spring Boot集成sse实现消息实时推送
概念
SSE(Server-Sent
Events)是一种允许服务器向客户端推送实时数据的技术,它建立在
HTTP 和简单文本格式之上,提供了一种轻量级的服务器推送方式,通常也被称为“事件流”(Event
Stream)。他通过在客户端和服务端之间建立一个长连接,并通过这条连接实现服务端和客户端的消息实时推送。
特性
简单性:SSE 使用简单的 HTTP 协议,通常建立在标准的
HTTP 或 HTTPS
连接之上。这使得它对于一些简单的实时通知场景非常适用,特别是对于服务器向客户端单向推送数据。
兼容性:SSE
在浏览器端具有较好的兼容性,因为它是基于标准的 HTTP
协议的。即使在一些不支持 WebSocket 的环境中,SSE 仍然可以被支持。
适用范围:SSE
适用于服务器向客户端单向推送通知,例如实时更新、事件通知等。但它仅支持从服务器到客户端的单向通信,客户端无法直接向服务器发送消息。
WebSocket
全双工通信: WebSocket
提供了全双工通信,允许客户端和服务器之间进行双向实时通信。这使得它适用于一些需要双向数据交换的应用,比如在 ...
【uniPush】SpringBoot集成uniPush推送服务
介绍
UniPush
是个推(Getui)推出的一项推送服务。它是一个多平台推送解决方案,旨在帮助开发者统一管理和发送推送通知,无论用户使用的是
Android、iOS 还是其他平台的设备。
主要特点和功能
多平台支持:UniPush 支持 Android、iOS
等主流平台,开发者只需要集成一次 SDK,就能实现跨平台的消息推送。
高送达率:个推的推送服务以高送达率著称,通过精准的推送通道和智能的推送策略,确保消息能够及时送达用户设备。
精准推送:支持根据用户标签、地理位置、行为等信息进行精准推送,提高消息的有效性和转化率。
实时统计:提供详尽的推送统计报告,开发者可以实时查看推送的送达率、点击率等数据,优化推送策略。
丰富的消息类型:支持文本消息、富媒体消息(图片、音频、视频)等多种形式的消息推送,满足不同应用场景的需求。
开发者友好:提供简单易用的 API 和
SDK,快速集成到应用中。同时,个推提供详细的文档和技术支持,帮助开发者解决集成过程中的问题。
多种推送策略:包括定时推送、地理围栏推送、用户分群推送等,开发者可以根据业务需求灵活选择合适的推送策 ...
【MapStruct】基于MapStruct实现类之间转换
介绍
MapStruct
是一个注解处理器,它可以在编译时自动生成实现对象之间映射的代码。它通过使用注解来定义映射关系,减少了手动编写转换代码的繁琐工作
使用场景
用于将不同类型的对象相互转换(例如从实体对象到数据传输对象DTO,或者从实体对象到视图对象VO)
使用
在 Spring Boot 项目中使用的步骤如下
引入 MapStruct
maven
使用 Maven 构建工具,可以在 pom.xml 中添加以下依赖
1234567891011<dependency> <groupId>org.mapstruct</groupId> <artifactId>mapstruct</artifactId> <version>1.5.3.Final</version></dependency><dependency> <groupId>org.mapstruct</groupId> <artifactId ...