接着
然后我就考虑使用hdparm禁用写入缓存,在centos下发现一直报驱动错误。在ubuntu上面禁用writeCache倒是可以的。关键是关机重启之后,测试时取rocksdb中数据时发现系统cache仍然在不断的增加。
禁用失败,现在就开始换一种思路,在centos中运行一个docker实例,指定docker占用内存3.2G(服务所占内存) + 2G (额外容忍分配内存),主要是限制docker系统cache占用的内存不能多于2G,然后遍历数据库中的所有影视名称构造测试用例去搜索影视,测试搜索性能。
docker官方要求centos7,内核最低版本 3.10。在centos6.5中要想安装docker至少内核版本是2.6.32-431。
# cat /proc/version
/* RHEL/CentOS 6 64-Bit yum install epel-release */# wget http://download.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm# rpm -ivh --force epel-release-6-8.noarch.rpm# yum install docker-io /*因为docker基本要求centos7,所有我们通过docker-io进行安装*/
# yum pull centos /*从docker-hub拉取centos镜像*/# docker run -it --name=isearch --memory=5g -p 8090:8090 -v /usr/local/isearch:/usr/local/isearch centos /* /usr/local/isearch是搜索服务所需的一些安装环境和数据所在目录 */
此时进入container内部,开始安装java环境
# wget --no-cookies --no-check-certificate --header "Cookie: gpw_e24=http%3A%2F%2Fwww.oracle.com%2F; oraclelicense=accept-securebackup-cookie" "http://download.oracle.com/otn-pub/java/jdk/7u75-b13/jdk-7u75-linux-x64.tar.gz" /*下载jdk1.7 */# tar -zxvf jdk-7u75-linux-x64.tar.gz
后面省略一些配置了。。。
启动isearch服务...
isearch(docker容器)运行状态,内存限定了有木有?现在就进行愉快的测试吧。。哈哈。。。
原文链接