RUBiS PHP 版本安装

一、实验环境介绍

  1. 系统      :CentOS 5.5
  2. JDK        : java-1.6.0-openjdk.x86_64,java-1.6.0-openjdk-devel-1.6.0.41-1.13.13.1.el5_11
  3. Mysql   :mysql-5.0.95-5.el5_9、mysql-server-5.0.95-5.el5_9
  4. PHP      :php-cli-5.1.6-45.el5_11、php-5.1.6-45.el5_11、php-pdo-5.1.6-45.el5_11、
                    php-common-5.1.6-45.el5_11、php-mysql-5.1.6-45.el5_11、
                    php-ldap-5.1.6-45.el5_11
  5. Apache :httpd-2.2.3-92.el5.centos
  6. Sysstat  :sysstat-7.0.2-13.el5  
  7. Gnuplot:gnuplot-4.0.0-14.el5
  8. RUBiS     : RUBiS-1.4.3.tgz  https://git.oschina.net/LjxOS/RUBiS
  9. 部署apache服务器B  ip:192.168.0.2
    部署mysql数据库  A  ip:192.168.0.1
    部署client客户端   C  ip:192.168.0.3
  10. RUBiS位置:/home/RUBiS

二、部署过程

    CentOS的yum源的服务器一般在国外,下载速度极慢,需要进行安装镜像源地址进行更改https://my.oschina.net/LinJunXin/blog/792522

  1. mysql数据库-服务器 A 

        a. 安装mysql数据库

yum install mysql-server-5.0.95-5.el5_9 -y
yum install mysql.i386 0:5.0.95-5.el5_9 -y

        b. 安装监控软件sysstat

yum install sysstat -y

        c. 配置mysql用户远程访问权限

#查看mysql状态
service mysqld status
#启动mysql服务
service mysqld start
#第一次安装mysql需要设置密码
#PLEASE REMEMBER TO SET A PASSWORD FOR THE MySQL root USER !
#To do so, start the server, then issue the following commands:
#/usr/bin/mysqladmin -u root password 'new-password'
/usr/bin/mysqladmin -u root password 'new-password'
mysql -u root -p

            创建新用户rubis,并使其可以远程或者本地连接mysql服务器:

            命令:CREATE USER 'username'@'host' IDENTIFIED BY 'your_password';

>> CREATE USER 'rubis'@'%' IDENTIFIED BY 'your_password';
>> CREATE USER 'rubis'@'localhost' IDENTIFIED BY 'your_password';

>> GRANT ALL PRIVILEGES ON *.* TO 'rubis'@'%';
>> GRANT ALL PRIVILEGES ON *.* TO 'rubis'@'localhost';

        d. 初始化rubis数据库

cd /home/RUBiS/database
mysql -urubis -pYour_password < rubis.sql
mysql -urubis -pYour_password rubis < regions.sql
mysql -urubis -pYour_password rubis < categories.sql

    2. apache服务器 B

        a. 安装apache、php、sysstat模块

#安装 apache
yum install httpd-2.2.3-92.el5.centos -y

#安装 php、php-mysql
yum install php-5.1.6-45.el5_11 -y
yum install php-mysql-5.1.6-45.el5_11 -y

#安装 sysstat
yum install sysstat -y

        b. 通过建立连接的方式,将RUBiS的PHP代码放置在apache服务器里

ln -s /home/RUBiS/PHP /var/www/html/PHP

        c.修改PHP目录中 .php 文件里已废弃的命令,主要是:$HTTP_POST_VARS 改为 $_POST,$HTTP_GET_VARS   改为 $_GET

cd /home/RUBiS/PHP/

grep -ci "HTTP_POST_VARS" *.php
grep -ci "HTTP_GET_VARS" *.php
sed -i "s/HTTP_POST_VARS/_POST/g" *.php
sed -i "s/HTTP_GET_VARS/_GET/g" *.php

        d. 配置数据库参数,打开/home/RUBiS/PHP/PHPPrinter.php文件,修改getDatabaseLink函数:
 将mysql_pconnect()里面的三个参数依次填为apache服务器ip、mysql用户名及其密码

        e.开启apache服务,检查是否配置成功,关闭或设置防火墙(一般情况下,centos 防火墙只开启端口22)

service httpd start
chkconfig httpd on
#关闭防火墙,不然80端口不可访问
service iptables stop
chkconfig iptables off

#apache 访问权限问题
setenforce 0

        浏览器:http://192.168.0.2/PHP/index.html若出现下图,则服务配置成功:

    3.Client服务器 C

    client主要负责  发起模拟请求,监控各节点数据,生成测试报告;以及初始化数据库

        a. 安装监控以及绘图软件

yum install sysstat
yum install gnuplot

        b.修改配置文件, /home/RUBiS/Client/rubis.properties

# HTTP server information
httpd_hostname = 192.168.0.2 #修改1:改为PHP服务器B的IP
httpd_port = 80

