性能实战分析-环境搭建(一)
一、配置域名访问nginx。
1、修改如下,修改完要重新启动nginx ./nginx -s reload
2、如果还是访问不了的话,按下面配置host,则就可以访问了。
可能是因为没有统一的DNS设置(一般公司有,可以做统一解析),所以需要修改本地的host文件如下,做域名 ip的映射。因为外网的DNS解析不了上面nginx自己配置的域名 www.testnginx.com(根据自己的域名而定),所以请求不到的。host配置如下:这里的ip是远程服务器上的ip,和域名一一对应的ip。
host路径: C:\Windows\System32\drivers\etc 文件内容: 192.168.85.128 www.testnginx.com
二、部署dangdang环境
用以前部署的nginx+2tomcat负载均衡环境,把dangdang的war包放在webapp里,然后访问下面页面就可以:
首页:http://www.myserver.com:81/dangdang/main/main.jsp
注册页面:http://www.myserver.com:81/dangdang/user/registForm.jsp
这个当当项目里自带了配置文件,所以下面的配置忽略。
1、数据库连接配置。
打开上面的dbcp.properties
配置数据库名,这里是dangdang
配置数据库的用户名和密码。
2、驱动类
这个war解压后,在下面路径这个lib下已经有驱动类了,就不用再放到tomcat的lib下了。
3、执行sql文件
遇见问题
【1】验证码出不来的问题。
linux服务器上使用tomcat部署web项目时,发现验证码刷新不出来,研究之后发现,有可能是Xsecurity的问题,可以尝试以下的解决方案。
解决方案:
在tomcat里面的catalina.sh文件中,增加以下语句 JAVA_OPTS="$JAVA_OPTS -Djava.awt.headless=true"
然后重新启动tomcat就好了,这里两个tomcat的启动文件都要修改。
【下面忽略】
1、Tomcat数据库连接池的配置,两个tomcat都要配置。
在Web项目中的META-INF目录下新建一个文件context.xml,写入配置
注意:是META-INF目录下,不是WEB-INF目录下
<?xml version='1.0' encoding='utf-8'?>
<Context> <Resource name="jdbc/mysqlds" auth="Container" type="javax.sql.DataSource" username="root" password="1234" maxIdle="30" maxWait="10000" maxActive="100" driverClassName="com.mysql.jdbc.Driver" url="jdbc:mysql://127.0.0.1:3306/db_blog" logAbandoned="true" /> </Context>
<!--配置mysql数据库的连接池, 需要做的额外步骤是将mysql的Java驱动类放到tomcat的lib目录下 maxIdle 连接池中最多可空闲maxIdle个连接 minIdle 连接池中最少空闲maxIdle个连接 initialSize 初始化连接数目 maxWait 连接池中连接用完时,新的请求等待时间,毫秒 username 数据库用户名 password 数据库密码 -->
2、是将mysql的Java驱动类放到tomcat的lib目录下 ,两个tomcat下都要放。
3、执行dangdang的sql文件。
首先自己建一个dangdang的数据库;
然后执行sql文件,建表和初始化数据。
在linux执行sql文件:
这里的路径是你的sql文件的路径。
第一种方法:
在命令行下(未连接数据库),输入 mysql -h localhost -u root -p123456 < /root/files/dang.sql
(注意路径不用加引号的!!) 回车即可.
第二种方法:
在命令行下(已连接数据库,此时的提示符为 mysql> ),输入 source /root/files/dang.sql(注意路径不用加引号的)
或者 \. /root/files/dang.sql (注意路径不用加引号的) 回车即可.
如下则可以看出执行sql成功。
这里建成功,会出现中文乱码,这里设置客户端和数据库编码一致,见下一篇博客。
dangdang的这个sql文件,改完编码后,执行sql还是中文为空或者是乱码,但是单独执行里面的sql就不会乱码,这里可能是因为sql文件里面有间隔的空格,具体没有尝试。
所以这里我是挨个sql执行的。
三、出现问题及解决办法