自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(24)
  • 收藏
  • 关注

原创 即时通讯 离线消息处理初版

向redis添加未送达消息用户登录时触发离线消息发送。

2024-10-22 20:56:28 306

原创 Mycat2安装配置

目前mycat2下载地址已经不可访问,安装包可从参考资料[1]获取下载后解压zip文件,将jar放在lib目录下。

2024-10-22 19:53:59 301

原创 即时通讯代码优化

在进行测试时,发现当前代码有个问题,如果test1在服务器进行连接,本地的test2给test1发消息,虽然test1能收到服务器上的信息,但是本地服务日志中会报teset1不在线,需要对该种情况进行修复修复方案:使用redis存储在线用户利用setBit记录登录用户,key为用户名的hashcode,即便有可能冲突,但是概率较小,可以接受。适配改变类型后的WEB_SOCKET_ENDPOINT_MAP,并调整代码结构。

2024-10-18 17:22:09 537

原创 即时通讯增加kafka渠道

此次给im服务增加kafka渠道,刚好最近有对SpringCloudStream进行了解,刚好用来练练手。

2024-10-17 20:59:27 458

原创 即时通讯增加Redis渠道

初版im只支持单机版,不支持分布式的情况,此次针对该情况对项目进行优化,文档中贴出的代码非完整代码,可自行查看[2]

2024-10-15 19:27:16 559

原创 基于WebSocket实现简易即时通讯功能

其原因为Spring的bean管理是单例的,但是WebSocket是多对象的,当新用户进入系统时,会创建一个新的WebSocketEndpoint对象,但是不会再注入WebSocketMessageService,这样就会导致其为null。若想解决该问题,可以使用static修饰WebSocketMessageService,static修饰的对象属于类,而非实例,其在类加载时即可进行初始化。例如,本次实例demo的ws连接如下,userName为自定义参数,测试使用,非必须,根据自身需求调整即可。

2024-10-10 20:03:06 872

原创 arthas简单应用

项目上某个接口响应时间过长,需要查看方法耗时情况进行优化。

2024-09-26 20:36:27 793 1

原创 利用Idea远程调试

注意:远程调试不要应用在正式环境中,即便是测试环境也只建议在开发网段使用在实际的开发过程中,为了验证测试环境的一些问题,且问题在本地不可复现,可以使用远程debug的形式来进行问题定位,而不用循环进行加日志->定位问题这个过程。

2024-09-12 15:05:20 477

原创 Windows下Nacos搭建与测试

进入,下载想要下载的版本,本次是为了验证一个2.1.2版本nacos配置中心中扩展配置的问题,所以选择了2.1.2下载后是一个zip压缩包,可自行解压缩。

2024-08-30 10:33:15 656

原创 Swagger

这里有个问题,正常的分布式微服务项目可能有很多个服务,每一个微服务对应一个地址使用起来比较麻烦,那么能不能把所有服务的文档在一个swagger-ui中显示呢,答案是肯定的,下面来说明下实现方案。实现思路其实就是从注册中心获取各个微服务,然后通过网关去访问各个服务的/v2/api-docs接口,通过网关访问可能会有跨域报错,解决方案可参考。同时swagger上可能不想访问到某些服务的文档,像gateway,一般不会有业务接口写到gateway上,因此也需要支持排除功能。首先让我们定位下上图中的两个接口。

2024-08-29 17:37:24 1242

原创 Gateway解决跨域问题

正常学习测试无需CusGatewayProperties类,该类只是实现可以在yml中配置的功能,直接将CusGatewayConfiguration中的相关属性替换成yml中想配置的值即可。

2024-08-29 11:37:28 495

原创 Gateway报错TooLongHttpLineException解决方案

feign调用get接口时,gateway报错io.netty.handler.codec.http.TooLongHttpLineException: An HTTP line is larger than 4096 bytes。postman访问状态码为414。

2024-08-28 10:01:27 1570

原创 Centos安装配置Git

记录密匙存放位置(本次安装为/root/.ssh/id_rsa)

2024-08-21 16:49:14 346

原创 Centos环境下安装配置Maven

变更maven文件夹名称(非必须)

2024-08-21 15:02:38 316

原创 Nexus

不以管理员模式运行可能会报错Could not open SCManager.注意:nexus.exe /start后需等待nexus启动完成后才能访问,而不是出现了Starting service 'nexus'就能访问点击登录会提示密码所在位置。

2024-08-20 11:48:25 545

原创 Centos安装配置SqlServer

可以根据navicat版本的不同在navicat的安装目录运行sqlncli_x64.msi或者msodbcsql_64.msi。application.yml中的url添加encrypt=false;连接前需放行相应端口,默认为1433。

2024-08-19 19:30:19 708

原创 Centos安装配置Docker

验证docker是否安装成功。查看docker状态。查看docker版本。查看docker镜像。删除docker镜像。

2024-08-16 11:20:53 278

原创 Gateway

【代码】Gateway。

2024-08-15 13:50:28 308

原创 Eureka搭建

登录后查看注册中心,会发现业务服务已经下线,这是因为业务服务也需要认证。,业务服务已经注册上了。重启项目,查看注册中心。

2024-08-14 14:41:36 684

原创 FFMPEG压缩视频

本次我选择的是ffmpeg-release-full.7z。

2024-08-13 19:39:06 658

原创 Centos安装配置Redis6.x

redis.conf中需要变更的部分(比较简单的配置,其余配置可自行搜索)redis6新增了用户名密码验证的方式,我们可以先看下默认的用户列表。在redis.conf中禁用default用户,新建新用户。

2024-08-08 11:33:38 301

原创 SpringSecurity基础学习-功能完善

在数据库中手动维护用户信息是不合理的,同时数据库中存储明文密码也很容易出问题,因此注册接口是一个必须的接口。

2024-07-18 13:57:25 382

原创 SpringSecurity基础学习-权限认证

SpringSecurity除了身份认证之外,还支持授权管理,其授权维度分为两类:role、authority。

2024-07-02 20:29:55 1152

原创 SpringSecurity基础学习-身份认证

SpringSecurity基础学习笔记

2024-07-01 19:51:15 1048 2

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除