中间件
文章平均质量分 73
Docker,Linux,Java,Springxxx
木子dn
风中的纸屑,水上的落叶。所以,全都抓住好了!
展开
-
Redis之缓存击穿问题解决方案
缓存击穿就是大量并发访问同一个热点数据,一旦这个热点数据缓存失效,则请求压力都来到数据库。原创 2024-02-21 17:42:47 · 529 阅读 · 0 评论 -
Redis之缓存雪崩问题解决方案
缓存雪崩,指大量的缓存失效,大量的请求又同时落在数据库。主要的一种诱因是key设置的过期时间都一样。原创 2024-02-21 16:03:41 · 660 阅读 · 0 评论 -
Redis之缓存穿透问题解决方案实践SpringBoot3+Docker
当一种请求,总是能越过缓存,调用数据库,就是缓存穿透。比如当请求一个数据库没有的数据,那么缓存也不会有,然后就一直请求,甚至高并发去请求,对数据库压力会增大。如果key具有某种规则,那么可以对key增加校验机制,不符合直接返回。Redisson布隆过滤器逻辑修改,当数据库没有此数据,以null为value,也插入redis缓存,但设置较短的过期时间。原创 2024-02-21 14:55:10 · 656 阅读 · 0 评论 -
Spring AMQP(3.1.1)设置ConfirmCallback和ReturnsCallback
Slf4j//交换机//支付通知队列//支付结果通知消息类型//声明交换机,且持久化// 三个参数:交换机名称、是否持久化、当没有queue与其绑定时是否自动删除//支付通知队列,且持久化//交换机和支付通知队列绑定@Bean。原创 2024-02-16 23:01:49 · 662 阅读 · 0 评论 -
Docker部署xxl-job调度器并结合SpringBoot测试
当运行分片任务时,又添加一个新的模块示例,此时分片任务会自动扩容再分配。来指定一些变量,包括数据库信息,一般需要根据自身情况修改。然后将其运行,等待一会,执行器可以看到有3个绑定的机器。文件,对数据库进行执行即可,脚本里面包含数据库的创建。创建任务之前,检查一下两个模块是否注册到指定执行器。同时,先前两个运行实例的日志发送了变化,如下。,前者区分程序端口,后者区分执行器端口。启动任务后,观察两个模块的日志。有一个信息,表示模块绑定成功。,仿照写一个简单的任务,如下。,复制到模块代码中。原创 2024-02-02 14:25:49 · 1637 阅读 · 0 评论 -
Docker多节点部署Minio分布式文件系统并测试
在这之前先去网页端,创建一个。准备如下文件夹和文件。原创 2024-01-31 20:10:03 · 731 阅读 · 0 评论 -
RabbitMQ常见问题之高可用
ha-modeha-params效果准确模式exactly队列的副本量count集群中队列副本(主服务器和镜像服务器之和)的数量。count如果为1意味着单个副本:即队列主节点。count值为2表示2个副本:1个队列主和1个队列镜像。count= 镜像数量 + 1。如果群集中的节点数少于count,则该队列将镜像到所有节点。如果有集群总数大于count+1,并且包含镜像的节点出现故障,则将在另一个节点上创建一个新的镜像。allnone队列在群集中的所有节点之间进行镜像。队列将镜像到任何新加入的节点。原创 2024-01-17 21:47:33 · 1397 阅读 · 0 评论 -
RabbitMQ常见问题之消息堆积
当生产者发送消息的速度超过了消费者处理消息的速度,就会导致队列中的消息堆积,直到队列存储消息达到上限。最早接收到的消息,可能就会成为死信,会被丢弃,这就是消息堆积问题。增加更多消费者,提高消费速度在消费者内开启线程池加快消息处理速度扩大队列容积,提高堆积上限从RabbitMQ的3.6.0版本开始,就增加了的概念,也就是惰性队列。接收到消息后直接存入磁盘而非內存消费者要消费消息时才会从磁盘中读取并加载到内存支持数百万条的消息存储。原创 2024-01-17 21:17:45 · 753 阅读 · 1 评论 -
RabbitMQ常见问题之延迟消息
这个插件只能在消息上设置延迟时间,没有队列设置延迟时间的概念,不过都是一样的。属性,指定了一个交换机,那么队列中的死信就会投递到这个交换机中,而。机制可以用死信交换机模拟延迟队列,但是设计上比较牵强,性能不好。当一个队列中的消息满足下列情况之一时,可以成为死信(直接运行测试,可能会报错,因为。这个交换机称为死信交换机(这是官方提供的一些额外插件。目录下,然后进入容器,执行。方面,消息发送的时间为。方面消息消费的时间为。原创 2024-01-17 21:11:29 · 1018 阅读 · 0 评论 -
RabbitMQ常见问题之消息可靠性
MQ生产者消息确认消息持久化消费者消息确认消费失败重试机制。原创 2024-01-17 18:55:26 · 1440 阅读 · 1 评论 -
Docker运行RabbitMQ并使用SpringAMQP操作
出现类似以下日志,消息发送成功。消费者出现类似以下日志,收到消息。在消费者服务随便新建一个。官方入门教程可以看这里。不懂的可以先继续学习。是网页后台管理系统,原创 2024-01-14 12:19:21 · 627 阅读 · 0 评论 -
多级缓存架构(五)缓存同步
通过本文章,可以完成多级缓存架构中的缓存同步。原创 2024-01-12 17:44:01 · 1090 阅读 · 0 评论 -
多级缓存架构(四)Redis缓存
通过本文章,可以完成多级缓存架构中的Redis缓存。原创 2024-01-12 17:43:18 · 890 阅读 · 1 评论 -
多级缓存架构(三)OpenResty Lua缓存
在中添加openresty1服务块。volumes:networks:这里lua对item(tb_item表)和stock(tb_stock表)两个信息都有缓存,并使用cjson库将两者合并后返回到前端。关于expire时效性的问题,如果后台改变了数据,但是openresty关于此数据的缓存未过期,前端得到的是旧数据。大致来说openresty = nginx + lua,不仅具有nginx反向代理的能力,还能介入lua程序进行扩展。原创 2024-01-12 17:42:38 · 1139 阅读 · 0 评论 -
多级缓存架构(二)Caffeine进程缓存
通过本文章,可以完成多级缓存架构中的进程缓存。原创 2024-01-12 17:41:52 · 619 阅读 · 1 评论 -
多级缓存架构(一)项目初始化
中服务ip改动,请注意一些可能关联的地方也需要做同样改动,比如。之后使用数据库连接工具连接。目录下,分别有以下文件夹。原创 2024-01-12 17:40:42 · 558 阅读 · 0 评论 -
基于Docker Compose单机实现多级缓存架构2024
多级缓存实现过程比较长,将拆分为多个文章分步讲述。如果一切顺利,大致会得到如下一个多级缓存架构:本专栏主要对Lua缓存Redis缓存Caffeine缓存进行实践,以及缓存同步实践。原创 2024-01-12 17:39:27 · 1262 阅读 · 0 评论 -
SpringBoot基于Redis(7.2)分片集群实现读写分离
首先,无论如何,得先有一个Redis分片集群,具体可以参考下面这篇文章。哨兵模式,使用上没有什么区别。搭建完成后大致得到如下图描述的一个集群。分片集群,可以参考下面这篇文章。原创 2024-01-06 20:13:15 · 1013 阅读 · 1 评论 -
Docker-Compose部署Redis(v7.2)分片集群(含主从)
搭建如下图分片+主从集群。原创 2024-01-06 17:47:08 · 1810 阅读 · 0 评论 -
SpringBoot基于哨兵模式的Redis(7.2)集群实现读写分离
SpringBoot基于哨兵模式的Redis(7.2)集群实现读写分离原创 2024-01-06 15:31:49 · 1472 阅读 · 0 评论 -
Docker-Compose部署Redis(v7.2)哨兵模式
Docker-Compose部署Redis(v7.2)主从模式首先需要有一个redis主从集群,才能接着做redis哨兵模式。原创 2024-01-05 18:20:53 · 1802 阅读 · 0 评论 -
Docker-Compose部署Redis(v7.2)主从模式
Docker-Compose部署Redis(v7.2)主从模式原创 2024-01-04 21:53:50 · 1271 阅读 · 0 评论 -
Docker单点部署Seata(2.0.0) + Nacos(v2.3.0) + Mysql(5.7)
系统环境mysqlseata三者都在bridge网络中。原创 2023-12-30 21:56:24 · 2971 阅读 · 1 评论 -
Docker单点部署[8.11.3] Elasticsearch + Kibana + ik分词器 + pinyin分词器
和Kibana版本一般需要保持一致才能一起使用,但是从8.x.x开始,安全验证不断加强,甚至8.x.x之间的版本安全验证方法都不一样,真的很恼火。这里记录一次成功简单登陆Kibana的实际经验。原创 2023-12-15 21:41:20 · 1197 阅读 · 0 评论 -
云服务器部署可视化Docker私有仓库(Ubuntu)
这里测试的机器为。原创 2023-12-12 15:39:39 · 382 阅读 · 0 评论 -
Docker Compose怎么保证其他服务在Nacos完全启动后再启动
首先,有一个关键字depends_on是可以一定程度解决services之间的依赖问题,但是depends_on仅仅只是指定了services的启动顺序,并不能保证,前置service完全启动后,后置service才启动。此时,需要另一个关键字叫。原创 2023-12-12 12:23:27 · 638 阅读 · 0 评论 -
Docker部署Nacos集群并用nginx反向代理负载均衡
找到修改为mysql:这样做的原因是防止mysql容器测试时一直报错。原创 2023-12-09 18:02:24 · 546 阅读 · 0 评论 -
云服务器Docker部署SpringBoot+Redis(Ubuntu)
参考文件夹结构。原创 2023-10-23 20:44:25 · 76 阅读 · 1 评论 -
云服务器Docker部署SpringBoot+MySQL(Ubuntu)
参考文件夹结构。原创 2023-10-23 14:39:01 · 80 阅读 · 1 评论 -
云服务器Docker部署SpringBoot+Vue前后端(Ubuntu)
本文创作环境华为云Ubuntu22.04需要具备一定Linux和Docker使用基础。原创 2023-10-21 16:50:12 · 149 阅读 · 1 评论