安装Redis完整过程

安装Redis完整过程
安装Redis完整过程

概述

首先报告一下我系统的版本:

Java代码

1.[root@firefish init.d]# cat /etc/issue

系统版本信息如下:

引用

CentOS release 6.4 (Final)

Kernel \r on an \m

安装Redis

希望将Redis安装在此目录下:

引用

/usr/local/redis

参考http://redis.io/download的安装说明,做调整:

引用

$ mkdir /usr/local/redis

$ cd /usr/local/src

$ wget https://www.360docs.net/doc/65515688.html,/files/redis-2.6.14.tar.gz

$ tar xzf redis-2.6.14.tar.gz

$ ln -s redis-2.6.14 redis #建立一个链接

$ cd redis

$ make PREFIX=/usr/local/redis install #安装到指定目录中

注意上面的最后一行,我们通过PREFIX指定了安装的目录。如果make失败,一般是你们系统中还未安装gcc,那么可以通过yum安装之:

Java代码

1.yum install gcc

安装完成后,则执行make.

在安装redis成功后,你将可以在/usr/local/redis看到一个bin的目录,里面包括了以下文件:

Java代码

1.redis-benchmark redis-check-aof redis-check-dump redis

-cli redis-server

将Redis做成一个服务

1.复制脚本到/etc/rc.d/init.d目录

按以上步骤安装Redis时,其服务脚本位于:

Java代码

1./usr/local/src/redis/utils/redis_init_script

必须将其复制到/etc/rc.d/init.d的目录下:

Java代码

1.cp /usr/local/src/redis/utils/redis_init_script /etc/rc.d/ini

t.d/redis

以下将redis_init_script复制到/etc/rc.d/init.d/,同时易名为redis。

如果这时,我们直接注册服务:

Java代码

1.chkconfig --add redis

将报以下错误:

引用

redis服务不支持chkconfig

为些,我们需要更改redis的脚本,请看下节说明。

2.更改redis的服务脚本

Java代码

1.vim /etc/rc.d/init.d/redis

看到以下的文件内容:

Java代码

1.#!/bin/bash

2.#chkconfig: 2345 80 90

3.# Simple Redis init.d script conceived to work on Linu

x systems

4.# as it does use of the /proc filesystem.

5.

6.REDISPORT=6379

7.EXEC=/usr/local/redis/bin/redis-server

8.CLIEXEC=/usr/local/redis/bin/redis-cli

9.

10.PIDFILE=/var/run/redis_${REDISPORT}.pid 红色的部分删掉,否则

service redis stop 无法使用

11.CONF="/etc/redis/${REDISPORT}.conf"

12.

13.case "$1" in

14. start)

15. if [ -f $PIDFILE ]

16. then

17. echo "$PIDFILE exists, proce

ss is already running or crashed"

18. else

19. echo "Starting Redis server.

.."

20. $EXEC $CONF &

21. fi

22. ;;

23. stop)

24. if [ ! -f $PIDFILE ]

25. then

26. echo "$PIDFILE does not exi

st, process is not running"

27. else

28. PID=$(cat $PIDFILE)

29. echo "Stopping ..."

30. $CLIEXEC -p $REDISPORT shutd

own

31. while [ -x /proc/${PID} ]

32. do

33. echo "Waiting for Re

dis to shutdown ..."

34. sleep 1

35. done

36. echo "Redis stopped"

37. fi

38. ;;

39. *)

40. echo "Please use start or stop as first

argument"

41. ;;

42.esac

1)解决无法注册的问题:

原文件是没有以下第2行的内容的,

引用

#chkconfig: 2345 80 90

这时如果注册将报错,要添加再注册就OK了。

2)更改EXEC、CLIEXEC参数,设置对应的值,如上所示即和我们前面安装的一致。

3)更改redis开启的命令,以后台运行的方式执行:

Java代码

1.$EXEC $CONF &

注意后面的那个“&”,即是将服务转到后面运行的意思,否则启动服务时,Redis服务将

占据在前台,占用了主用户界面,造成其它的命令执行不了。

4)将redis配置文件拷贝到/etc/redis/${REDISPORT}.conf

Java代码

1.mkdir /etc/redis

2.cp /usr/local/src/redis/redis.conf /etc/redis/6379.conf

这样redis服务脚本指定的CONF就存在了。默认情况下,Redis未启用认证,可以通过开启6379.conf的requirepass 指定一个验证密码。

以上操作完成后,即可注册服务:

Java代码

1.chkconfig --add redis

3.启动Redis服务

Java代码

1.$ service redis start

将Redis的命令所在目录添加到系统参数PATH中

修改profile文件:

#vi /etc/profile

在最后行添加:

Java代码

1.export PATH="$PATH:/usr/local/redis/bin"

然后马上应用这个文件:

Java代码

1.. /etc/profile

这样就可以直接调用redis-cli的命令了,如下所示:

Java代码

1.$ redis-cli

2.redis 127.0.0.1:6379> auth superman

3.OK

4.redis 127.0.0.1:6379> ping

5.PONG

6.redis 12

7.0.0.1:6379>

由于上面我开启了安全验证功能,密码为superman,因此需要auth后才能和服务器交互。

项目结束了,正好可以学习新知识,周末就学习redis,下面是介绍如何在linux 上安装redis,主要是介绍安装过程中,我遇到的问题

1,去redis的官网下载最新的稳定版本,网址为

http://redis.io/download

2,下载完成后,通过winsp上传到linux服务器上,我传的是

/usr/local目录

3,进入/usr/local目录,使用tar命令解压 tar

zxvf redis-2.6.14.tar.gz

4,进入解压后的目录,安装并编译

[php]view plaincopy

1.cd redis-

2.6.14

2.make

3.cd src

4.make install

