Redis系列(1)之安装 由于项目的需要,最近需要研究下Redis。Redis是个很轻量级的NoSql内存数据库,它有多轻量级的呢,用C写的,源码只有3万行,空的数据库只占1M内存。它的功能很丰富,可以将其用作缓存,队列系统等。我们的项目就是用其作为缓存系统。关于Redis的介绍这里就不多说,.....
分类:
其他好文 时间:
2014-11-29 00:02:26
阅读次数:
209
一、DICUZ缓存机制分析:
使用缓存机制的目的很明显,降低服务器性能的消耗,对于常用且变动比较小的数据的数据,可以尽可能的使用缓存来解决,代替最原生的不断的进行数据库查询匹配的过程。而Discuz中提供的数据缓存方式包括内存、数据库、文件三种方式,具体如下。
(1)、项目根目录/config/config_global.php配置数据库/文件缓存方式,当然还有第三...
分类:
Web程序 时间:
2014-11-25 23:31:25
阅读次数:
269
redis持久化redis是一个支持持久化的内存数据库,也就是说redis需要经常将内存中的数据同步到磁盘来保证持久化。redis支持四种持久化方式,一是Snapshotting(快照)也是默认方式;二是Append-only file(缩写aof)的方式;三是虚拟内存方式;四是diskstore方...
分类:
其他好文 时间:
2014-11-23 22:50:56
阅读次数:
222
author:skatetime:2012/02/16转载一篇文章:本文提出了一种通过引入内存数据库层,建立两层多分区分布式数据库架构。此方案用于解决海量高并发系统的数据存储和访问问题,尤其适用于电子商务等数据模型复杂且业务复杂的互联网站。这些年互联网站发展迅猛,为应对海量数据下的高并发访问,产生了...
分类:
数据库 时间:
2014-11-08 14:50:06
阅读次数:
331
TimesTen内存数据库 第一章 Cache Connect to Oracle概念 TimesTen数据交换技术提供在Oracle数据库和TimesTen数据管理器之间进行连接和双向数据传送。数据交换技术也使得能够方便的捕获和处理进入到TimesTen数据管理器的大流量事件流,而且能进行并发.....
分类:
其他好文 时间:
2014-11-08 11:52:56
阅读次数:
216
在Redis服务端的代码量真的是比较大,如果一个一个API的学习怎么实现,无疑是一种效率很低的做法,所以我今天对服务端的实现代码的学习,重在他的执行流程上,而对于他的模块设计在上一篇中我已经分析过了,不明白的同学可以接着看上篇。所以我学习分析redis服务端的实现也是主要从main函数开始。在分析main执行流程之前,Redis的作者在这里声明了几个变量,这个我们有必要知道一下。
/* Our ...
分类:
其他好文 时间:
2014-11-08 10:31:44
阅读次数:
260
上次刚刚分析过了客户端的结构体分析,思路比较简答,清晰,最后学习的是服务端的实现,服务端在Redis可是重中之重,里面基本上囊括了之前模块中涉及到的所有知识点,从redis的头文件就可以看出了,redis.h代码量就已经破1000+行了,而且都还只是一些变量,宏定义的声明,和一些方法原型的声明。所以,今天的总结跟昨天一样,先不做具体的实现学习,先从全局的角度思考,服务端的整体设计思路,这从头文件的...
分类:
其他好文 时间:
2014-11-07 17:05:02
阅读次数:
149
今天学习完了命令行客户端的后续内容,整体感觉就是围绕着2个东西转,config和mode。为什么我会这么说呢,请继续往下看,客户端中的配置结构体和之前我们所学习的配置结构体,不是指的同一个概念,cli中的结构体除了基本的ip,Port端口号,还有就是各种mode的配置了。
/* Redis配置结构体 */
static struct config {
char *hostip;
...
分类:
其他好文 时间:
2014-11-07 11:25:06
阅读次数:
139
每当提到延时统计的时候,一定想到的一个名词就是”性能测试“,没错,在Redis的redis_benchmark文件中,的确用到了延迟文件中的相关信息。在Redis中的官方解释此文件:
/* The latency monitor allows to easily observe the sources of latency
* in a Redis instance using the LAT...
分类:
其他好文 时间:
2014-11-05 10:55:34
阅读次数:
363
I/O操作对于每个系统来说都是必不可少的一部分。而且I/O操作的好坏,在一定程度上也会影响着系统的效率问题。今天我学习了一下在Redis中的I/O是怎么处理的,同样的,Redis在他自己的系统中,也封装了一个I/O层。简称RIO。得先看看RIO中有什么东西喽:
struct _rio {
/* Backend functions.
* Since this functions ...
分类:
其他好文 时间:
2014-11-02 10:56:10
阅读次数:
166