自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(16)
  • 资源 (4)
  • 收藏
  • 关注

原创 redis数据库之主从复制

redis除了基本功能外,还提供了主从复制功能。一个redis服务可以有多个slave服务,而这个slave服务又可以有slave服务。

2013-08-28 11:03:26 3269 1

原创 redis数据库之rdb持久化

redis是一种内存数据库,也就是redis的数据在正常工作的情况下都是存储在内存中。但并不是说redis只能把数据存储在内存中,redis提供了两种数据持久化机制:rdb和aof。rdb持久化有三种方式被启动:用户向redis发送save或者bgsave命令。save和bgsave的不同就在于save会阻塞redis服务器,而bgsave不会。这样bgsave就在不影响redis服务器正常工作的

2013-08-20 11:06:02 2912 1

原创 nginx脚本引擎

前面讲了nginx的变量机制,今天来讲讲nginx的脚本引擎。我们以一个比较简单的例子来讲述nginx的脚本引擎。例如,我们自己定以一个变量:set $file t_a;这个set指令就会调用ngx_http_rewrite_set函数,下面来看下ngx_http_rewrite_set:static char *ngx_http_rewrite_set(ngx_conf_t *cf,

2013-08-14 23:17:04 1761

原创 nginx变量机制

在设置nginx配置文件的时候,配置文件中会出现$file等以$开头的字符串。这些以$开头的字符串在nginx中就是所谓的变量。nginx的变量分为nginx自定义的变量以及用户自定义的变量。nginx自定义的变量有很多,每个模块也可以定义自己的变量,例如ngx_http_core_variables这个就包含了很多nginx自定义的变量:static ngx_http_variable_t

2013-08-13 23:08:38 2153

原创 redis数据库之订阅和发布

订阅和发布的介绍以及原理在redis设计与实现以及讲述清楚,这里就不啰嗦了。我们的任务主要还是根据原理来分析源码。先来看下订阅和发布会用到的结构体:struct redisServer {...... dict *pubsub_channels; /* Map channels to list of subscribed clients */ list *pubsub_pa

2013-08-13 10:49:41 2003 1

原创 nginx超时事件的处理

几乎每个比较大型的系统都会有自己的一套超时事件的处理方式,nginx也不例外。nginx出于高性能的考虑,使用红黑树来管理超时的事件。这里红黑树的原理在网络中有很多文档去介绍,这里就不讲述红黑树的原理了。这篇博客值讲述nginx是怎么把事件与红黑树联系到一起的。大家都知道nginx处理事件有一个结构体:typedef struct ngx_event_s ngx_event_tstruct

2013-08-12 22:47:01 2302

原创 redis数据库之事务

redis事务的原理介绍在redis设计与实现这本书中已经讲述的非常清楚,这里就不浪费更多的时间去讲述了。这篇博客的目的主要还是结合源码来讲述redis事务的实现。如果大家对redis有点熟悉,都知道redis客户端和服务器之间的通信都是通过命令+key+值来进行通信的(内部协议的格式在以后的博客中讲述)。redis的事务也是通过命令来实现的。MULTI 事务的开始EXEC

2013-08-12 11:46:09 1679 1

原创 nginx事件模块之IO多路复用的选择

nginx是基于事件驱动的,也就是说nginx内部都是通过事件的发生来驱动的,如果没有事件,nginx就是阻塞在epoll_wait,select,sigsuspend等这样的系统调用上。各种操作系统对事件的处理及管理都是不同的。而且每种操作系统的IO多路复用的实现方式也是各不相同。而nginx是一种跨平台的高性能的web server,那它是怎样把各种操作系统的IO多路复用集合在一起,又是怎样让

2013-08-11 22:51:10 2300

原创 ipv6协议报文格式

一、ipv6的基本格式ipv6报文格式从简单性来看,比ipv4较简单,而且ipv6的基本头部的长度是固定的。相较与ipv4,ipv6去掉了一些头部,把这些头部全部弄到了后面的扩展投不中。ipv6的报文格式如下:version:4bits 版本号  ipv6为6Traffic Class: 8 bits,传输类别,可用于源节点或转寄路由器标识和区分IPV6包中的不同类

2013-08-11 10:49:50 20712

原创 ipv6协议学习----概述及地址

1、ipv6特点:解决了ipv4地址少的问题提高网络的整体吞吐量,改善服务质量,安全性更好保证,支持即插即用,支持移动性,更好实现多播功能ipv6采用128位地址长度,几乎可以不受限制地提供地址ipv6则通过内部功能利用IP Security提供数据保护。ipv6提供了安全扩展报头, 配置:访问控制列表(ACL)用于控制IPV6流量的状态化过滤或防火墙设置单播反向路径转

2013-08-11 10:42:08 1460

转载 TCP协议疑难问题集锦

原文出自:http://blog.csdn.net/dog250/article/details/66124961.网络协议设计ISO提出了OSI分层网络模型,这种分层模型是理论上的,TCP/IP最终实现了一个分层的协议模型,每一个层次对应一组网络协议完成一组特定的功能,该组网络协议被其下的层次复用和解复用。这就是分层模型的本质,最终所有的逻辑被编码到线缆或者电磁波。

2013-08-10 11:44:32 1280

原创 redis数据结构之对象

redis是一种nosql数据库,redis操作数据库都是通过相关命令来进行的。而且由于redis内存实现很多底层的数据结构,数据库存储的值也是这些数据结构。redis 每个命令都是对应相应的数据结构实现的。例如:LPUSH 和LLEN 只能用于列表键,而SADD 和SRANDMEMBER 只能用于集合键。从上面可以看出来,Redis 必须让每个键都带有类型信息,使得程序可以检查键的类型,并为它选

2013-08-09 17:37:29 2257 2

原创 redis数据结构之压缩列表

压缩列表用于存储长度受限的字符串和整数。废话不多说,直接上redis压缩列表的内存结构示意图:从图中可以看出,redis压缩列表由表示压缩列表占总内存的字节数的zlbytes,表示到达ziplist 表尾节点的偏移量的zltail,表示ziplist 中节点的数量的zllen,各个节点以及用于标记ziplist的末端的zlend。注意:zllen并不是一直表示节点的数量,只有zll

2013-08-09 13:33:35 2654 1

原创 redis数据结构之整数集合

redis的整数集合实质上是动态的数组。reids的整数集合是可以根据整数的值,自动选择用什么长度来存储的。例如:如果插入的值可以用int16_t类型来保存,那所有的元素都可以用int16_t类型来保存。所以可以看出保存的类型应该有这几种:#define INTSET_ENC_INT16 (sizeof(int16_t))#define INTSET_ENC_INT32 (sizeof(

2013-08-08 17:23:17 2148 1

原创 redis数据结构之字符串

redis字符串相对比标准c的字串是二进制安全的,也就是说如果redis的字符串中包含'\0'字符的话,还是能计算出相应字符串的长度。下面来看下redis字符串的定义:typedef char *sds;struct sdshdr { // buf 已占长度 int len; // buf 剩余可用的长度 int free; // 实际存放字符

2013-08-08 10:38:51 2386 1

原创 redis源码分析----序言

一直在redis的源码,但是很少形成笔记,理解感觉不是很深,所以决定把自己看过的源码形成文字,加深自己的理解。也希望能给想学习redis的童鞋一点帮组,如果在博文中有错误,希望大家能指出来,谢谢。

2013-08-08 10:12:01 2308 1

nginx配置学习

nginx的配置文件源码解析

2013-02-19

linux驱动详解

linux驱动设计

2012-03-23

Linux系统下的网络编程

可以学习Linux系统下的网络编程,这样就不仅可以知道网络编程,还可以学到Linux系统

2011-07-08

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除