如果编译没有问题的话,redis就安装好了,我说说我遇到的问题,在进入src目录后执行make install命令时,提示

[php]view plaincopy

1.make: Warning: File `Makefile.dep' has modification time

1e+07 s in the future

发现是系统时间不一致,我桌面上的虚拟机是一直都是休眠的,因此时间不同步,使用date命令把时间设置成当前时间

[html]view plaincopy

1.date -s 06/22/2013

2.date -s 09:39:00

执行完上述命令后,再执行make install命令,这时又发现了个问题,执行完make install命令之后,提示

[php]view plaincopy

1.zmalloc.o: In function `zmalloc_used_memory':

2./usr/local/redis-2.6.14/src/zmalloc.c:223: undefined referenc

e to `__sync_add_and_fetch_4'

3.collect2: ld returned 1 exit status

4.make: *** [redis-server] Error 1

在网上查了下,原来我的linux是32位的,使用

make CFLAGS="-march=i686"解决,之后再make install就ok了,说明此问题的链接为https://www.360docs.net/doc/65515688.html,/Linux/2012-11/74364.htm

5,后台启动redis,改变配置文件redis.conf中的daemonize no 为daemonize yes,之后使用命令

/usr/local/redis-2.6.14/src/redis-server /usr/local/redis-2.6.14

/redis.conf便启动ok了。

6,启动redis客户端。/usr/local/redis-2.6.14/src/redis-cli

7,退出redis客户端。在上一步命令后成功后,在命令行上输入exit 就退出了。

8,关闭redis服务端。进入src目录,输入pkill redis-server即可。

Redis集群研究

Redis Sentinel数据库M-S配置(Redis的分片与复制集技术) 1.Redis Sentinel介绍 Redis Sentinel是Redis官方提供的集群管理工具,主要有三大功能: 监控,能持续监控Redis的主从实例是否正常工作; 通知,当被监控的Redis实例出问题时,能通过API通知系统管理员或其他程序;自动故障恢复,如果主实例无法正常工作,Sentinel将启动故障恢复机制把一个从实例提升为主实例,其他的从实例将会被重新配置到新的主实例,且应用程序会得到一个更换新地址的通知。 Redis Sentinel是一个分布式系统,可以部署多个Sentinel实例来监控同一组Redis实例,它们通过Gossip协议来确定一个主实例宕机,通过 Agreement协议来执行故障恢复和配置变更,一般在生产环境中部署多个实例来提高系统可用性,只要有一个Sentinel实例运行正常,就能保证被监控的Redis实例运行正常(类似Zookeeper,通过多个Zookeeper来提高系统可用性); 2.Redis HA方案 HA的关键在于避免单点故障及故障恢复,在Redis Cluster未发布之前,Redis 一般以主/从方式部署(这里讨论的应用从实例主要用于备份,主实例提供读写,有不少应用是读写分离的,读写操作需要取不同的Redis实例,该方案也可用于此种应用,原理都是相通的,区别在于数据操作层如何封装),该方式要实现HA主要有如下几种方案: 1).keepalived:通过keepalived的虚拟IP,提供主从的统一访问,在主出现问题时,通过keepalived运行脚本将从提升为主,待主恢复后先同步后自动变为主,该方案的好处是主从切换后,应用程序不需要知道(因为访问的虚拟IP 不变),坏处是引入keepalived增加部署复杂性; 2).zookeeper:通过zookeeper来监控主从实例,维护最新有效的IP,应用通过zookeeper取得IP,对Redis进行访问; 3).sentinel:通过Sentinel监控主从实例,自动进行故障恢复,该方案有个缺陷:因为主从实例地址(IP&PORT)是不同的,当故障发生进行主从切换后,应用程序无法知道新地址,故在Jedis2.2.2中新增了对Sentinel的支持,应用通过 redis.clients.jedis.JedisSentinelPool.getResource()取得的Jedis 实例会及时更新到新的主实例地址。 笔者所在的公司先使用了方案1一段时间后,发现keepalived在有些情况下会导致数据丢失,keepalived通过shell脚本进行主从切换,配置复杂,而且keepalived成为新的单点,后来选用了方案3,使用Redis官方解决方案;(方

redis3.0.2 分布式集群安装详细步骤

redis3.0.2 分布式集群安装详细步骤 --(centos5.8 X64系统) 版本历史 一: redis cluster介绍篇 1:redis cluster的现状 目前redis支持的cluster特性(已亲测): 1):节点自动发现 2):slave->master 选举,集群容错 3):Hot resharding:在线分片 4):进群管理:cluster xxx 5):基于配置(nodes-port.conf)的集群管理 6):ASK 转向/MOVED 转向机制. 2:redis cluster 架构 1)redis-cluster架构图

架构细节: (1)所有的redis节点彼此互联(PING-PONG机制),内部使用二进制协议优化传输速度和带宽. (2)节点的fail是通过集群中超过半数的节点检测失效时才生效. (3)客户端与redis节点直连,不需要中间proxy层.客户端不需要连接集群所有节点,连接集群中任何一个可用节点即可 (4)redis-cluster把所有的物理节点映射到[0-16383]slot上,cluster 负责维护node<->slot<->value 2) redis-cluster选举:容错

(1)领着选举过程是集群中所有master参与,如果半数以上master节点与master 节点通信超过(cluster-node-timeout),认为当前master节点挂掉. (2):什么时候整个集群不可用(cluster_state:fail),当集群不可用时,所有对集群的 操作做都不可用,收到((error) CLUSTERDOWN The cluster is down)错误a:如果集群任意master挂掉,且当前master没有slave.集群进入fail状态,也可以理解成进群的slot映射[0-16383]不完成时进入fail状态. b:如果进群超过半数以上master挂掉,无论是否有slave集群进入fail状态. 二.Redis集群安装篇(centos5.8 X64系统) (要让集群正常工作至少需要3个主节点,在这里我们要创建6个redis节点,其中三个为主节点,三个为从节点,对应的redis节点的ip和端口对应关系如下)

SpringBoot企业级开发教程教学大纲

《Spring Boot企业级开发教程》课程教学大纲 (课程英文名称) 课程编号: XXXX 学分:5学分 学时:60学时(其中:讲课学时:38 上机学时:22) 先修课程:Java基础案例教程、Java Web程序设计任务教程、 Java EE企业级应用开发教程(Spring+Spring MVC+MyBatis)适用专业:信息及其计算机相关专业 开课部门:计算机系 一、课程的性质与目标 《Spring Boot企业级开发教程》是面向计算机相关专业开设的一门专业的Java 应用开发课程,主要讲解了当前主流的Spring Boot框架以及与第三方技术整合开发实战内容。通过本课程的学习,学生能够理解并掌握Spring Boot 框架的基础知识,同时能够掌握Spring Boot与常用第三方技术的整合实现实际开发中的业务需求,包括实现Web开发、数据访问、缓存管理、安全管理、消息服务、任务管理等。 二、课程的主要内容及基本要求 第1章 Spring Boot开发入门(4学时) [知识点] ?Spring Boot概述 ?环境准备 ?使用Maven方式构建Spring Boot项目 ?使用Spring Initializr方式构建Spring Boot项目 ?单元测试 ?热部署 ?Spring Boot依赖管理

?Spring Boot自动配置 ?Spring Boot执行流程 [重点] ?使用Maven方式构建Spring Boot项目 ?使用Spring Initializr方式构建Spring Boot项目 ?单元测试 ?Spring Boot依赖管理 ?Spring Boot自动配置 ?Spring Boot执行流程 [难点] ?Spring Boot自动配置 ?Spring Boot执行流程 [基本要求] ?了解Spring Boot的发展和优点 ?掌握Spring Boot项目的构建 ?掌握Spring Boot的单元测试和热部署 ?熟悉Spring Boot的自动化配置原理 ?熟悉Spring Boot的执行流程 [实践与练习] 建议完成相关测试题,并安排上机,重点考核如何编写Spring Boot入门程序,并参考教材进行Spring Boot源码分析。 第2章 Spring Boot核心配置与注解(6学时) [知识点] ?application.properties配置文件 ?application.yaml配置文件 ?使用注解@ConfigurationProperties和@Value注入属性 ?两种注解对比分析 ?使用@PropertySource加载配置文件 ?使用@ImportResource加载XML配置文件 ?使用@Configuration编写自定义配置类 ?使用Profile文件进行多环境配置 ?使用@Profile注解进行多环境配置 ?随机值设置以及参数间引用 [重点] ?application.properties配置文件

CentOS6.5安装Redis

1. 安装编译工具 yum install wget make gcc gcc-c++ zlib-devel openssl openssl-devel pcre-devel kernel keyutils patch perl 2. 下载tcl https://www.360docs.net/doc/65515688.html,/tcl/tcl8.6.1-src.tar.gz 将下载文件拷贝到/usr/local/src目录中 cd /usr/local/src #进入软件包存放目录 tar zxvf tcl8.6.1-src.tar.gz #解压 cd tcl8.6.1 #进入安装目录 进入tcl下的unix目录 cd unix

./configure --prefix=/usr --without-tzdata --mandir=/usr/share/man $([ $(uname -m) = x86_64 ] && echo --enable-64bit) #配置 make #编译 sed -e "s@^\(TCL_SRC_DIR='\).*@\1/usr/include'@" -e "/TCL_B/s@='\(-L\)\?.*unix@='\1/usr/lib@" -i tclConfig.sh make install #安装 make install-private-headers ln -v -sf tclsh8.6 /usr/bin/tclsh chmod -v 755 /usr/lib/libtcl8.6.so 3. 下载redis 下载:http://download.redis.io/redis-stable.tar.gz 将下载文件拷贝到/usr/local/src目录下 cd /usr/local/src tar -zxvf redis-stable.tar.gz #解压 mv redis-stable /usr/local/redis #移动文件到安装目录

Redis-集群 - 三台服务器

Redis-集群安装详细步骤 一、Redis集群部署文档(centos6系统) 现有三台物理机10.18.154.2 10.18.154.3 10.18.154.4 (要让集群正常工作至少需要3个主节点,在这里我们要创建6个redis节点,其中三个为主节点,三个为从节点,对应的redis节点的ip和端口对应关系如下) 10.18.154.2:7000 10.18.154.2:7001 10.18.154.3:7000 10.18.154.3:7001 10.18.154.4:7000 10.18.154.4:7001 二、安装Redis(10.18.154.2、10.18.154.3、10.18.154.4) 下载redis-3.2.1.tar.gz [root@localhost ~]# tar zxvf redis-3.2.1.tar.gz [root@localhost ~]# cd redis-3.2.1 [root@localhost redis-3.2.1]# make [root@localhost redis-3.2.1]# make install [root@localhost ~]# mv redis-3.2.1 /usr/local/redis [root@localhost ~]# cd /usr/local/redis/ [root@localhost ~]# mkdir /usr/local/cluster [root@localhost ~]# cp /usr/local/redis/redis.conf /usr/local/cluster/ [root@localhost ~]# vi /usr/local/cluster/redis.conf ##修改配置文件中的下面选项 port 7000 bind 10.18.154.2 127.0.0.1 daemonize yes#如果你想让它在后台运行,你就把它改成yes cluster-enabled yes cluster-config-file nodes.conf cluster-node-timeout 5000 appendonly yes [root@localhost ~]# mkdir /usr/local/cluster/7000 [root@localhost ~]# mkdir /usr/local/cluster/7001 [root@localhost ~]# cp /usr/local/cluster/redis.conf /usr/local/cluster/7000 [root@localhost ~]# cp /usr/local/cluster/redis.conf /usr/local/cluster/7001 [root@localhost ~]# cp /usr/local/cluster/redis.conf /usr/local/cluster/7002 [root@localhost 7000]# redis-server redis.conf ---启动redis服务##注意:拷贝完成之后要修改7001目录下面redis.conf文件中的port参数,分别改为对应的文件夹的名称 ##启动之后使用命令查看redis的启动情况ps -ef|grep redis

Redis面试题及复习资料

Redis 是一个基于内存的高性能key-value数据库。(有空再补充,有理解错误或不足欢迎指正) Reids的特点 Redis本质上是一个Key-Value类型的内存数据库,很像memcached,整个数据库统统加载在内存当中进行操作,定期通过异步操作把数据库数据flush到硬盘上进行保存。 因为是纯内存操作,Redis的性能非常出色,每秒可以处理超过10万次读写操作,是已知性能最快的Key-Value DB。 Redis的出色之处不仅仅是性能,Redis最大的魅力是支持保存多种数据结构,此外单个value的最大限制是1GB,不像memcached只能保存1MB的数据,因此Redis可以用来实现很多有用的功能,比方说用他的List来做FIFO双向链表,实现一个轻量级的高性能消息队列服务,用他的Set可以做高性能的tag 系统等等。 另外Redis也可以对存入的Key-Value设置expire时间,因此也可以被当作一个功能加强版的memcached来用。 Redis的主要缺点是数据库容量受到物理内存的限制,不能用作海量数据的高性能读写,因此Redis适合的场景主要局限在较小数据量的高性能操作和运算上。 Redis支持的数据类型 Redis通过Key-Value的单值不同类型来区分, 以下是支持的类型: Strings Lists Sets 求交集、并集 Sorted Set hashes

为什么redis需要把所有数据放到内存中? Redis为了达到最快的读写速度将数据都读到内存中,并通过异步的方式将数据写入磁盘。所以redis具有快速和数据持久化的特征。 如果不将数据放在内存中,磁盘I/O速度为严重影响redis的性能。在内存越来越便宜的今天,redis将会越来越受欢迎。 如果设置了最大使用的内存,则数据已有记录数达到内存限值后不能继续插入新值。 Redis是单进程单线程的 redis利用队列技术将并发访问变为串行访问,消除了传统数据库串行控制的开销 虚拟内存 当你的key很小而value很大时,使用VM的效果会比较好.因为这样节约的内存比较大. 当你的key不小时,可以考虑使用一些非常方法将很大的key变成很大的value,比如你可以考虑将key,value组合成一个新的value. vm-max-threads这个参数,可以设置访问swap文件的线程数,设置最好不要超过机器的核数,如果设置为0,那么所有对swap文件的操作都是串行的. 可能会造成比较长时间的延迟,但是对数据完整性有很好的保证. 自己测试的时候发现用虚拟内存性能也不错。如果数据量很大,可以考虑分布式或者其他数据库 分布式 redis支持主从的模式。原则:Master会将数据同步到slave,而slave不会将数据同步到master。Slave启动时会连接master来同步数据。 这是一个典型的分布式读写分离模型。我们可以利用master来插入数据,slave 提供检索服务。这样可以有效减少单个机器的并发访问数量。

B. VisiSet 入门手册

VisiSet中文操作手册_V1.0 Matrix 2000 目录 一、调试工具及界面介绍............................................................................................................. - 2 - 1、打开调试软件V ISI S ET (2) 2、连接V ISI S ET与读码器 (2) 3、调试读码器 (3) 四、参数调试 ............................................................................................................................... - 6 -附录1. 读码器固件升级方法

一、调试工具及界面介绍 1、打开调试软件VisiSet 正确安装读码器后,打开VisiSet软件。有两种方法: <1> 点击桌面上的快捷方式,如下图: <2> 从开始菜单启动,点击开始->程序->Datalogic->VisiSet->VisiSet.exe。 2、连接VisiSet与读码器 打开VisiSet后,程序窗口如下图所示: 点击工具栏中的Options按钮,会出现下面的窗口: 此窗口用来设置读码器与电脑通讯所用的串口的设置。例如,选择使用哪一个串口,波特率是多少,是否有奇偶校验等。把这些设置与电脑串口的设置改为一样。然后点击Save

关闭此窗口。出厂时的设定为:115200-8-N-1 如下图,点击Connect : 大约2秒钟,VisiSet 与读码器连接成功,连上后的状态如下图: 左边的一列按钮为调试工具,用于调试读码器;右边为数据显示窗口,可以显示读到的条码的内容。 3、 调试读码器 VisiSet 与读码器成功连接后,我们就可以对读码器进行调试。 测试工具 数据显示窗口

redis twemproxy集群安装手册

一、概述 1、Redis集群安装有两种方式,第一种为编译源码安装,第二种为二进制安 装,具体选择哪一种方式根据实际情况决定。 2、本文档所使用版本如下: redis:redis-3.0.0-rc5 Twemproxy:nutcracker-0.4.0 autoconfig:2.69 3、常用Linux命令不清楚可以查看相关网站 4、本文档所述redis集群架构如下: 5、本文档使用120和121搭建redis集群,每台机器各启动两个redis实例 和一个twemproxy实例。Redis端口分别为6379 6380 6、采用源码编译方式安装需服务器具有访问外网权限,二进制安装不需求。 7、所有安装包均已上传至文件服务器 二、源码编译方式安装 1、安装automake 执行:yum install automake,出现如下输入Y完成安装:

2、libtool安装 执行:yum install libtool 出现如下输入yes完成安装 3、autoconfig安装 ①上传autoconf-2.69.tar.gz至/usr/local/src目录下 ②执行tar -xzvf autoconf-2.69.tar.gz ③cd autoconf-2.69 ④执行./configure ⑤执行make ⑥执行make install 至此,autoconfig安装完毕 4、redis安装 ①上传redis-3.0.0-rc5.zip至/usr/local/src目录下 ②执行unzip redis-3.0.0-rc5.zip ③执行cd redis-3.0.0-rc5 ④执行make&&make install ⑤执行mkdir /usr/local/redis ⑥执行cp src/redis-server src/redis-cli /usr/local/redis ⑦执行cd /usr/local/redis ⑧执行chmod 777 redis-server redis-cli ⑨执行./redis-server --port 6379 --save "" & 出现如下 ⑩执行./redis-cli -p 6379出现如下

jeesite介绍与安装

第1章介绍与安装 作者:ThinkGem 更新日期:2014-4-8 1.平台简介 JeeSite是基于多个优秀的开源项目,高度整合封装而成的高效,高性能,强安全性的开源Java EE快速开发平台。 JeeSite本身是以Spring Framework为核心容器,Spring MVC为模型视图控制器,MyBatis为数据访问层,Apache Shiro为权限授权层,Ehcahe对常用数据进行缓存,Activit为工作流引擎。 JeeSite主要定位于企业信息化领域,已内置企业信息化系统的基础功能和高效的代码生成工具,包括:系统权限组件、数据权限组件、数据字典组件、核心工具组件、视图操作组件、工作流组件、代码生成等。前端界面风格采用了结构简单、性能优良、页面美观大气的Twitter Bootstrap页面展示框架。采用分层设计、双重验证、提交数据安全编码、密码加密、访问验证、数据权限验证。使用Maven做项目管理,提高项目的易开发性、扩展性。 JeeSite目前包括以下三大模块,系统管理(SYS)模块、内容管理(CMS)模块、在线办公(OA)模块、代码生成(GEN)模块。系统管理模块,包括企业组织架构(用户管理、机构管理、区域管理)、菜单管理、角色权限管理、字典管理等功能;内容管理模块,包括内容管理(文章、链接),栏目管理、站点管理、公共留言、文件管理、前端网站展示等功能;在线办公模块,提供简单的请假流程实例。 JeeSite 提供了常用工具进行封装,包括日志工具、缓存工具、服务器端验证、数据字典、当前组织机构数据(用户、机构、区域)以及其它常用小工具等。另外还提供一个强大的在线代码生成工具,此工具提供简单的单表、一对多、树结构功能的生成,如果对外观要求不是很高,生成的功能就可以用了。如果你使用了JeeSite基础框架,就可以很高效的快速开发出,优秀的信息管理系统。

分布式数据库原理及应用实验10-redis与hbase安装

《分布式数据库原理及应用》 实验报告 实验10:redis与hbase安装

一、实验目的 1.掌握redis与hbase的特点。 2.掌握redis与hbase的安装。 二、实验环境 操作系统自定 三、实验内容与实验过程及分析(写出详细的实验步骤,并分析实验结果) 实验内容: 1.梳理mongodb,neo4j,memcache,redis,hbase的异同 2.完成redis的安装与测试 3.完成hbase的安装与测试 实验步骤: 1.梳理mongodb,neo4j,memcache,redis,hbase的异同 Redis 所用语言:C/C++ 特点:运行异常快使用许可: BSD 协议:类 Telnet 有硬盘存储支持的内存数据库 Master-slave复制 虽然采用简单数据或以键值索引的哈希表,但也支持复杂操作。 Redis支持事务,支持哈希表,支持排序sets,支持队列(阻塞/非阻塞),支持将数据设置成过期数据(类似快速缓冲区设计) Pub/Sub允许用户实现消息机制。最佳应用场景:适用于数据变化快且数据库大小可遇见(适合内存容量)的应用程序。 例如:股票价格、数据分析、实时数据搜集、实时通讯。 Master-slave复制:如果同一时刻只有一台服务器处理所有的复制请求,这被称为Master-slave复制,通常应用在需要提供高可用性的服务器集群。 MongoDB 所用语言:C++ 特点:保留了SQL一些友好的特性(查询,索引) 使用许可: AGPL(发起者: Apache)协议: Custom binary( BSON) Master/slave复制(支持自动错误恢复,使用 sets 复制)内建分片机制 支持javascript表达式查询可在服务器端执行任意的 javascript函数 update-in-place支持比CouchDB更好。在数据存储时采用内存到文件映射对性能的关注超过对功能的要求建议最好打开日志功能(参数–journal) 最佳应用场景:适用于需要动态查询支持;需要使用索引而不是 map/reduce功能;需要对

我终于深入参与了一个分布式系统了,好多想法不一样了!

我终于深入参与了一个分布式系统了,好多想法不一样了! 原文出处:Turbo Zhang 的博客前言 过去两个月深入的参与了一个分布式系统的开发,记得之前有人说过“想成为架构师之前,都是从微观架构开始的”。尽 管我从没想过将来的某一天要成为一个架构师,或者领域专家,我只是想萌萌哒的编码,写着自己喜欢的Code,和一 群志同道合的朋友做出大家喜欢的商品和产品。但是工作久了慢慢的搭架子的事情还是会来到你的面前,因为时间总会把一部分人慢慢推向海边,使得他们成为最早见到阳光的人。不扯淡了,为什么要说阳光呢,还是因为过去的两(三)个月可能过的太充实也太痛苦了,完成之后,曙光来临的时候整个人是会发光的哦。“深度”参与是因为我终于有机会在搭 架子的过程中有了话语权和选择权,同时也会承担70%以上的编码工作。 之前我的自我认知是我可能在软件方面的积累还可以,比如设计模式,架构分层,程序解耦,API入手等方面,但是总觉得我在硬件网络方面积累的太少,太薄了。 比如: 不同操纵系统之间的特点;

网络端口管理与分发; 哪些网络协议可以帮助我们更好的完成工作,监控虚拟机的时候是在虚机上加代理好还是用协议去控制; 硬件是否支持分布式,在扩展过程中对于.net C#的兼容怎么样; 什么时候使用多线程,在把线程交给程序调度的时候我们怎么控制和捕捉线程的异常; 日志系统对于整个分散的系统是多么的重要; 何时使用关系数据库,什么时候使用Nosql; 消息队列用擅长的MSMQ还是RabbitMQ. 怎样有效的和其他部门的同事沟通; 用什么样的方式去有效调度不同语言开发的系统; 测试用例对于大系统从零散到完整是多么的重要; 系统标准,代码原则对于后期的维护余扩展是多么的重要;等; 项目简介 首先项目详细内容不便多说,简答的说,就是为国内某大型厂商建立一套协调其自身搭建的私有云以及其购买的公有 云的一套系统。说牛X一点就是:一套混合云系统。 使用Restful

云数据库Redis版

云数据库 Redis 版 用户指南

用户指南 使用购买 Redis 的账号登录 Redis 管理控制台。进入 Redis 实例列表界面,如下图所示。 管理实例 修改密码 如果您忘记密码、需要修改旧密码,或者在创建实例时没有设置密码,您可以重新设置实例的密码。 登录 Redis 管理控制台。 定位到目标实例,点击实例ID或者管理进入实例信息页面。 在修改密码窗口,输入旧密码和新密码,点击确认。 注意:如果您忘记密码,在修改密码窗口点击忘记旧密码的链接,可以在重置密码的窗口设置新密码。 云数据库 Redis 版支持按量付费模式,按量付费可以可执行变配操作。详细步骤请参考变配流程。 阿里云数据库支持经典网络和专有网络两种网络类型。本章介绍两种网络类型的区别及设置方法。 背景信息 在阿里云平台上,经典网络和专有网络的区别如下:

1.2.经典网络:经典网络中的云服务在网络上不进行隔离,只能依靠云服务自身的安全组或白名单策略来阻挡非法访问。 专有网络(Virtual Private Cloud,简称 VPC):专有网络帮助用户在阿里云上构建出一个隔离的网络环境。用户可以自定义专有网络里面的路由表、IP 地址范围和网关。此外用户可以通过专线或者VPN 的方式将自建机房与阿里云专有网络内的云资源组合成一个虚拟机房,实现应用平滑上云。 注意:经典网络可以转换为专有网络,专有网络不支持更换为经典网络。 Redis 默认使用经典网络,如果您要使用专有网络(VPC),Redis 和 VPC 必须在同一地域,有以下两种方式: 如果 Redis 还没有创建,您可以先建立 VPC,然后在 VPC 下创建 Redis,具体请参见下文 新建Redis场景。 如果 Redis 已经创建,您可以在 Redis 同一地域创建 VPC,然后将 Redis 加入 VPC,具体请参见下文 已有 Redis场景。 新建 Redis 场景 创建 VPC, 具体请参见 VPC 快速入门。创建与 VPC 所在地域一致的 Redis 实例。 在购买过程中,网络类型选择专有网络,选择对应的 VPC 即可。参见 创建实例 章节。 已有 Redis 场景 创建与 Redis实例所在地域一致的 VPC,具体请参见 VPC快速入门。 登录 Redis 管理控制台,选择目标实例,单击管理。 在实例信息页面,单击切换为专有网络。 在切换为专有网络页面中选择 VPC 和 虚拟交换机,单击确定,如下图所示。

如何打造一个高逼格的云运维平台

如何打造一个高逼格的云运维平台? 大家做运维普遍经历这样的过程: 首先我们会把操作做一个标准化,这个阶段是运维质量的提升的阶段。 在标准化实施完以后,由于数目的增加,或者是一些运维场景的增多,我们会逐步的进行一些工具化和自动化,这个阶段我们的运维的效率得到提升。 但是众多的工具以及自动化脚本,会让我们的管理过程中比较困难,随着人员的变动或者是一些工具维护过程中的差错,我们的自动化运维工具的受众群体不太稳定。 这个时候我们就需要一个平台将我们的运维工具以及运维过程中的一些经验进行沉淀,借助这个平台实现我们的智能化运维,于是我们从运维人员的需求和体验出发出发进行了一个运维平台产品化的构建。 我给大家介绍一下我们IT体系建设的情况,差不多十年前我们以ITIL为基础构建了流程平台,变更、事件、问题、服务等流程通过这个平台进行流转。

在五年前我们从开放平台转化为云运维平台,在这个过程中,我也建立了IaaS 虚拟化资源平台,同时我们也跟业界一样构建了CMDB,用于同意管理运维数据。 但是在运转下来以后,我们发现还有很多需求需要实现,主要三个方面: 1.软硬件节点数目不断增加,日常运维迫切需要一个适应各种运维场景的高效自动 化平台,减少重复劳动。 2.需求是将运维人员的经验需要在一个平台沉淀,形成一个智能化场景库,将运维 服务或能力的复用,从而提高整体运维质量和运维效率。 3.第三个需求是在传统的流程化运维的基础上,注入智能化场景,将运维工作从依 靠人工判断、流程决策,逐步转为依靠机器智能分析判断。 所以基于这三方面需要,我们建设了一个云计算环境下面向规模化运维的平台。 云运维平台主要解决的是以下几个痛点: ?互联网业务在我所在的公司开展特别快,还会有一些营销活动,这样就需要运维有一个快速的响应。 ?我们的硬件数目有了一个几何级的增长。 ?最近几年频繁的使用一些开源架构新兴技术,对运维技术增加了要求。 ?运维工具散乱,缺乏同同一管理。 ?我们运维数据没有一个同一的的展示

Redis 集群应用学习

集群技术是构建高性能网站架构的重要手段,试想在网站承受高并发访问压力的同时,还需要从海量数据中查询出满足条件的数据,并快速响应,我们必然想到的是将数据进行切片,把数据根据某种规则放入多个不同的服务器节点,来降低单节点服务器的压力。 上一篇我们讲到了Redis 的主从复制技术,当实现了多节点的master-slave 后,我们 也可以把它叫做集群,但我们今天要讲的集群主要是利用切片技术来组建的集群。 集群要实现的目的是要将不同的key 分散放置到不同的redis 节点,这里我们需要一个 规则或者算法,通常的做法是获取key 的哈希值,然后根据节点数来求模,但这种做法有其明显的弊端,当我们需要增加或减少一个节点时,会造成大量的key 无法命中,这种比例是相当高的,所以就有人提出了一致性哈希的概念。 一致性哈希有四个重要特征: 均衡性:也有人把它定义为平衡性,是指哈希的结果能够尽可能分布到所有的节点中去,这样可以有效的利用每个节点上的资源。 单调性:对于单调性有很多翻译让我非常的不解,而我想要的是当节点数量变化时哈希的结果应尽可能的保护已分配的内容不会被重新分派到新的节点。 分散性和负载:这两个其实是差不多的意思,就是要求一致性哈希算法对key 哈希应尽可能的避免重复。 但一致性哈希不是我们今天要介绍的重点,因为Redis 引入另一种哈希槽(hash slot) 的概念。 Redis 集群中内置了16384 个哈希槽,当需要在Redis 集群中放置一个key-value 时,redis 先对key 使用crc16 算法算出一个结果,然后把结果对16384 求余数,这样每个key 都会对应一个编号在0-16383 之间的哈希槽,redis 会根据节点数量大致均等的将哈希槽映射到不同的节点。 使用哈希槽的好处就在于可以方便的添加或移除节点。 当需要增加节点时,只需要把其他节点的某些哈希槽挪到新节点就可以了; 当需要移除节点时,只需要把移除节点上的哈希槽挪到其他节点就行了; 内部机制,与我何干,对于我们来说,在新增或移除节点的时候不要让我们先停掉所有的redis 服务我就谢天谢地了,这点它做到了。 下面我们就开始动手搭建一个redis 集群来体验一下。 因为我们要启动多个redis 实例,虽然我们可以直接通过命令行来启动,但始终是不怎么方便的,所以我们先来新建三个实例目录,分别是9001,9002,9003,目录名就是redis 实例的端口号。

linux下Redis安装详解

Redis安装 Redis是一种高级key-value数据库。它跟memcached类似,不过数据可以持久化,而且支持的数据类型很丰富。有字符串,链表,集合和有序集合。支持在服务器端计算集合的并,交和补集(difference)等,还支持多种排序功能。所以Redis也可以被看成是一个数据结构服务器。 Redis的所有数据都是保存在内存中,然后不定期的通过异步方式保存到磁盘上(这称为“半持久化模式”);也可以把每一次数据变化都写入到一个append only file(aof)里面(这称为“全持久化模式”)。 一、下载最新版 wget https://www.360docs.net/doc/65515688.html,/files/redis-2.0.4.tar.gz 二、解压缩 tar redis-2.0.4.tar.gz 三、安装C/C++的编译组件(非必须) apt-get install build-essential 四、编译 cd redis-2.0.4 make make命令执行完成后,会在当前目录下生成本个可执行文件,分别是redis-server、redis-cli、redis-benchmark、redis-stat,它们的作用如下: redis-server:Redis服务器的daemon启动程序 redis-cli:Redis命令行操作工具。当然,你也可以用telnet根据其纯文本协议来操作 redis-benchmark:Redis性能测试工具,测试Redis在你的系统及你的配置下的读写性能redis-stat:Redis状态检测工具,可以检测Redis当前状态参数及延迟状况 在后面会有这几个命令的说明,当然是从网上抄的。。。 五、修改配置文件 /etc/sysctl.conf 添加 vm.overcommit_memory=1 刷新配置使之生效 sysctl vm.overcommit_memory=1 补充介绍: **如果内存情况比较紧张的话,需要设定内核参数: echo 1 > /proc/sys/vm/overcommit_memory 内核参数说明如下: overcommit_memory文件指定了内核针对内存分配的策略,其值可以是0、1、2。 0,表示内核将检查是否有足够的可用内存供应用进程使用;如果有足够的可用内存,内存申请允许;否则,内存申请失败,并把错误返回给应用进程。 1,表示内核允许分配所有的物理内存,而不管当前的内存状态如何。 2,表示内核允许分配超过所有物理内存和交换空间总和的内存 **编辑redis.conf配置文件(/etc/redis.conf),按需求做出适当调整,比如: daemonize yes #转为守护进程,否则启动时会每隔5秒输出一行监控信息 save 60 1000 #减小改变次数,其实这个可以根据情况进行指定 maxmemory 256000000 #分配256M内存

Redis数据库安装使用说明

Redis数据库安装使用说明 Redis数据库安装使用说明 Windows 安装说明 下载 文件 配置 启动 CentOS 安装说明 下载 安装 配置 启动 关闭 redis-py 检测 安装 说明 官方网站 Windows 安装说明 Windows下启动请使用Administrator账户 下载

请点击这里选择需要下载的版本 Windows版本只是为了开发使用,正式环境请选择在Linux下安装使用文件 程序说明 redis-benchmark.exe Redis性能测试工具 redis-check-aof.exe数据修复 redis-check-dump.exe检查导出工具 redis-cli.exe Redis客户端 redis-server.exe Redis服务器 redis.windows.conf配置文件 配置 配置文件为 redis.windows.conf 主要修改以下几个参数: 内网运行,建议不设置认证密码 port6379#端口,默认为6379 logfile"redis.log"#日志文件

dbfilename dump.rdb #数据库文件 maxheap1024000000#修改为该值即可 dir ./ #路径(当前目录下) 启动 进入控制台,并跳转到reids-server.exe目录下,输入以下命令即可: redis-server redis.windows.conf 设置快捷启动 在redis程序文件夹下创建StartRedisDB.bat文件,并写入如下内容 redis-server redis.windows.conf pause 保存即可,下次可以直接点击运行Redis服务端 CentOS 安装说明 如果安装使用过,请使用你自己的方法;如果没有安装使用过,请根据我的步骤安装

Redis中文入门手册

Redis中文入门手册1.0 中国海事服务网(https://www.360docs.net/doc/65515688.html,) zhangli收集整理

目录 1)Redis简介 (3) 2)数据类型 (3) 2.1.Redis的Key (3) 2.1.1.key相关指令介绍 (3) 2.2.Redis的vaule (3) 2.2.1.string类型 (3) 2.2.2.hash类型 (4) 2.2.3.list类型 (5) 2.2.4.set类型 (5) 2.2.5.sorted set类型 (6) 3)持久化 (7) 3.1.快照方式:(默认持久化方式) (7) 3.2.日志追加方式: (7) 4)虚拟内存(适用于value比key大的情况) (8) 4.1.Redis虚拟内存简介 (8) 4.2.Redis虚拟内存相关配置 (8) 4.3.redis虚拟内存工作方式简介 (9) 4.3.1.当vm-max-threads设为0时(阻塞方式) (9) 4.3.2.当vm-max-threads大于0时(工作线程方式) (9) 5)主从同步 (9) 5.1.Redis主从复制简介 (9) 5.2.Redis主从复制的过程介绍 (10) 附录A:redis的安装与配置 (10) 1.1.安装 (10) 1.1.1.编译安装 (10) 1.1.2.配置 (11) 1.1.3.启动redis (11) 1.1.4.关闭redis (11) 1.1.5.更新安装redis (12) 1.1.6.redis系统管理相关指令简介 (12) 附录B:安装phpredis模块 (12) 参考资料与知识扩展 (13)

Windows 64位下安装Redis超详细教程

Windows 64位下安装Redis超详细教程 Redis是一个key-value存储系统。和Memcached类似,它支持存储的value 类型相对更多,包括string(字符串)、list(链表)、set(集合)、zset(sorted set --有序集合)和hash(哈希类型)。这些数据类型都支持push/pop、add/remove 及取交集并集和差集及更丰富的操作,而且这些操作都是原子性的。在此基础上,redis支持各种不同方式的排序。与memcached一样,为了保证效率,数据都是缓存在内存中。区别的是redis会周期性的把更新的数据写入磁盘或者把修改操作写入追加的记录文件,并且在此基础上实现了master-slave。 1、安装Redis 官方网站:http://redis.io/ 官方下载:http://redis.io/download 可以根据需要下载不同版本

windows版:https://https://www.360docs.net/doc/65515688.html,/MSOpenTech/redis/releases 我选择的是第三种,在github上下载的zip压缩文件。 下载完成后,在C盘【Program Files】目录下新建文件夹【Redis】,右键解压Redis ZIP包,把所有文件解压到redis文件夹中。

文件介绍: redis-benchmark.exe #基准测试 redis-check-aof.exe # aof redischeck-dump.exe # dump redis-cli.exe # 客户端 redis-server.exe # 服务器 redis.windows.conf # 配置文件 2、启动Redis windows 运行(快捷键:按住shift + 鼠标右键),选择在此处打开命令窗口,进入cmd操作系统窗口。 使用命令【redis-server.exe redis.windows.conf】,启动redis 服务。 服务启动成功状态

软件开发应知应会-84分

研究数据结构就是研究() A.数据的逻辑结构 B.数据的存储结构 C.数据的逻辑结构和存储结构 D.数据的逻辑结构、存储结构及其运算结构 栈和队列的共同特点是()。 A.都是先进先出 B.都是先进后出 C.只允许在端点处插入和删除 D.没有共同点 关键路径是事件结点网络中()。 A.从源点到汇点的最长路径 B.从源点到汇点的最短路径 C.最长的回路 D.最短的回路 以下是线性表的数据结构是()。 A.数组 B.单链表 C.双链表 D.循环链表 以下()是常用的哈希函数构造方法。 A.直接寻址法 B.除留余数法 C.随机数法 D.平方取中法 不属于Swift属性的是() A.存储属性 B.计算属性 C.类型属性 D.以上都不是 CSS3的优点是() A.减少开发成本

B.减少维护成本 C.提高页面性能 D.以上都是 Objective-C最大的特色是承自Smalltalk的(),此机制与今日C++式之主流风格差异甚大。 A.消息传递模型(message passing) B.阅读者模式模型 C.单例模式模型 D.广播模型 CSS的定位常用属性有以下几个值() A.static B.relative C.fixed D.absolute 以下哪些是语义化标签? A.div B.span C.article D.header 在shell中,使用一个定义过的变量,引用时在变量名前加()。 A.$ B.& C.* D.@ SQL中删除数据库的关键字是()。 A.select B.insert C.delete D.drop SQL语句中删除一个表中记录,使用的关键字是()。 A.select B.insert C.delete

相关文档
最新文档