发表于: 2018-01-05 23:13:31
1 721
一、 今天完成的事情
一、步骤三:停止Memcache进程,观察压测数据。部署两台WEB,使用Nginx的Upstream来做负载。重新压测。
①使用两个tomcat,修改其中一个server.xml中的端口号(例如把所有端口号+10)。
将项目war放入其中一个tomcat下面,复制解压好的项目文件放入另外一个。
②使用windows版本的nginx
修改nginx的 conf/nginx.conf文件
在 location/ 下添加了反向代理,proxy_pass 代理服务器
③代理集群,负载均衡
需要在conf/nginx.conf文件的http节点中添加代理(这里代理两台服务器)
④解决session共享问题(此方法只适用windows下)
修改两处:
1.修改tomcat的server.xml 支持共享
将<Engine>标签下的<Cluster>标签的注释去掉(注意需要修改两个tomcat)
2.修改项目的配置文件,web.xml中添加一个节点<distributable />
⑤重新压测JSP和JSON接口
聚合报告:
图形结果:
二、步骤四:将Memcache替换成Redis,重复以步骤。最后生成一份压测报告,同样的发布到自媒体里。
1、认识Redis
①什么是redis
redis是一个nosql(not only sql不仅仅只有sql)数据库,即非关系型数据库。
关系型数据库:以二维表形式存储数据。
非关系型数据库:以键值对形式存储数据(key-value形式)。
redis是将数据存放到内存中,由于内存存取速度快,所以redis被广泛应用于互联网项目。
优点:存取速度快。
缺点:对持久化支持不够良好。
所以redis一般不作为数据的主数据库存储,一般配合传统的关系型数据库使用。
②redis应用领域
分布式缓存
分布式session
保存博客或者论坛的留言回复等
适用于数据量大,并发量高的场景
2.Linux上安装和启动Redis
①redis安装环境
redis由C语言开发,编译依赖gcc环境,linux上安装gcc:yum install gcc-c++
②redis的安装(这里我使用的是3.0版本)
注意:这里需要给安装包加上可执行权限。
解压安装包:tar -zxvf redis-3.0.7.tar.gz
进入解压后的目录下进行编译:make
安装到指定目录:make PREFIX=/usr/local/redis install
注意:这种启动方式的缺点明显,需要一直在前台挂着服务端(ctrl + c 关闭)。
★设置后台启动:
1)将解压目录下的redis.conf复制到bin下
2)赋予bin下redis.conf所有权限 chmod 777 redis.conf
3)修改redis.conf文件,将原来no改成yes
4)启动redis:./redis-server redis.conf
5)关闭服务端:./redis-cli shutdown(关闭前保存数据)
启动客户端进行操作:
3.Java操作redis
Java使用redis需要通过jedis进行连接,可将此过程类比Java通过JDBC连接数据库。
①引入依赖
②简单的Demo:
代码地址:https://github.com/hdonghong/codetask/tree/master/task6/jedis_demo
③Spring整合Jedis:
配置文件:
service层注入JedisPool依赖:
为了将List对象存入缓存中,我的做法是转成JSON格式数据,获取时再转换为List类型数据。
验证:利用redis客户端从redis获取缓存数据
4.进行压测
二、 明天计划的事情
三、 遇到的问题
四、 收获
总算交上这篇日报了,这任务六算完了吗?可以的话我就提交任务了
评论