自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(15)
  • 资源 (10)
  • 收藏
  • 关注

原创 Redis事务

事务同命令一样,都是Redis的最小执行单位,一个事务中的命令要么都执行,要么都不执行。一、Redis事务的实现 Redis通过multi、exec、watch等命令来实现事务功能,Redis中一个事务从开始到结束包含三个阶段:事务开始、命令入队、事务执行。其中multi命令标志着事务开始,exec命令标志着事务执行,期间所有命令都会存放到事务队列中。在redis.h/r

2017-11-29 18:41:19 867

原创 Redis发布与订阅功能

发布/订阅”功能包含两种角色:发布者和订阅者。Redis的发布与订阅功能由publish、subscribe、psubscribe等命令组成。通过执行publish命令可以发布消息;通过执行subscribe命令,客户端可以订阅一个或多个频道;通过执行psubscribe命令,客户端可以订阅一个或多个模式。一、发布与订阅频道        如图所示,频道的发布与订阅功能。客户端A、B、C都

2017-11-29 18:11:10 2139

原创 Redis的集群结构

Redis集群是Redis提供的分布式数据库方案,集群通过分片(sharding)进行数据共享,并提供复制和故障转移功能。一、节点        同其他分布式的集群一样,Redis集群也是由多个相互独立的节点组成的,通过将各个相互独立的节点连接起来,构成一个包含多个节点的集群。通过CLUSTER MEET 命令,将指定节点添加当前节点所在的集群:

2017-11-29 16:49:59 689

原创 Redis的监控功能

Redis通过引入一个或多个Sentinel实例组成的Sentinel系统以监视任意多个服务器,当主服务器进入下线状态时自动将从服务器升级为新的主服务器,然后由新服务器代替已下线的主服务器处理命令请求,达到提供高可用性的解决方案。一、监控功能        Sentinel本质上是一个运行在特殊模式下的Redis服务器,所以初始化时不会载入RDB文件或者AOF文件,而是创建连向被监视主服务

2017-11-29 16:10:59 1030

原创 Redis的复制功能

Redis中,通过slaveof命令或者设置slaveof选项,让一个服务器去复制另一个服务器,从而形成主从服务器关系,具有主从关系的服务器数据库状态一致。Redis的复制功能分两个步骤实现:同步(sync)和命令传播(command propagate)。同步操作是将从服务器数据库状态更新至主服务器数据库当前所处状态;命令传播则用于主服务器的数据库状态被修改导致主从服务器的数据库状态

2017-11-29 11:54:31 525

原创 Redis中的事件

