
中间件
文章平均质量分 63
雨潇先生
Just a coder!
展开
-
Kafka acks策略/级别
acks策略是用于指定生产者要接收多少个broker的确认消息(acks)之后才认为该消息发送成功。它可以控制生产者写入数据时的持久性保证级别。原创 2023-05-20 12:38:28 · 612 阅读 · 0 评论 -
深度解析数据库连接The last packet successfully received from the server was *xxx* milliseconds ago
相信很多人都遇到过这个问题,看到提示信息,或许大家都明白这不就是获取到的数据库连接超时了嘛,没错,问题的本质也的确如此,常见的解决办法也很简单,比如说从数据库连接池中获取连接的时候判断下连接状态是否正常,这样就可以避免此类问题的发生,如果都是此问题,那么就不会再有本文来赘述问题和解决方案,下面一起来看看造成该问题的几个原因和解决方法。1.从连接池获取到超时的连接从数据库连接池获取到超时的连接,目前这种情况大多数数据库连接池中间件都有相应的处理策略,一种是定期扫描连接池中的连接,探测到失效连接后剔除功能,原创 2021-08-16 21:32:21 · 32269 阅读 · 1 评论 -
SpringBoot + RabbitMQ自定义ConnectionFacotry后,配置发送确认回调无效
问题现象由于项目需要连接到多个RabbitMQ实例或者一个实例的多个vhost上,需要自定义配置多个ConnectionFactory来区分连接,以达到可以消费或者向多个RabbitMQ实例/多个vhost发送消息。手动配置ConnectionFactory后,发现原来配置的发送确认回调无效了,ConnectionFactory的配置如下,/** * 自定义RabbitMQ不同实例/不同vhost的ConnectionFactory * @param rabbitProperties 配置文件中ra原创 2021-05-30 15:32:30 · 4611 阅读 · 2 评论 -
Redis实现在线用户列表(按登录时间排序、可查询、踢人)
Redis实现在线用户列表(按登录时间排序、可查询、踢人)前言在日常开发中,我们有时候需要对在线用户进行管理,由于登录信息是可以过期的,那么使用RDBMS存储有点不合时宜,所以NoSQL存储更为合理。网上找了一些资料,但貌似似乎都不太完备,以下为个人理解的Redis实现在线用户列表的方案。方案概述一开始,就需要考虑如何存储、使用什么数据结构。首先string,hash,set可以被排除,因为都无法满足排序问题,现在剩下list和zset,list虽然是有序的,但元素(会话ses...原创 2020-11-30 21:49:28 · 4173 阅读 · 0 评论 -
Zookeepe-找不到或无法加载主类 org.apache.zookeeper.server.quorum.QuorumPeerMain
问题说明该问题是由于下载的包不对,运行了源码包。问题解决我们需要下载bin包,即编译好的包,使用bin包解压后,执行服务启动,即可正常启动服务。其他国内华中科技大学镜像网站http://mirrors.hust.edu.cn/apache/zookeeper/,进入3.6.2的目录发现如下两个文件,下载带有bin关键字的文件。...原创 2020-11-14 13:57:42 · 644 阅读 · 0 评论 -
Redis删除大量key后,占用的系统内存却没有释放?
我们首先来看看官方关于Redis内存管理的说明。原文如下https://redis.io/topics/memory-optimization#memory-allocationMemory allocationTo store user keys, Redis allocates at most as much memory as the setting enables (however there are small extra allocations possible).maxmemory原创 2020-11-13 20:34:32 · 1798 阅读 · 0 评论 -
Canal:Could not find first log file name in binary log index file
该问题是由于Canal找不到相关的binlog文件了,此时可以通过日志找到具体解析那个binlog文件的详细信息,例如:{"identity":{"slaveId":-1,"sourceAddress":{"address":"xxx","port":3306}},"postion":{"gtid":"","included":false,"journalName":"mysql-bin.001392","position":457723502,"serverId":194,"timestamp":15原创 2020-10-30 21:51:19 · 3602 阅读 · 2 评论 -
使用logstash-input-jdbc同步MySQL数据到Elasticsearch
环境信息OS: Windows10Elasticsearch: 6.5.1Logstash: 6.5.1MySQL: 5.7.24依赖文件:mysql-connector-java-xxx.jar在进行以下操作前,假设你对elasticsearch,logstash已经有了基本的了解和使用。约定:下文中使用es或ES代指elasticsearch.环境搭建es下载地址:https...原创 2018-12-04 22:29:44 · 1737 阅读 · 0 评论 -
扩展Dubbo TelnetHandler或重写默认invoke实现
Dubbo的很多扩展都是通过其SPI机制来完成的,可以在服务启动时,使用自定义的实现来达到某些功能,这里不做SPI的介绍,需要查看可移步官网http://dubbo.apache.org/zh-cn/docs/source_code_guide/dubbo-spi.html进行查看。TelnetHandler(注意:2.7.0和之前版本的包名有所变化)主要用于客户端通过telnet 命令连接至...原创 2019-04-03 23:28:36 · 1168 阅读 · 0 评论