Nginx+Tomcat搭建

版本

操作系统版本

Centos 6.4

Nginx版本

nginx-1.3.15.tar.gz

JDK版本

jdk-7u71-linux-i586   //jdk1.7

Tomcat版本

apache-tomcat-7.0.41.tar.gz

前置准备

可能要用到的包、工具

1.yum –y install lrzsz   //上传下载工具,高大上的工具,再次鄙视那些用ftp工具的

2.yum –y install gcc gcc-c++   //两个包gcc和gcc-c++  为了pcre的编译

3.yum –y install openssl*    //ssl的支持

要是编译报错看错误提示,有的可能是少包的支持,没啥yum啥

关闭防火墙

首先把防火墙关闭:service iptables stop

再设置为永久关闭:chkconfig iptables off

一定要关,不然本地可能访问不了虚拟机上的apache

JDK安装

在oracle官网下载jdk1.7  jdk-7u71-linux-i586.rpm

在/opt下创建文件夹jdk

将jdk-7u71-linux-i586.rpm上传到/opt/jdk下

rpm -ivh jdk-7u71-linux-i586.rpm

之后修改配置文件

vi /etc/profile

在最后加上:

# jdk

export JAVA_HOME=/usr/java/jdk1.7.0_71

export ANDROID_JAVA_HOME=$JAVA_HOME

export JRE_HOME=/usr/java/jdk1.7.0_71/jre

export CLASSPATH=/usr/java/jdk1.7.0_71/lib

export PATH=$JAVA_HOME/bin:$PATH

保存退出之后执行

source /etc/profile  //使更改的配置立即生效

然后输入

java –version查看jdk是否安装成功,出现版本信息表示安装完成

[root@localhost conf]# java -version

java version "1.7.0_71"

Java(TM) SE Runtime Environment (build 1.7.0_71-b14)

Java HotSpot(TM) Client VM (build 24.71-b01, mixed mode, sharing)

Tomcat安装

在/opt下创建文件夹tomcat

将apache-tomcat-6.0.37.tar.gz上传到/opt/tomcat下

  1. apache-tomcat-7.0.41.tar.gz
  2. mv apache-tomcat-7.0.41 tomcat1
  3. mv tomcat1 /usr/local/
  4. cp –r tomcat1 tomcat2
  5. vi /etc/profile修改配置文件

加入:

#tomcat

export TOMCAT_HOME=/usr/local/tomcat1

export TOMCAT_HOME=/usr/local/tomcat2

  1. 启动tomcat

/usr/local/tomcat1/bin/startup.sh

/usr/local/tomcat2/bin/startup.sh

显示

Using CATALINA_BASE:   /usr/local/tomcat1

Using CATALINA_HOME:   /usr/local/tomcat1

Using CATALINA_TMPDIR: /usr/local/tomcat1/temp

Using JRE_HOME:        /usr/java/jdk1.7.0_71/jre

Using CLASSPATH:       /usr/local/tomcat1/bin/bootstrap.jar

然后ps –ef|grep tomcat查看进程

最后IE中输入http://ip:端口看到如下页面证明tomcat安装成功

Nginx安装

在opt下创建文件夹nginx,将nginx-1.3.15.tar.gz上传到nginx文件夹下

tat –xzvf nginx-1.3.15.tar.gz

进入nginx-1.3.15中

执行

./configure --with-http_stub_status_module --with-http_ssl_module

执行make && make install

查看配置

/usr/local/nginx/sbin/nginx –t

如果屏幕显示以下两行信息,说明配置文件正确:

the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok

the configuration file /usr/local/nginx/conf/nginx.conf was tested successfully

启动nginx

/usr/local/nginx/sbin/nginx

IE输入IP:端口,出现如下表示安装nginx成功

Nginx负载配置

修改nginx.conf,配置文件内容如下

#user  nobody;

#启动进程数

worker_processes  1;

#全局错误日志及PID文件

#error_log  logs/error.log;

#error_log  logs/error.log  notice;

#error_log  logs/error.log  info;

#pid        logs/nginx.pid;

#工作模式及连接数上限

events {

worker_connections  1024;

}

#设定http服务器,利用它的反向代理功能提供负载均衡支持