+# C-JDBC server information
cjdbc_hostname = 192.168.0.1 #修改1:改为数据库服务器A的IP

# Precise which version to use. Valid options are : PHP, Servlets, EJB
httpd_use_version = PHP #修改2:改为PHP版本

ejb_server = sci20
ejb_html_path = /ejb_rubis_web
ejb_script_path = /ejb_rubis_web/servlet

servlets_server = sci21
servlets_html_path = /Servlet_HTML
servlets_script_path = /servlet

php_html_path = /PHP
php_script_path = /PHP

# Workload: precise which transition table to use
workload_remote_client_nodes = 
workload_remote_client_command = /usr/local/java/jdk1.3.1/bin/java -classpath /home/RUBiS/ edu.rice.rubis.client.ClientEmulator
#修改3:修改jdk路径
#修改4:修改RUBiS 模拟器路径
workload_number_of_clients_per_node = 240

workload_transition_table = /home/RUBiS/workload/transitions.txt #修改5:修改对应路径
workload_number_of_columns = 27
workload_number_of_rows = 29
workload_maximum_number_of_transitions = 1000
workload_number_of_items_per_page = 20
workload_use_tpcw_think_time = yes
workload_up_ramp_time_in_ms = 120000
workload_up_ramp_slowdown_factor = 2
workload_session_run_time_in_ms = 900000
workload_down_ramp_time_in_ms = 60000
workload_down_ramp_slowdown_factor = 3


#Database information
database_server = 192.168.0.1 #修改6:改为数据库服务器A的IP

# Users policy
database_number_of_users = 10000

# Region & Category definition files
database_regions_file = /home/RUBiS/database/ebay_regions.txt #修改7:修改对应路径
database_categories_file = /home/RUBiS/database/ebay_simple_categories.txt #修改8:修改对应路径

# Items policy
database_number_of_old_items = 10000 
database_percentage_of_unique_items = 80
database_percentage_of_items_with_reserve_price = 40
database_percentage_of_buy_now_items = 10
database_max_quantity_for_multiple_items = 10
database_item_description_length = 1024 #修改9:改为小一点,1024

# Bids policy
database_max_bids_per_item = 20

# Comments policy
database_max_comments_per_user = 20
database_comment_max_length = 2048


# Monitoring Information
monitoring_debug_level = 0
monitoring_program = /usr/bin/sar
monitoring_options = -n DEV -n SOCK -rubcw
monitoring_sampling_in_seconds = 1
monitoring_rsh = /usr/bin/ssh
monitoring_scp = /usr/bin/scp
monitoring_gnuplot_terminal = jpeg

        c.修改配置文件,/home/RUBiS/config.mk

##############################
#    Environment variables   #
##############################
JAVA_HOME=/usr/local/java/jdk1.3.1 #修改1:设置JAVA_HOME

JAVA  = $(JAVA_HOME)/bin/java
JAVAC = $(JAVA_HOME)/bin/javac
#JAVAC = /usr/bin/jikes
JAVACOPTS =
# +E -deprecation
JAVACC = $(JAVAC) $(JAVACOPTS)
RMIC = $(JAVA_HOME)/bin/rmic
RMIREGISTRY= $(JAVA_HOME)/bin/rmiregistry
CLASSPATH = .:/usr/local/java/jdk1.3.1/jre/lib/rt.jar:$(PWD)#修改2:改为java路径
JAVADOC = $(JAVA_HOME)/bin/javadoc
JAR = $(JAVA_HOME)/bin/jar

GENIC = ${JONAS_ROOT}/bin/unix/GenIC

MAKE = gmake
CP = /bin/cp
RM = /bin/rm
MKDIR = /bin/mkdir


# EJB server: supported values are jonas or jboss
EJB_SERVER = jonas

# DB server: supported values are MySQL or PostgreSQL
DB_SERVER = MySQL

%.class: %.java
        ${JAVACC} -classpath ${CLASSPATH} $<

        d.编译客户端

#到该步骤,应该可以编译成功
cd /home/RUBiS
make client

        e. 初始化数据库

cd /home/RUBiS
make initDB PARAM='all'

需要注意的几点:
    1) make initDB后边的PARAM一共有5种选择:all,生成所有数据;users,只生成用户;items,只生成物品;bids,生成竞拍;comments,生成注释。
    2) 如果前面讲到的PHP代码中需要修改的地方已经更正了的话,数据是可以写入到数据库中的。
    3) 在配置rubis.properties的时候,如果database_item_description_length的数值太大的话。会出现Unable to Open URL http://....的错误。文件默认给的值就太大,建议修改为1024即可。

初始化正常运行如下图:

初始化后,网站会正常 显示出 商品信息

 

 

        f.启动模拟器,生成的报告会出现在/home/RUBiS/bench/目录下,需要做下免密登录

cd /home/RUBiS
make emulator

转载于:https://my.oschina.net/LinJunXin/blog/857871

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值