自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(19)
  • 资源 (9)
  • 收藏
  • 关注

转载 select、poll、epoll之间的区别总结

select,poll,epoll简介: select select本质上是通过设置或者检查存放fd标志位的数据结构来进行下一步处理。这样所带来的缺点是:1、 单个进程可监视的fd数量被限制,数组有大小限制;2 、需要维护一个用来存放大量fd的数据结构,这样会使得用户空间和内核空间在传递该结构时复制开销大;3 、对socket进行扫描

2017-06-25 18:18:52 964

转载 select()和poll()的区别是什么?

Whats thedifference between select() and poll()?原文地址:http://www.unixguide.net/network/socketfaq/2.14.shtmlFrom Richard Stevens (rstevens@noao.edu):二者根本的不同是:select()的fd_set是一个位掩码(bit mask),

2017-06-25 17:59:15 2261

转载 浅析Linux 内核空间和用户空间

内核空间和用户空间是操作系统理论的基础之一,即内核功能模块运行在内核空间,而应用程序运行在用户空间。现代的CPU都具有不同的操作模式,代表不同的级别,不同的级别具有不同的功能,在较低的级别中将禁止某些操作。Linux系统设计时利用了这种硬件特性,使用了两个级别,最高级别和最低级别,内核运行在最高级别(内核态),这个级别可以进行所有操作,而应用程序运行在较低级别(用户态),在这个级别,处理器控制着对

2017-06-23 22:55:44 326

转载 Libevent使用例子,从简单到复杂

本文从简单到复杂,展示如何使用libevent。网上的许多例子都是只有服务器端的,本文里面客户端和服务器端都有,以飨读者。        关于libevent编程时的一些疑问可以阅读《libevent编程疑难解答》。假如读者还想了解libevent的具体实现,可以阅读《libevent源码分析》系统文章。        不说这么多了,直接上代码。        

2017-06-23 09:54:23 394

转载 CRC的基本原理详解

CRC(Cyclic Redundancy Check)被广泛用于数据通信过程中的差错检测,具有很强的检错能力。本文详细介绍了CRC的基本原理,并且按照解释通行的查表算法的由来的思路介绍了各种具体的实现方法。1.差错检测数据通信中,接收端需要检测在传输过程中是否发生差错,常用的技术有奇偶校验(ParityCheck),校验和(Checksum)和

2017-06-22 15:18:00 5257 4

转载 redis-事务

我们都知道redis追求的是简单,快速,高效,在这种情况下也就拒绝了支持window平台,学sqlserver的时候,我们知道事务还算是个比较复杂的东西,所以这吊毛要是照搬到redis中去,理所当然redis就不是那么简单纯碎的东西了,但是呢,事务是我们写程序无法逃避的场景,所以redis作者折衷的写了个简化版的事务机制,下面我来扯一下它的蛋蛋。 一: 事务实战

2017-06-08 22:53:28 283

转载 redis 发布/订阅模式

本系列已经过半了,这一篇我们来看看redis好玩的发布订阅模式,其实在很多的MQ产品中都存在这样的一个模式,我们常听到的一个例子就是邮件订阅的场景,什么意思呢,也就是说100个人订阅了你的博客,如果博主发表了文章,那么100个人就会同时收到通知邮件,除了这个场景还能找到其他场景么,当然有啦,你想想,如果你要在内存里面做一个读写分离的程序,为了维持数据的完整性,你是不是需要保证在写入

2017-06-08 22:45:19 956

转载 Redis的五种存储类型和其应用场景

常用数据类型简介:redis常用五种数据类型:string,hash,list,set,zset(sorted set).1.String类型String是最简单的类型,一个key对应一个valueString类型的数据最大1G。 String类型的值可以被视作integer,从而可以让“INCR”命令族操作(incrby、decr、decrby),这种情况下,

2017-06-08 22:21:31 1056

原创 redis学习网站

http://redis.majunwei.com/   redis中文网

2017-06-08 11:43:20 297

转载 Redis Cluster部署、管理和测试

背景:      Redis 3.0之后支持了Cluster,大大增强了Redis水平扩展的能力。Redis Cluster是Redis官方的集群实现方案,在此之前已经有第三方Redis集群解决方案,如Twenproxy、Codis,与其不同的是:Redis Cluster并非使用Porxy的模式来连接集群节点,而是使用无中心节点的模式来组建集群。在Cluster出现之前,只有Sentinel

2017-06-08 10:57:01 587

转载 Redis之Sentinel高可用安装部署

背景:      之前通过Redis Sentinel 高可用实现说明和Redis 复制、Sentinel的搭建和原理说明大致已经介绍了sentinel的原理和实现,本文再次做个简单的回顾,具体的信息见前面的两篇文章说明。本文要实现的sentinel是通过2个redis数据节点和3个sentinel节点来达到高可用,目标是希望标准化Sentinel的安装部署。环境:      Re

2017-06-08 10:54:31 337

转载 Redis Sentinel 高可用实现说明

背景:     前面介绍了Redis 复制、Sentinel的搭建和原理说明,通过这篇文章大致能了解Sentinel的原理和实现方法以及相关的搭建。这篇文章就针对Redis Sentinel的搭建做下详细的说明。安装:     这里对源码编译进行一下说明,本文实例的操作系统是Ubuntu16.04,使用Redis的版本是3.2.0。安装步骤如下:下载源码包:wget htt

2017-06-08 10:49:04 590

转载 Redis3.0 配置文件说明

背景:以前有篇文章已经结果过了,现在复习一下,对Redis3.0进行说明:参数说明:#redis.conf# Redis configuration file example.# ./redis-server /path/to/redis.conf################################## INCLUDES ##############

