• Session服务器之Redis


    Session服务器之Redis

    Redis与Memcached的区别
    内存利用率:使用简单的key value (键值对)存储的话,Mermcached 的内存利用率更高,而如果Redis采用hash结构来做key-value存储,由于其组合式的压缩,其内存利用率会高于Memcached.。
    性能对比:由于Redis 只使用单核,而Memcached可以使用多核,所以平均每一个核
    上Redis在存储小数据时比Memcached性能更高。而在100k以上的数据中,Memcached性能要高于Redis,虽然Redis 最近也在存储大数据的性能上进行优化,但是比起Memcached,还是稍有逊色。。
    Redis支持数据的持久化,可以将内存中的数据保持在磁盘中,重启的时候可以再次加载进行使用。
    Redis支持数据的备份,即master-slave模式的数据备份。。
    Redis 不仅仅支持简单的key-Value 类型的数据,同时还提供list, set, zset, hash 等数据结构的存储。。

    将之前从session中复制到/usr/local/tomcat/lib下的文件删除

    [root@node1 ~]# ls session/ | while read line                #每次输出一行
    > do echo $line                                                #输出
    > done
    javolution-5.5.1.jar
    kryo-1.03.jar
    kryo-serializers-0.10.jar
    memcached-2.5.jar
    memcached-session-manager-1.5.1.jar
    memcached-session-manager-tc7-1.5.1.jar
    minlog-1.2.jar
    msm-javolution-serializer-1.5.1.jar
    msm-kryo-serializer-1.6.4.jar
    reflectasm-0.9.jar
    spymemcached-2.7.3.jar

    [root@node1 ~]# ls session/ | while read line; do  rm -rf /usr/local/tomcat/lib/$line; done           #将每次输出一行变成删除line这个变量对应的内容

    关闭相关安全机制

    systemctl stop firewalld
    iptables -F
    setenforce 0

    两台Tomcat都需要做相同的配置

    一:将Redis解包及编译

    [root@node1 ~]# tar xf redis-5.0.3.tar.gz -C /usr/src/                      #解包 
    [root@node1 ~]# cd /usr/src/redis-5.0.3/         
    [root@node1 redis-5.0.3]# make                                                      #编译
    如果安装出现问题报错测需要安装tcl

    wget http://downloads.sourceforge.net/tcl/tcl8.5.9-src.tar.gz

    cd /tcl8.5.9-src/unix

    ./configure 

    make && make install

    二:配置相关文件

    [root@node1 ~]# mkdir -p /usr/local/redis/{bin,etc,var}           #创建关于redis的文件
    [root@node1 src]# cd /usr/src/redis-5.0.3/
    [root@node1 redis-5.0.3]# cd src/
    [root@node1 src]# ls

    这里面有许多重要的文件,下面是比较重要的文件详细情况 

    redis-server: Redis服务器的daemon启动程序
    redis-cli: Redis命令行操作工具你也可以用telnet根据其纯文本协议来操作

    redis-benchmark: Redis 性能测试工具,测试Redis在你的系统及你的配置下的读写性能

    redis-stat: Redis 状态检测工具,可以检测Redis当前状态参数及延迟状况

    [root@node1 src]# cp redis-benchmark redis-check-aof redis-check-rdb redis-cli redis-server /usr/local/redis/bin/             #将有用的文件拷贝到/usr/local/redis/bin下(文件夹之前创建好了)

    [root@node1 src]# ls /usr/local/redis/bin/                                #查看拷贝的文件
    redis-benchmark  redis-check-aof  redis-check-rdb  redis-cli  redis-server

    [root@node1 redis-5.0.3]# ls
    00-RELEASENOTES  deps       README.md        runtest-sentinel  utils
    BUGS             INSTALL    redis.conf       sentinel.conf
    CONTRIBUTING     Makefile   runtest          src
    COPYING          MANIFESTO  runtest-cluster  tests
    [root@node1 redis-5.0.3]# cp redis.conf /usr/local/redis/etc/                        #将主配文件拷贝到/usr/local/redis/etc下

    [root@node1 redis-5.0.3]# vim /usr/local/redis/etc/redis.conf                       #修改Redis的主配文件
     
     bind 127.0.0.0改为bind0.0.0.0                       #改成监听到本机的任意IP
    daemonize no改为daemonize yes                 #以进程的方式启动
    三:启动服务
    [root@node1 redis-5.0.3]# /usr/local/redis/bin/redis-server /usr/local/redis/etc/redis.conf               #启动服务
    [root@node1 ~]# netstat -lnpt | grep 6379                                                                         #查看端口是否开启
    tcp        0      0 0.0.0.0:6379            0.0.0.0:*               LISTEN      15511/redis-server

    [root@node1 redis-3.2.5]# killall -9 redis-server                                        #关闭redis

    四:修改Tomcat相关文件

    [root@node1 redis-3.2.5]# vim /usr/local/tomcat/conf/context.xml                #修改Tomcat文件

    <Context>

    <Valve className="com.orangefunction.tomcat.redissessions.RedisSessionHandlerValve" />

     <Manager className="com.orangefunction.tomcat.redissessions.RedisSessionManager"  

    host="192.168.200.12"                                                   #redisIP地址(两台都得写同一个主redisIP地址)

    port="6379"                                                                     #redis端口

    database="0"  

    maxInactiveInterval="60" />

    </Context>

    五:重启Tomcat服务

    [root@node1 ~]# /usr/local/tomcat/bin/shutdown.sh

    [root@node1 ~]# /usr/local/tomcat/bin/startup.sh

    六:测试

     

     

  • 相关阅读:
    渗透学习——资料整理
    c语言——运算符、分支结构、循环结构
    c语言——字符串变量、函数
    总结Java开发者经常会犯的前十种错误
    项目开发遇到的问题及其解决.总结
    Java开发者写SQL时常犯的10个错误
    Java开发中常见的异常问题
    Java编程:常见问题汇总
    Exploded location overlaps an existing deployment解决办法
    Eclipse下svn的创建分支/合并/切换使用
  • 原文地址:https://www.cnblogs.com/ZCQ123456/p/11586110.html
Copyright © 2020-2023  润新知