Redis服务器是一个事件驱动程序,服务器需要处理两类事件:文件事件和时间事件。一、文件事件        Redis服务器通过套接字与客户端进行连接,文件事件就是服务器对套接字操作的抽象。        文件事件是由文件事件处理器处理的。文件事件处理器以单线程方式运行,使用I/O多路复用程序监听多个套接字(既实现了高性能的网络通信模型又可以很好地与Redis服务器中其他单线程方式运行

2017-11-28 16:30:11 800

原创 Redis数据持久化

由于Redis是内存数据库,一旦服务器进程退出,服务器中的数据库状态也会消失。为解决这个问题,Redis提供了RDB快照形式、AOF日志形式两种持久化方式,将内存中的数据保存到磁盘中,以免数据意外丢失。一、RDB持久化        RDB持久化就是将服务器某个时间点上的数据库状态以快照形式保存到一个二进制文件中,在Redis服务器重新启动时可以自动载入RDB文件,还原数据库状态。有两个R

2017-11-28 15:20:02 960

原创 Redis键的生存时间和过期时间

Redis作为内存数据库,和memcached一样提供了设置键的生存时间和过期时间的功能。通过expire命令或者pexpire命令实现秒级或者毫秒级的生存时间的设置功能:EXPIRE : 将键的生存时间设为 ttl 秒PEXPIRE :将键的生存时间设为 ttl 毫秒EXPIREAT :将键的过期时间设为 timestamp 所指定的秒数时间戳PEXPIREAT : 将

2017-11-28 11:25:46 17536 2

原创 Redis数据库

在上一节介绍了Redis的对象系统:String、List、Hash、Set、ZSet,这些对象是如何组成Redis数据库与用户所见的数据库映射的呢?一、 Redis服务器        在redis.h/redisServer结构中有关系数据库的两个属性:redisDb和dbnum,每个redisDb结构就代表着一个数据库,dbnum则表示Redis服务器创建的数据库个数(默认为16个)

2017-11-28 10:51:23 1078

原创 Redis对象系统

在上一节学习Redis中的六种基础数据结构,但在Redis中并没有直接使用以上的数据结构实现键值对数据库,而是基于这些数据结构构建了一个对象系统:字符串对象(String)、列表对象(List)、哈希对象(Hash)、集合对象(Set)和有序集合对象(ZSet)。在Redis中每个对象都由一个redisObject结构表示:/* * Redis 对象 */typedef struct r

2017-11-27 18:28:36 784

原创 Redis的六种数据结构

本节将对Redis底层的六种数据结构展开详述:简单动态字符串、链表、字典、跳跃表、整数集合、压缩列表。一、简单动态字符串(SDS)        Redis基于C语言开发但并没有直接使用C语言传统的字符串,而是构建一种叫简单动态字符串(simple dynamic string,SDS)的抽象类型作为Redis默认的字符串表示。SDS不仅用来保存数据库中的字符串值,同时还用于实现缓冲区(b

2017-11-27 15:38:37 6448 1

原创 Kafka中的消息是否会丢失和重复消费

在之前的基础上,基本搞清楚了Kafka的机制及如何运用。这里思考一下:Kafka中的消息会不会丢失或重复消费呢?为什么呢? 要确定Kafka的消息是否丢失或重复,从两个方面分析入手:消息发送和消息消费 1、消息发送 Kafka消息发送有两种方式:同步(sync)和异步(async),默认是同步方式,可通过producer.type属性进行配置

2017-11-21 16:10:26 30209 3

原创 Kafka的高级消费者与低级消费者

在Kafka实战章节,我们写的例子都是Kafka的高级消费实例,可以看到在消息消费者的程序中,我们只需要指定zookeeper、及消费群组的groupId即可实现从消息队列中消费消息,屏蔽了大量的底层细节:如消息的偏移量等信息都不在程序中维护。Kafka的高级消费实例,满足以下几点规则:(1)同一个消费群组中,如果线程数大于Topic分区数,那么一些线程永远接收不到消息;(2)同一个消

2017-11-20 12:08:03 6802

原创 Kafka实战

        从搭建Windows下的Kafka运行环境和搭建Linux下的Kafka运行环境可以看出,环境一旦搭建完成,执行以下逻辑程序是固定的顺序,与环境无关:启动Zookeeper启动Kafka创建Topic启动生产者Producer发消息启动消费者Consumer消费消息        因此,这里以Windows下的运行环境为例(windows环境搭建可以参见笔者之前的...

2017-11-03 11:51:27 1334 3

原创 Linux下搭建Kafka运行环境

在前面的章节讲述了Windows下Kafka的运行,以及Kafka知识点总结一、知识点总结二。这里通过搭建服务器,实践编程的角度,进一步理解Kafka原理。一、安装配置JDK        参见http://www.cnblogs.com/a2211009/p/4265225.html,笔者以第一种方式安装,便于后面通过 apt-get upgrade 方式方便获得jdk的升级//添加

2017-11-02 17:57:32 2436 1

计算机网络第五版

计算机网络第五版

2016-08-20

Redis设计与实现

Redis设计与实现

2016-08-20

Java_TCPIP_Socket编程

Java_TCPIP_Socket编程

2016-07-06

中国计算机学会推荐国际刊物会议列表(数据库数据挖掘与内容检索)

2016-06-20

GroupLens_MovieLens数据集

数据集简介如下:(上传空间有限,这里我只传了一个最新的2016/1的数据集,如果有需要的话到官网下载吧http://grouplens.org/datasets/movielens/) MovieLens 100K Dataset Stable benchmark dataset. 100,000 ratings from 1000 users on 1700 movies. Released 4/1998. MovieLens 1M Dataset Stable benchmark dataset. 1 million ratings from 6000 users on 4000 movies. Released 2/2003. MovieLens 10M Dataset Stable benchmark dataset. 10 million ratings and 100,000 tag applications applied to 10,000 movies by 72,000 users. Released 1/2009. MovieLens 20M Dataset Stable benchmark dataset. 20 million ratings and 465,000 tag applications applied to 27,000 movies by 138,000 users. Released 4/2015. MovieLens Latest Datasets Small: 100,000 ratings and 6,100 tag applications applied to 10,000 movies by 700 users. Last updated 1/2016. Full: 22,000,000 ratings and 580,000 tag applications applied to 33,000 movies by 240,000 users. Last updated 1/2016. MovieLens Tag Genome Dataset 11 million computed tag-movie relevance scores from a pool of 1,100 tags applied to 10,000 movies.

2016-01-14

Spark学习资料

EECS-2014-12,Spark作者的论文

2015-08-14

Hadoop平台搭建步骤

Hadoop平台搭建步骤,这份文档里面详细的讲述了平台的搭建步骤

2014-03-29

spring in action 中文版 后五章

spring in action 中文版 后五章,里面详细描述了spring,提供编程者查阅API

2014-03-29

Visual C++

Visual C++ 面向对象编程教程王育坚

2013-11-06

MyEclipse+Tomcat+MySQL的环境搭建

MyEclipse+Tomcat+MySQL的环境搭建

2013-11-06

空空如也

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

TA关注的人

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