redis 验证消息队列也是写磁盘的
# 下面的例子将会进行把数据写入磁盘的操作:
# 900秒(15分钟)之后,且至少1次变更
# 300秒(5分钟)之后,且至少10次变更
# 60秒之后,且至少10000次变更
#
# 注意:你要想不写磁盘的话就把所有 "save" 设置注释掉就行了。 save 900 1
save 300 10
save 60 10000 redis01:/data01/redis# cat /etc/redis.conf | grep mem
redis01:/data01/redis# cat /etc/redis.conf | grep save
save 10 1
save 300 10
save 60 10000
stop-writes-on-bgsave-error yes 如果启用如上的快照(RDB),在一个存盘点之后,可能磁盘会坏掉或者权限问题,redis将依然能正常工作 stop-writes-on-bgsave-error yes 关于maxmemory的设置,如果redis的应用场景是作为db使用,那不要设置这个选项,因为db是不能容忍丢失数据的。
如果作为cache使用,则可以启用这个选项(其实既然有淘汰策略,那就是cache了。。。) 指定Redis最大内存限制,Redis在启动时会把数据加载到内存中,达到最大内存后,Redis会先尝试清除已到期或即将到期的Key,
# 当此方法处理后,仍然到达最大内存设置,将无法再进行写入操作,但仍然可以进行读取操作。
# Redis新的vm机制,会把Key存放内存,Value会存放在swap区 /*****************测试: [elk@zjtest7-frontend config]$ cat logstash_agent.conf
input {
stdin { type => "uat_test_scan"
} } output {
if [type] == "uat_test_scan"{
redis {
host => "192.168.32.67"
data_type => "list"
key => "uat_test_scan:redis"
port=>"6379"
password => "1234567"
}
}
} [elk@zjtest7-frontend config]$ ../bin/logstash -f logstash_agent.conf
Settings: Default pipeline workers: 1
Pipeline main started
aaaaaaaaaaa 127.0.0.1:6379> LLEN "uat_test_scan:redis"
(integer) 1 此时队列深度为1 取走消息:
127.0.0.1:6379> BLPOP "uat_test_scan:redis" 1
1) "uat_test_scan:redis"
2) "{\"message\":\"aaaaaaaaaaa\",\"@version\":\"1\",\"@timestamp\":\"2016-09-23T05:01:16.766Z\",\"type\":\"uat_test_scan\",\"host\":\"0.0.0.0\"}"
127.0.0.1:6379> BLPOP "uat_test_scan:redis" 2
(nil)
(2.04s)
127.0.0.1:6379> LLEN "uat_test_scan:redis"
(integer) 0 重启redis后 消息仍旧在
127.0.0.1:6379> LLEN "uat_test_scan:redis"
(integer) 1
127.0.0.1:6379> BLPOP "uat_test_scan:redis" 2
1) "uat_test_scan:redis"
2) "{\"message\":\"3131313\",\"@version\":\"1\",\"@timestamp\":\"2016-09-23T05:15:30.601Z\",\"type\":\"uat_test_scan\",\"host\":\"0.0.0.0\"}" # 注意:你要想不写磁盘的话就把所有 "save" 设置注释掉就行了。 save 900 1
save 300 10
save 60 10000
重启前:
127.0.0.1:6379> auth 1234567
OK
127.0.0.1:6379> keys *
1) "\xac\xed\x00\x05t\x00!message_left:20160825:15950503897"
2) "\xac\xed\x00\x05t\x00\x18contract_rebuild_qty:417"
3) "uat_test_scan:redis"
4) "\xac\xed\x00\x05t\x00!message_left:20160630:18158464881"
5) "\xac\xed\x00\x05t\x00\x18contract_rebuild_qty:422"
6) "\xac\xed\x00\x05t\x00Dapp_permission_cache:com.zjzc.common.vo.permission.AppPermissionBean"
7) "logstash-demochan"
8) "\xac\xed\x00\x05t\x00!message_left:20160815:18957143393"
9) "\xac\xed\x00\x05t\x00\x18contract_rebuild_qty:423"
10) "aa"
11) "\xac\xed\x00\x05t\x00\x18contract_rebuild_qty:427"
127.0.0.1:6379> LLEN "uat_test_scan:redis"
(integer) 1
127.0.0.1:6379>
redis01:/etc/init.d# ps -ef | grep redis
root 18595 1 0 13:36 ? 00:00:00 /usr/local/bin/redis-server *:6379
root 18604 17672 0 13:36 pts/0 00:00:00 grep redis
redis01:/etc/init.d# kill -9 18595
redis01:/etc/init.d# ps -ef | grep redis 重启后: 127.0.0.1:6379> keys *
1) "\xac\xed\x00\x05t\x00!message_left:20160630:18158464881"
2) "\xac\xed\x00\x05t\x00!message_left:20160825:15950503897"
3) "\xac\xed\x00\x05t\x00\x18contract_rebuild_qty:423"
4) "aa"
5) "\xac\xed\x00\x05t\x00Dapp_permission_cache:com.zjzc.common.vo.permission.AppPermissionBean"
6) "\xac\xed\x00\x05t\x00\x18contract_rebuild_qty:427"
7) "\xac\xed\x00\x05t\x00\x18contract_rebuild_qty:422"
8) "\xac\xed\x00\x05t\x00!message_left:20160815:18957143393"
9) "\xac\xed\x00\x05t\x00\x18contract_rebuild_qty:417"
10) "logstash-demochan" 验证消息队列也是写磁盘的
redis 验证消息队列也是写磁盘的的更多相关文章
- Redis作为消息队列服务场景应用案例
NoSQL初探之人人都爱Redis:(3)使用Redis作为消息队列服务场景应用案例 一.消息队列场景简介 “消息”是在两台计算机间传送的数据单位.消息可以非常简单,例如只包含文本字符串:也可以更 ...
- Redis 做消息队列
一般来说,消息队列有两种场景,一种是发布者订阅者模式,一种是生产者消费者模式.利用redis这两种场景的消息队列都能够实现.定义: 生产者消费者模式:生产者生产消息放到队列里,多个消费者同时监听队列, ...
- 基于Redis的消息队列php-resque
转载:http://netstu.5iunix.net/archives/201305-835/ 最近的做一个短信群发的项目,需要用到消息队列.因此开始了我对消息队列选型的漫长路. 为什么选型会纠结呢 ...
- 程序员过关斩将--redis做消息队列,香吗?
Redis消息队列 在程序员这个圈子打拼了太多年,见过太多的程序员使用redis,其中一部分喜欢把redis做缓存(cache)使用,其中最典型的当属存储用户session,除此之外,把redis作为 ...
- redis resque消息队列
Resque 目前正在学习使用resque .resque-scheduler来发布异步任务和定时任务,为了方便以后查阅,所以记录一下. resque和resque-scheduler其优点在于功能比 ...
- 【springboot】【redis】springboot+redis实现发布订阅功能,实现redis的消息队列的功能
springboot+redis实现发布订阅功能,实现redis的消息队列的功能 参考:https://www.cnblogs.com/cx987514451/p/9529611.html 思考一个问 ...
- 【Redis】php+redis实现消息队列
在项目中使用消息队列一般是有如下几个原因: 把瞬间服务器的请求处理换成异步处理,缓解服务器的压力 实现数据顺序排列获取 redis实现消息队列步骤如下: 1).redis函数rpush,lpop 2) ...
- Lumen开发:结合Redis实现消息队列(1)
1.简介 Lumen队列服务为各种不同的后台队列提供了统一的API.队列允许你推迟耗时任务(例如发送邮件)的执行,从而大幅提高web请求速度. 1.1 配置 .env文件的QUEUE_DRIVER选项 ...
- Redis除了做缓存--Redis做消息队列/Redis做分布式锁/Redis做接口限流
1.用Redis实现消息队列 用命令lpush入队,rpop出队 Long size = jedis.lpush("QueueName", message);//返回存放的数据条数 ...
随机推荐
- 型牌男装施春蕾:分拆让马云对淘宝定位更清晰--互联网 -- CCTIME飞象网
型牌男装施春蕾:分拆让马云对淘宝定位更清晰--互联网 -- CCTIME飞象网 型牌男装施春蕾:分拆让马云对淘宝定位更清晰 2011年6月17日 13:16 CCTIME飞象网 ...
- UVa 116: Undirectional TSP
简单动态规划题.用取模实现第一行与最后一行连续,注意取字典序即可. 我的解题代码如下: #include <iostream> #include <cstdio> #inclu ...
- C#_Test
using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace Plus ...
- 关于javax.crypto.BadPaddingException: Blocktype错误的几种解决方法
此文章转载自:http://www.myexception.cn/mobile/1259076.html 关于javax.crypto.BadPaddingException: Blocktype异常 ...
- java Date获取 年月日时分秒
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 3 ...
- hdu2795Billboard(线段树)
http://acm.hdu.edu.cn/showproblem.php?pid=2795 单点更新,树存储的为某一行内剩余的长度 // File Name: hdu2795.cpp // Auth ...
- WSAWaitForMultipleEvents()
简述:只要指定事件对象中的一个或全部处于有信号状态,或者超时间隔到,则返回. #include <winsock2.h> DWORD WSAAPI WSAWaitForMultipleEv ...
- 判断是否是IP地址
static bool IsIP(QString IP) { QRegExp RegExp("((2[0-4]\\d|25[0-5]|[01]?\\d\\d?)\\.){3}(2[0-4]\ ...
- [A Top-Down Approach][第一章 计算机网络和因特网]
[A Top-Down Approach][第一章 计算机网络和因特网] 标签(空格分隔): 计算机网络 介绍基本术语和概念 查看构成网络的基本硬件和软件组件. 从网络的边缘开始,考察在网络中运行的端 ...
- Intent MIME 打开各种类型的文件
使用 public class MainActivity extends ListActivity { public static final String path = Environmen ...