http {

include       mime.types;

default_type  application/octet-stream;

#log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '

#                  '$status $body_bytes_sent "$http_referer" '

#                  '"$http_user_agent" "$http_x_forwarded_for"';

#access_log  logs/access.log  main;

sendfile        on;

#tcp_nopush     on;

#keepalive_timeout  0;

keepalive_timeout  65;

#gzip  on;

## 配置反向代理的后端tomcat集群

upstream web_server {

server localhost:8080 weight=1 max_fails=2 fail_timeout=30s;

server localhost:9090 weight=1 max_fails=2 fail_timeout=30s;

}

server {

listen       80;

server_name  localhost;

## 网页、视频、图片文件从本地读取,且定义在浏览器中缓存30天

location ~ .*\.(htm|html|gif|jpg|jpeg|png|bmp|swf|ioc|rar|zip|txt|flv|mid|doc|ppt|pdf|xls|mp3|wma)$

{

expires 30d;

}

## js、css文件从本地读取,且定义在浏览器中缓存1小时

location ~ .*\.(js|css)?$

{

expires 1h;

}

## 动态文件转发到后端的tomcat集群

location ~ .*\.(php|jsp|cgi|jhtml)?$ {

proxy_pass http://web_server;

proxy_set_header Host  $host;

proxy_set_header X-Forwarded-For  $proxy_add_x_forwarded_for;

proxy_set_header X-Real-IP  $remote_addr;

}

#charset koi8-r;

#access_log  logs/host.access.log  main;

location / {

root   html;

index  index.html index.htm;

}

#error_page  404              /404.html;

# redirect server error pages to the static page /50x.html

#

error_page   500 502 503 504  /50x.html;

location = /50x.html {

root   html;

}

# proxy the PHP scripts to Apache listening on 127.0.0.1:80

#

}

}

修改Tomcat配置文件server.xml

<Server port="8005" shutdown="SHUTDOWN">  //指定一个端口,这个端口负责监听关闭tomcat的请求

<Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000"redirectPort="8443"/>   //tomcat端口号

测试负载

在两个tomcat下加入工程test

mkdir /usr/local/tomcat1/webapps/test

mkdir /usr/local/tomcat2/webapps/test

在两个test工程下分别创建test.jsp,内容如下

<%@ page contentType="text/html;charset=UTF-8"%>

<html>

<head>

<title> Tomcat_test1</title>

</head>

<body>

<font color = "red" size = "20" >

<% out.print( "test111" ); %>

</font>

</body>

</html>

<%@ page contentType="text/html;charset=UTF-8"%>

<html>

<head>

<title> Tomcat_test2</title>

</head>

<body>

<font color = "red" size = "20" >

<% out.print( "test222" ); %>

</font>

</body>

</html>

启动tomcat+nginx

启动nginx:/usr/local/nginx/sbin/nginx

启动tomcat:

/usr/local/tomcat1/bin/startup.sh

/usr/local/tomcat2/bin/startup.sh

查看进程

在两个IE中输入ip:nginx端口/工程/jsp页面,最好是不同浏览器,出现如下表示搭建成功

注意:这么做只是测试,正常情况下后端的工程必须一致,不然相当于客户端发出了请求俩系统来响应,就出大事了

