Nginx 로드 스케줄러 + 듀얼 Tomcat 로드 및 세션 공유 + MySQL 백엔드 데이터베이스

不言
풀어 주다: 2023-04-02 20:44:02
원래의
1891명이 탐색했습니다.

이 글에서는 주로 Nginx 로드 스케줄러 + 듀얼 Tomcat 로드 및 세션 공유 + MySQL 백엔드 데이터베이스를 소개합니다. 이제는 필요한 친구들이 참고할 수 있도록 공유합니다.

Nginx 로드 스케줄러+ 듀얼 Tomcat 로드 및 세션 복제 + MySQL 백엔드 데이터베이스

환경:

从nginx官网下载最新版 wget http://nginx.org/download/nginx-1.13.9.tar.gz
로그인 후 복사
[root@192 ~]# yum -y install pcre-devel zlib-devel gcc gcc-c++ make [root@192 ~]# cd /usr/src/nginx- 1.13.9/
IP Function
192.168.2.5 nginx
192.1 6 8.2.6 tomcat1
192.168. 2.7 tomcat2 080, 3306, selinux ② nginx 설치
[root@192 ~]# useradd -M -s /sbin/nologin nginx [root @192 ~]# tar zxf nginx-1.13.9.tar.gz -C /usr/src
[root@192 nginx -1.13.9]# ./configure --prefix=/usr/local/nginx --user=nginx --group=nginx --with-http_stub_status_module && make && make install

[root@192 ~]# ln - s /usr/local/nginx/sbin/nginx /usr/local/sbin

nginx를 시작하지 마세요

③설치용 Tomcat 호스트 두 개

jdk从官网下载需要许可,允许之后下载至本地,导入主机 tomcat从官网downloads找到tomcat7.0或者更高版本 wget http://mirror.bit.edu.cn/apache/tomcat/tomcat-7/v7.0.86/bin/apache-tomcat-7.0.86.tar.gz
로그인 후 복사
[root@192 ~]# tar zxf jdk-7u65-linux -x64.gz -C /usr/src

[root@192 ~]# tar zxf apache-tomcat-7.0.54.tar.gz -C /usr/src

[root@192 ~]# mv jdk1.7.0_65/ /usr/local/java

[root@192 ~]# mv apache-tomcat-7.0.54/ /usr/local/tomcat7

[root@192 ~ ]# vim /etc/profile

export JAVA_HOME=/usr/local/java export CATALINA_HOME=/usr/local/tomcat7 export PATH=$JAVA_HOME/bin:$CATALINA_HOME/bin:$PATH
로그인 후 복사
[root@192 ~]# 소스 /etc/profile

[root@192 ~]# java -version

java version "1.8.0_171" Java(TM) SE Runtime Environment (build 1.8.0_171-b11) Java HotSpot(TM) 64-Bit Server VM (build 25.171-b11, mixed mode)
로그인 후 복사
[root@192 ~]# catalina.sh 버전

Using CATALINA_BASE: /usr/local/tomcat7 Using CATALINA_HOME: /usr/local/tomcat7 Using CATALINA_TMPDIR: /usr/local/tomcat7/temp Using JRE_HOME: /usr/local/java Using CLASSPATH: /usr/local/tomcat7/bin/bootstrap.jar:/usr/local/tomcat7/bin/tomcat-juli.jar Server version: Apache Tomcat/7.0. Server built: May 19 2014 10:26:15 Server number: 7.0.86.0 OS Name: Linux OS Version: 3.10.0-327.el7.x86_64 Architecture: amd64 JVM Version: 1.7.0_65-b17 JVM Vendor: Oracle Corporation
로그인 후 복사
Tomcat 시작

[root@192 ~] # /usr/local/tomcat7/bin/startup.sh

Using CATALINA_BASE: /usr/local/tomcat7 Using CATALINA_HOME: /usr/local/tomcat7 Using CATALINA_TMPDIR: /usr/local/tomcat7/temp Using JRE_HOME: /usr/local/java Using CLASSPATH: /usr/local/tomcat7/bin/bootstrap.jar:/usr/local/tomcat7/bin/tomcat-juli.jar Tomcat started.
로그인 후 복사

테스트 접속

http://192.168.2.6:8080

http://192.168.2.7:8080

4두 개의 호스트에서 Tomcat 구성 파일 수정

[root@192 ~]#cd /usr/local/tomcat7/conf

[root@192 ~]#cp server.xml server.xml.bak

[root@192 ~ ]#vim server.xml

.......   
로그인 후 복사

[root@192 ~]#mkdir -p /web/webapp1

[root@192 ~]#vim /web/webapp1/index.jsp

<%@page language="java" import="java.util.*" pageEncoding="UTF-8"%>   tomcat-1 

Session serviced by tomcat

<% session.setAttribute("abc","abc");%>
Session ID <%=session.getId()%>
Create on <%= session.getCreationTime() %>
로그인 후 복사
Tomcat 다시 시작

