- 博客(382)
- 收藏
- 关注
转载 Redis 的 5 个常见使用场景
本文由 伯乐在线 - 刘晓鹏 翻译,黄利民 校稿。未经许可,禁止转载!英文出处:Joe Engel。欢迎加入翻译组。在这篇文章中,我们将阐述 Redis 最常用的使用场景,以及那些影响我们选择的不同特性。1、会话缓存(Session Cache)最常用的一种使用Redis的情景是会话缓存(session cache)。用Redis缓存会话比其他存储(如Memcached
2017-02-15 10:20:28 293
转载 Redis pub/sub(Publish,Subscribe)
目录Redis pub/sub(Publish,Subscribe)1、 Pub/Sub功能2、 Pub/Sub机制3、 Pub/Sub 在redis当中的实现4、 Php-redis扩展测试5、 Redis pub/sub python客户端测试6、
2017-02-14 19:03:25 1403
转载 三、Redis基本操作——List
小喵的唠叨话:前面我们介绍了Redis的string的数据结构的原理和操作。当时我们提到Redis的键值对不仅仅是字符串。而这次我们就要介绍Redis的第二个数据结构了,List(链表)。由于List在原理上的实现并不是特别的复杂,我们在这里将原理和具体的命令都放在一起介绍。 小喵的个人博客地址: http://www.miaoerduo.com/ ,欢迎随时骚扰~该博客原
2017-02-14 18:54:42 1045
转载 二、Redis基本操作——String(实战篇)
小喵万万没想到,上一篇博客,居然已经被阅读600次了!!!让小喵感觉压力颇大。万一有写错的地方,岂不是会误导很多筒子们。所以,恳请大家,如果看到小喵的博客有什么不对的地方,请尽快指正!谢谢! 小喵的唠叨话:上一篇博客,我们详细的介绍了Redis 中String数据类型的底层实现(http://www.cnblogs.com/idiotgroup/p/5450157.html),相信
2017-02-14 18:53:18 523
转载 一、Redis基本操作——String(原理篇)
小喵的唠叨话:最近京东图书大减价,小喵手痒了就买了本《Redis设计与实现》[1]来看看。这里权当小喵看书的笔记啦。这一系列的模式,主要是先介绍Redis的实现原理(可能很大一部分会直接照搬原作者的描述),加上小喵自己的想法,之后配合Redis官网上的各种相关的操作命令(原书上貌似没有很多的介绍命令)。 小喵的个人博客地址: http://miaoerduo.com, 随时欢迎各位的大驾。
2017-02-14 18:51:34 300
转载 Linux之redis服务
redis简介redis单纯程模型,支持主从模式,提高可用性,是一个开源项目,经常用来当一个数据结构服务器。其是内存级别的缓存服务器并可实现持久化功能. 据称一百万的变量存储(字串)占用100M内存空间,单台redis服务器可达到5万并发的能力。redis与memcache的对比redis的优势支持丰富的操作主从复制和集群就地更新操作支持持久化(磁盘),避免雪崩
2017-02-14 18:44:47 401
转载 Redis的订阅发布机制
Redis 通过 PUBLISH 、 SUBSCRIBE 和 PSUBSCRIBE 等命令实现发布和订阅功能。 这些命令被广泛用于构建即时通信应用,比如网络聊天室(chatroom)和实时广播、实时提醒等。 本文通过分析 Redis 源码里的 pubsub.c 文件,了解发布和订阅机制的底层实现,籍此加深对 Redis 的理解。 订阅、发布和退订 在开始研究源码之前,不妨先来回
2017-02-14 18:24:34 380
转载 发布者&订阅者模型
发布者和订阅者模型是软件架构中的消息模式。1. 第一种是1:n,一个发布者对应多个订阅者。例如汇率和RSS网站。2. 第二种是n:1,多个发布者对应一个订阅者。例如收集状态,历史记录和数据。3. 第三种是1:1,特定发布者对应特定订阅者。例如价格报价。4. 第四种是n:n,多个发布者对应多个订阅者。例如微博的话题。而在中间的booker的实现方式有第
2017-02-14 18:11:03 1001
转载 CYQ.Data V5 分布式缓存Redis应用开发及实现算法原理介绍
前言:自从CYQ.Data框架出了数据库读写分离、分布式缓存MemCache、自动缓存等大功能之后,就进入了频繁的细节打磨优化阶段。从以下的更新列表就可以看出来了,3个月更新了100条次功能:1234567891011121314151
2017-02-14 18:00:28 638
转载 浅谈C#网络编程(二)
阅读目录:异步IO非阻塞式同步IO基于回调的异步IO并发异步IO上篇提到用多线程处理多个阻塞同步IO而实现并发服务端,这种模式在连接数量比较小的时候非常适合,一旦连接过多,性能会急速下降。 在大多数服务端网络软件中会采用一种异步IO的方式来提高性能。同步IO方式:连接Receive请求->等待->等待->接收成功异步IO方式:连接Receive请求->立即返回->事件或回调
2017-02-14 17:46:14 595
转载 浅谈C#网络编程(一)
阅读目录:基础Socket编程多线程并发阻塞式同步IO基础在现今软件开发中,网络编程是非常重要的一部分,本文简要介绍下网络编程的概念和实践。Socket是一种网络编程接口,它是对传输层TCP、UDP通信协议的一层封装,通过友好的API暴露出去,方便在进程或多台机器间进行网络通信。Socket编程在网络编程中分客户端和服务端两种角色,比如通过打开浏览器访问到挂在Web
2017-02-14 17:45:04 267
转载 Redis系列(九):高可用分布式内部交流
这是上月在公司内部的一次分享,现把PPT及交流内容整理成博客。阅读目录:高可用数据同步分布式分布式集群时代总结高可用高可用(High Availability),是当一台服务器停止服务后,对于业务及用户毫无影响。 停止服务的原因可能由于网卡、路由器、机房、CPU负载过高、内存溢出、自然灾害等不可预期的原因导致,在很多时候也称单点问题。解决单点问题主要有2种方式:主备方式
2017-02-14 17:40:38 380
转载 Redis系列(八):分布式锁服务
阅读目录:概述分布式锁多实例分布式锁总结概述在多线程环境下,通常会使用锁来保证有且只有一个线程来操作共享资源。比如:object obj = new object();lock (obj) { //操作共享资源 }利用操作系统提供的锁机制,可以确保多线程或多进程下的并发唯一操作。但如果在多机环境下就不能满足了,当A,B两台机器同时操作C机器的共享资源时,就需
2017-02-14 17:39:18 337
转载 Redis系列(七):性能问题排查解决手册
阅读目录:性能相关的数据指标内存使用率used_memory命令处理总数total_commands_processed延迟时间内存碎片率回收key总结性能相关的数据指标通过Redis-cli命令行界面访问到Redis服务器,然后使用info命令获取所有与Redis服务相关的信息。通过这些信息来分析文章后面提到的一些性能指标。info命令输出的数据可分为10个类别,分别是:
2017-02-14 17:37:55 349
转载 Redis系列(六):SortedSets设计技巧
阅读目录:介绍Score占位更多位信息总结介绍Redis Sorted Sets是类似Redis Sets数据结构,不允许重复项的String集合。不同的是Sorted Sets中的每个成员都分配了一个分数值(score),它用于在Sorted Sets中进行成员排序,从最小值到最大值。Sorted Sets中所有的成员都是唯一的,其分数(score)是可以重复的,即是说一个分数可
2017-02-14 17:35:40 542
转载 Redis系列(五):Opserver的监控
阅读目录:基本介绍使用配置部署实例面板属性基本介绍Opserver是Stack Exchange的一个开源监控系统,基于Net、MVC开发,所以Net程序员可以轻松基于它二次开发。它主要监控:serversSQL clusters/instancesrediselastic searchexception logshaproxyOpserver提供详细的面板,用来快速展
2017-02-14 17:33:59 526
转载 Redis系列(四):低成本高可用方案设计
关于Redis高可用方案,看到较多的是keepalived、zookeeper方案。 keepalived是主备模式,意味着总有一台浪费着。zookeeper工作量成本偏高。 本文主要介绍下使用官方sentinel做redis高可用方案的设计。阅读目录:Redis Sentinel故障转移消息接收的3种方式整体流程图总结Redis SentinelSentinel介绍Sen
2017-02-14 17:32:12 376
转载 Redis系列(三):Redis发布订阅及客户端编程
阅读目录发布订阅模型Redis中的发布订阅客户端编程示例0.3版本Hredis发布订阅模型在应用级其作用是为了减少依赖关系,通常也叫观察者模式。主要是把耦合点单独抽离出来作为第三方,隔离易变化的发送方和接收方。发送方:只负责向第三方发送消息。(杂志社把读者杂志交给邮局)接收方:被动接收消息。(1:向邮局订阅读者杂志,2:门口去接邮过来的杂志)第三方作用是:存储订阅杂志的
2017-02-14 17:30:05 1189
转载 Redis系列(二):Hredis客户端设计及开源
接上篇c#实现redis客户端(一),重新整理些了下。阅读目录:项目说明Hredis设计图 单元测试场景 总结项目说明 背景:因为有地方要用,而又没找到对sentinel良好支持的Net客户端,所以就简单重写了个。 目标:尽可能的简单,轻量级,不进行过度的封装,使用方便。 代码说明: 1. 与Redis服务端的Socket通信、协议格式封装
2017-02-14 17:20:42 1132
转载 Redis系列(一):c#实现redis客户端
最近项目使用中要改造redis客户端,看了下文档,总结分享一下。阅读目录:协议规范基础通信状态命令set、get命令管道、事务总结协议规范redis允许客户端以TCP方式连接,默认6379端口。传输数据都以\r\n结尾。请求格式*\r\n$\r\n\r\n例:*1\r\n$4\r\nINFO\r\n响应格式1:简单字符串,非二进制安全字符串,一般是状态回
2017-02-14 17:17:33 2332
转载 操作系统总结
摘要: 本文总结回顾操作系统的知识点,将其串起来,方便复习本科时候,学了操作系统,只知道很多知识,什么页面置换,什么寻道算法,什么先来先服务,什么检查死锁,但是想将这些知识点串起来,就没了头绪。也怪当时没有好好学习,只是为了应付考试,没有系统性的了解。本文就将系统性的串联起那些知识点,方便复习和回顾。本文适合已经有操作系统基础的同学,一起回顾知识,本文并不详细讲解每个算法,本文意在
2017-02-13 19:21:31 387
转载 KeySpaceNotification 键空间通知
KeySpaceNotification 键空间通知1、Redis键淘汰机制简介在Redis中,内存的大小是有限的,所以为了防止内存饱和,需要实现某种键淘汰策略。主要有两种方法,一种是当Redis内存不足时所采用的内存释放策略。第二种是对过期键进行删除的策略,也可以在某种程度上释放内存。1.1 Redis键过期淘汰的策略当需要进行内存释放的时候,需要用某种策略对保存的的对象
2017-02-13 19:10:04 603
转载 Redis中的内存释放与过期键删除
版权声明:本文为博主原创文章,未经博主允许不得转载。目录(?)[+]简介在Redis中,内存的大小是有限的,所以为了防止内存饱和,需要实现某种键淘汰策略。主要有两种方法,一种是当Redis内存不足时所采用的内存释放策略。另一种是对过期键进行删除的策略,也可以在某种程度上释放内存。相关数据结构Redis中的数据库结构如下:
2017-02-13 19:07:35 600
转载 Redis的五种对象类型及其底层实现
版权声明:本文为博主原创文章,未经博主允许不得转载。目录(?)[+]Redis对象类型简介Redis是一种key/value型数据库,其中,每个key和value都是使用对象表示的。比如,我们执行以下代码:[plain] view plain copy print?redis>SET message
2017-02-13 18:58:55 681
转载 利用Redis 实现消息队列
版权声明:本文为博主原创文章,未经博主允许不得转载。目录(?)[+]1.用redis中的List可以实现队列,这样可以用来做消息处理和任务调度的队列2.代码模拟代码结构生产者模拟程序[java] view plain copy/** *
2017-02-13 18:49:29 2505
转载 贪食蛇的程序
版权声明:本文为博主原创文章,未经博主允许不得转载。无聊,分析了一个用C语言写的贪食蛇的程序。写的非常简练,就是函数的名字起得不是很好。[cpp] view plain copy print?#include #include #define KUAN 20 //地图的大小
2017-02-08 15:25:14 327
转载 TCP完成端口服务器构建
版权声明:本文为博主原创文章,未经博主允许不得转载。在vs2008中编译通过,vs2010应该也没有问题。使用静态MFC dll。其他配置保持默认即可。可能需要设置/MTD运行时。可以实现向指定客户端ip发送信息(该客户端必须首先连接进服务器)从指定客户端ip中取出数据。我使用C++类进行了封装,对各种异常进行了处理。进行了较
2017-02-08 14:38:47 827
转载 PECL PEAR php扩展模块的简便安装方式
版权声明:本文为博主原创文章,未经博主允许不得转载。目录(?)[+]PECL概述:PECL 的全称是 The PHP Extension Community Library ,是一个开放的并通过 PEAR(PHP Extension and Application Repository,PHP 扩展和应用仓库)打包格式来打包安装的 PHP扩展库仓
2017-02-08 14:32:24 357
转载 Pear和Pecl的区别和联系
1.相同点:Pear、Pecl都是PHP扩展模块的集合,是扩展PHP的两种方法。2.不同点:(1)PEAR(PHP Extension and Application Repository):用纯粹的PHP代码编写的函数和类代码库。是PHP的扩展代码包,所有的扩展均以PHP代码的形式出现,功能强大,安装简单,甚至可以改改就用。使用的时候,要在代码中进行Include才能够使用。简单
2017-02-08 14:20:37 838
转载 VS2015启动运行后一直发送VsHub请求(Fiddler显示)的解决方案
版权声明:本文为博主原创文章,未经博主允许不得转载。VS2015启动运行后,打开Fiddler监听接口调用实际请求(启用浏览器链接 选项已关闭),结果发现全部都是VsHub的请求(图1),想看到自己想要的请求非常难VS2015 when debugging ,it shows hundreds of calls/second to vshub in Fiddler, and bro
2017-02-06 16:25:11 760
转载 IOCP模型与网络编程
版权声明:本文为博主原创文章,未经博主允许不得转载。IOCP模型与网络编程一。前言: 在老师分配任务(“尝试利用IOCP模型写出服务端和客户端的代码”)给我时,脑子一片空白,并不知道什么是IOCP模型,会不会是像软件设计模式里面的工厂模式,装饰模式之类的那些呢?嘿嘿,不过好像是一个挺好玩的东西,挺好奇是什么东西来的,又是一个新知识啦~于是,开始去寻找一大堆
2017-02-06 15:11:16 300
转载 对于适应高版本VS下的Visual Assist X安装介绍
因为在VS2010、2012中Visual Assist X是以Extension的方式安装的,所以针对VS2010与2012需要到Extension的安装路径去和谐,但是它的和谐方法是一致的,也就是替换 VA_X.dll ,下面是不同版本的VS和谐的方法:VS2008及之前的版本:请直接将安装包中的VA_X.dll 替换掉安装目录下的那个dll文件.VS2010及2012
2017-01-23 09:47:26 3110
转载 The CATALINA_HOME environment variable is not defined correctly
版权声明:本文为博主原创文章,未经博主允许不得转载。目录(?)[+]1、问题配置Apatch Tomcat过程报错:[html] view plain copy The CATALINA_HOME environment variable is not defined correctly.Thi
2017-01-21 17:44:41 2043
转载 解决方法:该站点安全证书的吊销信息不可用。是否继续?
版权声明:本文为博主原创文章,未经博主允许不得转载。 使用IE登录邮箱、网银或者淘宝时经常会碰到“该站点安全证书的吊销信息不可用。是否继续?”等类似的信息提示安全警报。 一般出现这样的安全警报,用户不必过多的担心所处的网络环境对帐号密码造成威胁。这种情况只不过是一种突发性的系统认证错误,一般不会涉及到正真的所谓安全问题。那么出现类似情况的原因何在?细
2017-01-20 11:59:11 8644
转载 Linux下SVN常用命令
原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。http://frankiewb.blog.51cto.com/8202664/1364496 windows下的TortoiseSVN是资源管理器的一个插件,以覆盖图标表示文件状态,几乎所以命令都有图形界面支持,比较好用,这里就不多说。主要说说linux下svn的使用,因为li
2016-12-27 11:19:03 290
转载 C/C++混合编程与DLL库导出
原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。http://frankiewb.blog.51cto.com/8202664/1367446之所以把这两个东西放在一起是因为,C/C++混合编程主要就是涉及C的函数调入C++中使用,或者是C++的函数调入C中使用。而DLL库导出也是将DLL库中文件调出供别库或者exe使用。从这个层
2016-12-27 11:15:14 592
转载 MTD/MT/MDD/MD以及LIB/DLL之间的一些联系和问题
原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。http://frankiewb.blog.51cto.com/8202664/1362863这个话题要从哪里说起呢。博主小白一个,最近调试程序时(WIN-MSVC)连一些基本问题都没弄懂,本着遇见问题一定要解决的原则,下面来说下MTD/MT/MDD/MD以及LIB/DLL之间的一些
2016-12-27 10:36:52 1002
转载 利用Visual C++设计真彩色工具条
最终效果图 一直在寻找制作一个 24bit 及以上真彩工具条的简单有效方法,在各种VC站点都找到了很多有关这方面的文章和介绍,但是都存在一个不足的地方,介绍的不够详细,对初学者来说有点难度。最近终于有所发现,因此在这里将自己在制作真彩工具条方面的小经验介绍给大家,以期抛砖引玉。 在这里将介绍两个重点的内容,一个是制作真彩工具条的图形工具Visual toolbar,另一
2016-12-22 19:30:13 351
转载 VC真彩工具栏制作浅析
1、首先,提供一些最好的图标,大家可以省去自己绘画图标的功夫,可以从繁琐的绘图工作中解脱出来。ToYcon在线网页转换PNG-ICONhttp://converticon.com/一个非常好的ICO图标查找网站http://www.iconfinder.nethttp://www.iconlet.com/2 、其次,大家可以借鉴一些软件的BM
2016-12-22 19:14:41 349
转载 真彩图标工具栏实现类
加载此类可以实现真彩图标工具栏ToolBarEx.h文件1234567891011121314151617181920212223242526272
2016-12-22 18:00:36 603
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人