nginx+tomcat负载使用的更多相关文章

  1. nginx+tomcat负载均衡

    最近练习nginx+tomcat负载均衡.根据一些资料整理了大体思路,最终实现了1个nginx+2个tomcat负载均衡. 安装JDK 1>进入安装目录,给所有用户添加可执行的权限 #chmod ...

  2. linux+nginx+tomcat负载均衡,实现session同步

    linux+nginx+tomcat负载均衡,实现session同步 花了一个上午的时间研究nginx+tomcat的负载均衡测试,集群环境搭建比较顺利,但是session同步的问题折腾了几个小时才搞 ...

  3. Nginx + Tomcat 负载均衡配置详解

    Nginx常用操作指南一.Nginx 与 Tomcat 安装.配置及优化1. 检查和安装依赖项 yum -y install gcc pcre pcre-devel zlib zlib-devel o ...

  4. Nginx+Tomcat负载均衡、动静分离群集

    Nginx+Tomcat负载均衡.动静分离群集 目录 Nginx+Tomcat负载均衡.动静分离群集 一.Tomcat 1. Tomcat简介 2. Tomcat重要目录 二.Nginx负载均衡原理 ...

  5. Linux下Nginx+Tomcat负载均衡和动静分离配置要点

    本文使用的Linux发行版:CentOS6.7 下载地址:https://wiki.centos.org/Download 一.安装Nginx 下载源:wget http://nginx.org/pa ...

  6. Nginx+tomcat负载均衡时静态页面报404

    百度到的问题解决BLOG http://os.51cto.com/art/201204/326843.htm nginx+2台tomcat负载均衡,应用程序已部署,单独访问tomcat时,可以访问到所 ...

  7. Nginx+tomcat负载均衡配置

    Nginx+tomcat是目前主流的java web架构,如何让nginx+tomcat同时工作呢,也可以说如何使用nginx来反向代理tomcat后端均衡呢?直接安装配置如下: 1.JAVA JDK ...

  8. Ubuntu下配置 keepalived+nginx+tomcat 负载均衡

    本文力图阐述在 Ubuntu Server 环境下使用 Keepalived + Nginx + Tomcat 搭建高可用负载均衡环境的操作步骤和简约配置,这里不涉及性能调优.先说一下他们各自扮演的角 ...

  9. nginx+tomcat负载均衡策略

    測试环境均为本地,測试软件为: nginx-1.6.0,apache-tomcat-7.0.42-1.apache-tomcat-7.0.42-2.apache-tomcat-7.0.42-3 利用n ...

  10. 同主机下Docker+nginx+tomcat负载均衡集群搭建

    想用Docker模拟一下nginx+tomcat集群部署,今天折腾了一天,遇坑无数,终于在午夜即将到来之际将整个流程走通,借本文希望给同样遇到类似问题的小伙伴们留点线索. 主机环境是CentOS 7, ...

随机推荐

  1. Windows下安装PHP及开发环境配置

    一.Apache 因为Apache官网只提供源代码,如果要使用必须得自己编译,这里我选择第三方安装包Apache Lounge. 1. 进入Apachelounge官方下载地址:http://www. ...

  2. Jmeter mysql性能测试

    一:首先建立jdbc connection configuration,设置参数如图 1.variable name 参数名称,与后面的sample中设置的variable name一致.含义为:通过 ...

  3. Visual C++ 图像处理类库CxImage源代码

    说明:VC++ 图像处理类库CxImage源代码,CxImage是一个可以用于MFC 的C++类,可以打开,保存,显示,转换各种格式的图像文件,比如BMP, JPEG, GIF, PNG, TIFF, ...

  4. centos下vsftpd登录后无法看见文件,无法创建文件及文件夹

    centos下vsftpd不能显示文件,不能创建文件及文件夹 这是由于selinux的机制 运行如下命令查看: [root@SZCLC6X-AMP-4393 www]# getsebool -a|gr ...

  5. php设计模式 工厂模式和单例

    1.单例模式//让该类在外界无法造对象//让外界可以造一个对象,做一个静态方法返回对象//在类里面通过让静态变量控制返回对象只能是一个. class cat{ public $name; privat ...

  6. 推荐系统评测指标--准确率(Precision)和召回率(Recall)、F值(F-Measure)

    转自http://bookshadow.com/weblog/2014/06/10/precision-recall-f-measure/ 1,准确率和召回率是广泛应用于信息检索和统计学分类领域的两个 ...

  7. C#中的&运算

    2是一个比较特殊的数. 2的1次方2 2的2次方4 2的3次方8 2的4次方16 2的5次方32 2的6次方64 2的7次方128 2的8次方256 2的9次方512 2的10次方1024 2的11次 ...

  8. 【bzoj4419】[Shoi2013]发微博 STL-set

    题目描述 刚开通的SH微博共有n个用户(1..n标号),在短短一个月的时间内,用户们活动频繁,共有m条按时间顺序的记录: ! x   表示用户x发了一条微博: + x y 表示用户x和用户y成为了好友 ...

  9. [CF949C]Data Center Maintenance

    题目大意:$n$个点,每个点有一个值$w_i$.$m$个条件,每个条件给出$x,y$,要求$w_x\not =w_y$.选择最少的点,使其值加$1$后,所有条件成立(数据保证有解). 题解:对于每个条 ...

  10. python request模板

    # -*- coding: utf-8 -*- import time import requests class Request: def __init__(self): self.s=reques ...