[root@ 192 ~]#shutdown.sh

[ root@192 ~]#startup.sh

참고: 두 번째 호스트는 server.xml의 jvmRoute="tomcat-2"와 tomcat-2</에서 다릅니다. title>

in index.jsp

테스트 접속 결과 두 Tomcat 호스트의 세션 ID가 다른 것으로 나타나 준비 작업이 완료되었습니다

http://192.168.2.6:8080

http://192.168.2.7 :8008

두 번째, 세션 공유 구성

단계:

①두 호스트가 세션 공유 클러스터 구성
[root@192 ~]#vim /usr/local/tomcat7/conf/server.xml

.......                           
로그인 후 복사
[root@192 ~ ]#mkdir /web/webapp1/WEB-INF

[root@192 ~]#cp /usr/local/tomcat7/conf/web.xml WEB-INF/

[root@192 ~]#vim WEB-INF /web.xml

  #添加这个单词,必须有这一步,否则用户的session没法使用
로그인 후 복사
방화벽이 켜져 있으면 다음을 활성화하세요

[root@192 ~]#firewall-cmd --add-port=45564/udp --permanent

[root@192 ~]#firewall-cmd --add-port=4000/tcp --permanent


[root@192 ~]#firewall-cmd --reload

Tomcat 다시 시작

[root@192 ~]#shutdown.sh

[root@192 ~]#startup.sh

참고: 두 Tomcat 구성은 동일합니다. 수신자 섹션에서 두 번째 호스트의 IP 주소를 가리키기만 하면 됩니다
②nginx 구성[root@192 ~] #vim /usr/local/nginx/conf/nginx.conf

....... http { ....... upstream tomcat_server { server 192.168.2.6:8080 weight=1; server 192.168.2.7:8080 weight=1; } #gzip on; server { listen 80; server_name localhost; #charset koi8-r; #access_log logs/host.access.log main; location / { root html; index index.html index.htm; proxy_pass http://tomcat_server; }
로그인 후 복사
nginx를 시작하고 nginx 주소를 방문한 후 페이지를 새로 고쳐 액세스를 테스트하세요
[root@192 ~]#nginx http://192.168.2.5

3. mysql 데이터베이스에 연결합니다.

단계:

1mysql을 데이터베이스 서버로 사용하고 mysql을 구성합니다.mysql>다음으로 식별되는.

에 대한 모든 권한을 부여합니다. '123.com';


mysql> 데이터베이스 생성 javatest

mysql>javatest

사용

mysql>테이블 testdata 생성(id int not null auto_increment 기본 키,foo varchar(25),bar varchar(10));

mysql>testdata(foo,bar) 값에 삽입('hello','123.com ')

mysql> testdata에서 * 선택;

②下载mysql-connector-java-5.1.22-bin.jar 复制到tomcat7/lib/目录下(两台tomcat都需要配置)
[root@192 ~]# cp mysql-connector-java-5.1.22-bin.jar /usr/local/tomcat7/lib/

③配置context.xml
[root@192 ~]# cp /usr/local/tomcat7/conf/context.xml /usr/local/tomcat7/conf/context.xml.bak

[root@192 ~]# vim /usr/local/tomcat7/conf/context.xml

  WEB-INF/web.xml 
로그인 후 복사

④配置web.xml
[root@192 ~]# vim /web/webapp1/web.xml

......  MySQL Test App  DB Connection jdbc/TestDB javax.sql.DataSource Container 
로그인 후 복사

⑤编写连接数据库jsp文件
[root@192 ~]# vim /web/webapp1/test.jsp

<%@ page language="java" import="java.sql.*" pageEncoding="GB2312"%>   MySQL 
connect MySQL
<% String driverClass="com.mysql.jdbc.Driver"; String url="jdbc:mysql://192.168.2.8:3306/javatest"; String username = "javauser"; String password = "123.com"; Class.forName(driverClass); Connection conn=DriverManager.getConnection(url, username, password); Statement stmt=conn.createStatement(); ResultSet rs = stmt.executeQuery("select * from testdata"); while(rs.next()){ out.println("
foo:"+rs.getString(2)+"bar:"+rs.getString(3)); } rs.close(); stmt.close(); conn.close(); %>
로그인 후 복사

⑥重启tomcat,测试连接
[root@192 ~]# shutdown.sh
[root@192 ~]# startup.sh

http://192.168.2.5/test.jsp

以上就是本文的全部内容,希望对大家的学习有所帮助,更多相关内容请关注PHP中文网!

相关推荐:

ThinkPHP5.0 Linux Apache/Nginx重写URL配置

위 내용은 Nginx 로드 스케줄러 + 듀얼 Tomcat 로드 및 세션 공유 + MySQL 백엔드 데이터베이스의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿
회사 소개 부인 성명 Sitemap
PHP 중국어 웹사이트:공공복지 온라인 PHP 교육,PHP 학습자의 빠른 성장을 도와주세요!