JAVA和Nginx 教程大全

网站首页 > 精选教程 正文

11——10服务器集群&tenginx

wys521 2024-09-21 05:05:43 精选教程 19 ℃ 0 评论

服务器集群

J2EE服务器

最典型的是Tomcat,是一个Servlet容器,Tomcat处理静态页面效率很低,并发量一般不超过500

web服务器 :

基于http请求提供web服务 nginx Apache httpServer 侧重点在于提供http或https的服务

特点是可以处理高并发(作为集群的前端服务器)例如Apache 和 nginx

集群的好处:

1、 解决高并发

2、 解决单点故障,提高稳定性

Apache 和 nginx(web服务器)

1. 多台集群机器联合处理一个任务。

1. 一台机器处理不同的多个任务。

特点:

处理静态数据速度快(自动html静态数据的缓存)

并发数一般要比J2EE服务器要高。

192.168.1.10

Apache

Weblogic

Tomcat

web服务器:

nginx

中文帮主文档:

tengine:

官网:http://tengine.taobao.org/

安装:

安装之前准备

1、 依赖 gcc openssl-devel pcre-devel zlib-devel

2、 安装:yum install gcc openssl-devel pcre-devel zlib-devel

3、创建用户和用户组。为了方便nginx运行而创建组:groupadd -r nginx

创建用户:useradd -r -g nginx -M nginx -M 表示不创建用户的家目录。

源码安装

注册为系统服务

在 /etc/init.d/目录下添加脚本(tengine脚本文件老师已经提供)

修改脚本的执行权限 : chmod 755 nginx

注册完成后重新加载 service nginx reload

(重启的服务名就是脚本的名字)

开启服务 : service nginx start

查看进程:ps aux | grep nginx

master process 管理work process

nginx.conf

位置 : /usr/tengin/conf

httpd.conf

在tomcat的日志记录客户端的IP地址

在nginx配置文件中加: proxy_set_header Y-Real-IP $remote_addr;

在tomcat的conf/server.xml配置文件中修改

<Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"

prefix="localhost_access_log." suffix=".txt"

pattern="%{Y-Real-IP}i %l %u %t &quot;%r&quot; %s %b" />

反向代理:

配置反向代理upstream

weight可以省略

配置location

Tengine配健康检查:

帮助页:

注意其中的HEAD后的换成项目中抽查的一个页面 例如 /index.jsp

cluster配置:该指令可以打开后端服务器的健康检查功能。

server配置:让前台能够显示健康检查的结果 例如访问地址: http://node1/status

Session 处理

1、session复制

tomcat 本身带有复制session的功能。(不讲)

2、共享session

需要专门管理session的软件,

memcached 缓存服务,可以和tomcat整合,帮助tomcat共享管理session。

共享session
搭建缓存服务器:

安装memcached

1、安装libevent

2、安装memcached

3、启动memcached

memcached -d -m 128m -p 11211 -l 192.168.197.128 -u root -P /temp/

-d:后台启动服务

-m:缓存大小

-p:端口

-l:IP

-P:服务器启动后的系统进程ID,存储的文件

-u:服务器启动是以哪个用户名作为管理用户

yum安装:yum install memcached-devel

3、拷贝jar到tomcat的lib下

4、配置tomcat,每个tomcat里面的context.xml中加入

标记处修改为缓存服务器地址

双节点:

测试jsp

注意:设置共享session需要各个服务器时钟一致

安装:yum install ntpdate

同步:ntpdate -u ntp.sjtu.edu.cn

复制session

nginx会话保持:

访问控制:

通过地址限制:

模块:ngx_http_access_module

配置范例:

通过密码限制

加密工具安装:

yum install httpd-devel

htpasswd -cm 路径 用户名

/usr/tengine-2.1.0/conf/htpasswd

目录文件索引:

注意:所访问的目录页面必须有相应的权限

server配置

nginx伪静态规则

  要将http://dede.com/index.php?t=3用伪静态规则改写成http://dede.com/t3.html,即可在nginx的conf/nginx.conf里面添加即可。

在location / {}里添加,如:

location / {

root D:/phpweb/wwwroot;

index index.php index.html index.htm;

rewrite ^(.*)/t(\d+)\.html$ $1/index.php?t=$2 last;

}

  仔细观察 rewrite ^(.*)/t(\d+)\.html$ $1/index.php?t=3 last;其实感觉nginx的伪静态规则蛮好写的。就是用正则的基础上,一个rewrite来声明,然后^是伪静态规则开头,(.*)匹配任意字符,这里匹配的就是域名了,t就是你在这里想加的字符,如你可以加apple、orange这样的分类名了,(\d+)匹配的是数字,\.html匹配的是后缀,$就是正则匹配的结束。后面半部分就是要改写的url了,用$1打头,表示域名,/index.php?t=3就是要改写的URL,用last;结束即可。

注:客户在访问服务器时,浏览器中显示的地址信息是静态的地址信息(http://dede.com/t3.html),经过nginx的rewrite中的正则表达式( ^(.*)/t(\d+)\.html$ )匹配到合适的地址后,指定到后面的访问路径($1/index.php?t=3 last)这才是真正的服务器数据的访问地址,然后向服务器发起请求。

Apache

就是apache http server

简单安装:yum install httpd

Apache和tomcat的连接

apache 连接tomcat

连接方法:两种

基于ajp协议方式连接,基于二进制

基于HTTP协议连接

两种连接工具:

Proxy:mod_proxy.so

Connectors:mod_jk.so

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表