Karma の Blog
首页
归档
分类
标签
友链
关于
Sentinel服务保护
一、Sentinel 介绍随着微服务的流行,服务和服务之间的稳定性变得越来越重要。 https://github.com/alibaba/Sentinel[Sentinel] 以流量为切入点,从流量控制、熔断降级、系统负载保护等多个维度保护服务的稳定性。 https://github.com/alibaba/Sentinel[Sentinel] 具有以下特征: 丰富的应用场景: Sentinel
2020-05-31
2020-05
Java
SpringCloud
RabitMQ消息中间件
RabitMQ消息中间件一、介绍RabbitMQ是实现了高级消息队列协议(AMQP)的开源消息代理软件(亦称面向消息的中间件),RabbitMQ服务器是用Erlang语言编写的。 RabitMQ官方网站 1.点对点模式(简单) 2.工作模式 (能者多劳) 3.发布订阅 4.路由模式 5.topic模式(通配符) 6.RPC模式 7.发布者确定模式 二、安装 1.下载并安装erlang,下载地址
2020-05-31
2020-05
Java
中间件
RabbitMQ实战解决方案
RabbitMQ实战解决方案一、RabbitMQ死信队列 RabbitMQ死信队列俗称,备胎队列;消息中间件因为某种原因拒收该消息后,可以转移到死信队列中存放,死信队列也可以有交换机和路由key等。 产生的原因: 消息投递到MQ中存放 消息已经过期 队列达到最大的长度 (队列容器已经满了)MQ拒绝接受消息 消费者消费多次消息失败,就会转移存放到死信队列中 1.SpringBoot整
2020-05-30
2020-05
Java
中间件
Redis内存淘汰策略
Redis用作缓存时,如果内存空间用满,就会自动驱逐老的数据。 一、Redis六种淘汰策略noeviction:当内存使用达到阈值的时候,所有引起申请内存的命令会报错。 allkeys-lru:在主键空间中,优先移除最近未使用的key。(推荐) volatile-lru:在设置了过期时间的键空间中,优先移除最近未使用的key。 allkeys-random:在主键空间中,随机移除某个key。 vo
2020-05-30
2020-05
数据库
Redis实现分布式锁
一、Redis分布式锁实现思路 Redis实现分布式锁基于SetNx命令,因为在redis中key是保证是唯一的。所以当多个线程同时创建setNx时,只要谁能够创建成功谁就能获取到锁。 Set命令:每次set时,可以修改原来旧值; SetNx命令:每次SetNx检查key是否已经存在,如果已经存在的话就不会执行任何操作,返回0;反之,新增该key。 获取锁的时候:当多个线程同时创建SetNx ke
2020-05-30
2020-05
Java
数据库
Redis 自动过期机制
实现需求:处理订单过期自动取消,比如下单30分钟未支付自动更改订单状态 实现方案: 使用Redis Key自动过期触发事件通知 使用定时任务30分钟后检查 按照每分钟轮训检查 CREATE TABLE `order_number` ( `id` int(11) NOT NULL AUTO_INCREMENT, `order_name`
2020-05-30
2020-05
Java
数据库
Redis持久化机制
一、全量同步(RDB)与增量同步(AOF)的区别全量同步:每天定时(避开高峰期)或者采用一个周期实现将数据拷贝到一个地方(RDB) 增量同步:采用对行为的操作实现对数据的同步(AOF) 二、RDB与AOF实现持久化的区别Redis提供了两种持久化的机制,分别为RDB、AOF实现,RDB采用定时(全量)持久化机制,但是服务器因为某种原因宕机后可能数据会丢失,AOF是基于数据日志操作实现的持久化,所以
2020-05-30
2020-05
数据库
1
…
3
4
5
搜索
×
关键词