2017-06-08 10:36:13 107

转载 Redis 复制、Sentinel的搭建和原理说明

背景:      Redis-Sentinel是Redis官方推荐的高可用性(HA)解决方案,当用Redis做Master-slave的高可用方案时,假如master宕机了,Redis本身(包括它的很多客户端)都没有实现自动进行主备切换,而Redis-sentinel本身也是一个独立运行的进程,它能监控多个master-slave集群,发现master宕机后能进行自动切换,更多的信息见前一

2017-06-08 10:31:20 351

转载 Redis Sentinel机制与用法说明【转】

概述Redis-Sentinel是Redis官方推荐的高可用性(HA)解决方案,当用Redis做Master-slave的高可用方案时,假如master宕机了,Redis本身(包括它的很多客户端)都没有实现自动进行主备切换,而Redis-sentinel本身也是一个独立运行的进程,它能监控多个master-slave集群,发现master宕机后能进行自动切换。它的主要功能有以下几点

2017-06-08 10:28:25 255

转载 NoSQL之【Redis】学习(二):配置说明

继上一篇 NoSQL之【Redis】学习(一)之后,在开始操作Redis之前,先了解redis.conf的文件:# yes:后台运行;no:不是后台运行(老版本默认)daemonize yes# redis的进程文件pidfile /var/run/redis.pid# 端口port 6379# bind_address 绑定地址的设置,和MySQL的一样,一般设置为本地地址,

2017-06-08 10:26:55 254

转载 NoSQL之【Redis】学习(一):安装说明

简介Redis是一个开源的key-value数据库,相比Memcached,他更有优势:1,内存+磁盘的持久化保存2,具有非常丰富的数据类型,尤其擅长数组类数据的高速度处理:字符串、链表、集合、有序集合、散列表3,自带的主从复制4,数据快照具体的一些信息请见:官网安装1:下载:wget http://redis.googlecode.com/

2017-06-08 10:25:47 297

转载 Redis持久化 Snapshot和AOF说明

redis是一个支持持久化的内存数据库,也就是说redis需要经常将内存中的数据同步到磁盘来保证持久化。redis支持两种持久化方式,一种是 Snapshot(RDB) 也是默认方式,另一种是Append only file(AOF)的方式。具体的理论说明请见这里。    我们应该明确持久化的数据有什么用,答案是用于重启后的数据恢复。Redis是一个内存数据库,无论是RDB还是AOF,都只

2017-06-06 23:16:39 689

转载 深度学习在推荐领域的应用

作者: 吴岸城,菱歌科技首席算法科学家,致力于深度学习在文本、图像、预测推荐领域的应用。曾在中兴通讯、亚信(中国)担任研发经理、高级技术经理等职务。 责编:何永灿,欢迎人工智能领域技术投稿、约稿、给文章纠错,请发送邮件至heyc#csdn.net(#改为@) 本文为《程序员》原创文章,未经允许不得转载,更多精彩文章请订阅《程序员》当2012年Facebook在广告领域开始应用定

2017-06-05 11:09:45 695

微服务设计(中文完整版)

过去十年中,分布式系统的粒度变得越来越细,包含大量代码的单块应用逐渐转变为自包含的微服务。但开发微服务系统也有一些让人头疼的问题。本书通过大量的例子,全面讨论了系统架构师和管理员在构建、管理和演化微服务架构时必须考虑的问题,并给出了实用的建议。

2018-05-30

重构:改善既有代码的设计

本书清晰揭示了重构的过程,解释了重构的原理和践方式,并给出了何时以及何地应该开始挖掘代码以求改善。书中给出了70多个可行的重构,每个重构都介绍了一种经过验证的代码变换手法的动机和技术。本书提出的重构准则将帮助你一次一小步地修改你的代码,从而减少了开发过程中的风险。

2018-05-24

effective c++(第3版)

《Effective C++:改善程序与设计的55个具体做法(第3版)(中文版)》内容简介:有人说C++程序员可以分为两类,读过Effective C++的和没读过的。世界项级C++大师scott Meyers成名之作的第三版的确当得起这样的评价。

2018-05-24

MYSQL必知必会

MySQL是一种关系数据库管理系统,关系数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。

2018-05-22

第一本Docker书带书签目录(完整版)

Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口。

2018-05-22

go语言圣经

Go语言专门针对多处理器系统应用程序的编程进行了优化,使用Go编译的程序可以媲美C或C++代码的速度,而且更加安全、支持并行进程。

2018-05-22

[精通正则表达式(第三版)].(美)佛瑞德.扫描版

正则表达式,又称规则表达式。(英语:Regular Expression,在代码中常简写为regex、regexp或RE),计算机科学的一个概念。正则表达式通常被用来检索、替换那些符合某个模式(规则)的文本。

2018-05-22

The_AWK_Programming_Language中文

AWK是一个优良的文本处理工具,Linux及Unix环境中现有的功能最强大的数据处理引擎之一。这种编程及数据操作语言(其名称得自于它的创始人阿尔佛雷德·艾侯、彼得·温伯格和布莱恩·柯林汉姓氏的首个字母)的最大功能取决于一个人所拥有的知识。

2018-05-22

sed与awk(第二版)

Awk、sed与grep,俗称Linux下的三剑客,它们之间有很多相似点,但是同样也各有各的特色,相似的地方是它们都可以匹配文本,其中sed和awk还可以用于文本编辑,而grep则不具备这个功用。

2018-05-22

空空如也

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

TA关注的人

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