Rumah pangkalan data Redis Bagaimana untuk melaksanakan sesi berterusan melalui Nginx+Tomcat+Redis

Bagaimana untuk melaksanakan sesi berterusan melalui Nginx+Tomcat+Redis

May 28, 2023 am 08:37 AM
redis nginx tomcat

Persekitaran penggunaan

centos7
nginx1.10.2
tomcat7.0
redis3.2.3
mariadb 5.5.44

Pakej yang diperlukan


commons-pool2-2.2.jar

jedis-2.5.2.jar

tomcat-redis-session- manager- 2.0.0.jar

blog solo


Bagaimana untuk melaksanakan sesi berterusan melalui Nginx+Tomcat+Redis

1 >

Persediaan sebelum pemasangan
ntpdate 172.18.0.1

iptables -f

Pasang nginx



yum pasang nginx

Ubah suai fail konfigurasi


upstream tomcatservers: Buat kumpulan pelayan belakang dan tambah

lokasi di dalam http: Padankan url dan tambahkan di dalam pelayan Nota: Elips adalah parameter lalai yang lain, hanya tekan lalai

vim /etc/nginx/nginx.conf
http {
...
upstream tomcatservers {
 server 172.18.68.21:8080;
 server 172.18.68.22:8080;
 }
...
server {
...
 location / {
  proxy_pass http://tomcatservers;
  }
...
}
}
systemctl start nginx
Salin selepas log masuk

Periksa port


<. 🎜>
Apabila memulakan pelayan, semak sama ada port 80 mendengar secara normal

ss -ntl

2 🎜>

Dua Konfigurasi pelayan tomcat adalah sama. Ulangi langkah berikut pada kedua-dua hos


Persediaan sebelum pemasangan

ntpdate 172.18.0.1iptables -f

Pasang tomcat

yum pasang tomcat



Kerahkan solo

.pakej perang disalin ke direktori webapps Mulakan semula tomcat selepas memuat turun, dan tomcat akan menyahmampat failnya secara automatik

cp solo-2.4.1.war /usr/share/tomcat/webapps/
systemctl restart tomcat
Salin selepas log masuk


Konfigurasikan solo

serverhost ialah nama domain atau IP pengimbangan beban bahagian hadapan, jika ia muncul selepas penggunaan selesai Apabila sumber statik tidak dapat dimuatkan, biasanya terdapat sesuatu yang tidak kena di sini.

cd /usr/share/tomcat/webapps/solo-2.4/web-inf/classes
vim latke.properties
 #### server ####
 # 配置协议
 serverscheme=http
 # 配置客户端访问站点时的域名或ip,也就是前端nginx的域名
 serverhost=www.shuaiguoxia.com
 # 使用的端口
 serverport=80
Salin selepas log masuk

Konfigurasikan solo untuk menyambung ke mysql

Bahagian masa jalan h2 digunakan secara solo secara lalai Selepas mengulasnya secara manual, nyahkomen bahagian masa jalan mysql .

Tetapkan nama pengguna dan kata laluan mysql, dan kemudian tukar 172.18.68.41 kepada alamat ip mysql (utama).

#### h2 runtime ####
#runtimedatabase=h2
#jdbc.username=root
#jdbc.password=
#jdbc.driver=org.h2.driver
#jdbc.url=jdbc:h2:~/solo_h2/db
#jdbc.pool=h2
#
#### mysql runtime ####
runtimedatabase=mysql
jdbc.username=root      # 用户名
jdbc.password=123456     # 密码
jdbc.driver=com.mysql.jdbc.driver
jdbc.url=jdbc:mysql://172.18.68.41:3306/solo?useunicode=yes&characterencoding=utf8
jdbc.pool=druid
Salin selepas log masuk

Konfigurasikan reids sambungan tomcat

reids sambungan tomcat memerlukan 3 pakej perisian:


commons-pool2-2.2.jar
jedis-2.5.2.jar
tomcat-redis-session-manager-2.0.0.jar
Salin selepas log masuk

Alamat muat turun

Salin pakej jar yang diperlukan ke /usr/share/tomcat/lib/

cp commons-pool2-2.2.jar /usr/share/tomcat/lib/
cp jedis-2.5.2.jar
cp tomcat-redis-session-manager-2.0.0.jar
Salin selepas log masuk
Ubah suai fail contest.xml dan tambahkan dua baris berikut pada fail.

ip ialah alamat redisip, dan port ialah port yang redis dengar pada

vim /etc/tomcat/context.xml
#
 <valve classname="com.orangefunction.tomcat.redissessions.redissessionhandlervalve" />
 <manager classname="com.orangefunction.tomcat.redissessions.redissessionmanager" 
 host="172.18.68.31" 
 port="6379" 
 database="0" 
 maxinactiveinterval="60" />
Salin selepas log masuk

Mulakan semula tomcat

systemctl restart tomcat


3. Konfigurasi pelayan Redis

Terdapat dua pelayan redis secara keseluruhan, satu tuan dan satu hamba. Hanya fail konfigurasi berbeza, proses lain adalah sama.


Persediaan sebelum pemasangan

ntpdate 172.18.0.1
iptables -f
Salin selepas log masuk
Pasang redis

yum install redis

Konfigurasi nod induk Redis

Nod induk hanya mengkonfigurasi ip, port pendengaran dan kata laluan sambungan

vim /etc/redis.conf
bind 0.0.0.0       # 监听所有ip
port 6379        # 设定监听的端口
requirepass 123456      # 设定连接的密码
Salin selepas log masuk


konfigurasi nod hamba redis

Nod hamba ditetapkan kepada baca sahaja

bind 0.0.0.0       # 监听所有ip
slaveof 172.18.68.31 6379    # 设定主节点的ip+端口
masterauth 123456      # 主节点的连接密码
slave-read-only yes      # 从节点为只读
Salin selepas log masuk

Sahkan bahawa konfigurasi tuan-hamba berjaya

shell > redis-cli -h 172.18.68.32  # 连接从服务器redis
127.0.0.1:6379> info replication   # 查看主从复制状态信息
# replication
role:slave
master_host:172.18.68.31     # 主节点ip
master_port:6379       # 主节点的端口
master_link_status:up     # up为主从同步正常
master_last_io_seconds_ago:9
master_sync_in_progress:0
slave_repl_offset:1420
slave_priority:100
slave_read_only:1
connected_slaves:0
master_repl_offset:0
repl_backlog_active:0
repl_backlog_size:1048576
repl_backlog_first_byte_offset:0
repl_backlog_histlen:0
Salin selepas log masuk
4. Konfigurasi pelayan MySQL

Terdapat dua pelayan mysql, satu induk dan satu hamba. Hanya fail konfigurasi berbeza, proses lain adalah sama.

Persediaan sebelum pemasangan

ntpdate 172.18.0.1iptables -f

Pasang mariadb

yum install mariadb
#
#
#运行初始化脚本对mysql进行
cd /usr/local/mysql/bin
mysql_secure_installation   #mysql初始化脚本,以下为每一项的翻译
 先回车
 是否设置root密码
 输入密码
 确认密码
 是否设置匿名用户
 是否允许root远程登录
 删除test数据库
 现在是否生效
Salin selepas log masuk

Konfigurasi pelayan induk MySQL



Penyegerakan induk-hamba mesti mendayakan log binari, dan terdapat dua perkara dalam mengubah suai fail konfigurasi.

1.server-id mestilah tidak bercanggah

2. Cipta pengguna yang dibenarkan pada pelayan utama untuk memberi kebenaran replikasi kepada pengguna.

shell > vim /etc/my.cnf
server-id=1           #节点id
log-bin=mysql-bin         #指定二进制日志前缀
relay-log=mysql-relay-bin       #指定relaylog日志前缀
replicate-wild-ignore-table=mysql.%     #排除要复制的表
replicate-wild-ignore-table=test.%
replicate-wild-ignore-table=information_schema.%
Salin selepas log masuk

Buat pengguna yang dibenarkan pada baris pelayan induk supaya pelayan hamba mempunyai kebenaran untuk menyalin data pelayan induk. Pengguna yang dibenarkan harus sepadan dengan undang-undang yang mempunyai keistimewaan yang paling rendah, dan lebih tepat alamat IP yang dibenarkan untuk disambungkan, lebih baik.

musql > grant replication slave on *.* to 
 &#39;slave_user&#39;@&#39;10.0.0.67&#39; identified by &#39;123456&#39;;
Salin selepas log masuk


Konfigurasi pelayan hamba MySQL


Konfigurasi master-slave mySQL hanya berbeza dalam server-id

shell > vim /etc/my.cnf
server-id=2           #节点id
log-bin=mysql-bin         #指定二进制日志前缀
relay-log=mysql-relay-bin       #指定relaylog日志前缀
replicate-wild-ignore-table=mysql.%     #排除要复制的表
replicate-wild-ignore-table=test.%
replicate-wild-ignore-table=information_schema.%
Salin selepas log masuk

Apabila menyambung ke konfigurasi baris arahan pelayan hamba Mysql, konfigurasikan IP, nama pengguna dan kata laluan nod induk. Yang paling penting ialah master_log_file dan master_log_pos Kedua-dua item ini adalah hasil pertanyaan

pada nod induk, dan ia mestilah sama dengan hasil pertanyaan nod induk.

# 在mysql主服务器中查询结果
mariadb [(none)]> show master status\g;
*************************** 1. row ***************************
  file: master-log.000003
  position: 18893845
  binlog_do_db: 
  binlog_ignore_db:
Salin selepas log masuk
Konfigurasikan pelayan hamba mysql

mysql > change master to 
master_host=&#39;10.0.0.66&#39;,
master_user=&#39;slave_user&#39;,
master_password=&#39;123456&#39;,
master_log_file=&#39;mysql-bin.000001&#39;,
master_log_pos=106;`
Salin selepas log masuk

Lihat status penyegerakan aktif

Lihat hamba induk dalam situasi Penyegerakan pelayan hamba. Ya dalam dua baris terakhir menunjukkan bahawa penyegerakan tuan-hamba berjaya. Anda juga boleh bertanya dan mengesahkan status penyegerakan induk-hamba dengan menanyakan jadual, perpustakaan dan juga data.

mariadb [(none)]> show slave status\g;
*************************** 1. row ***************************
   slave_io_state: waiting for master to send event
    master_host: 172.18.68.41
    master_user: slave-user
    master_port: 3306
   connect_retry: 60
   master_log_file: master-log.000002
  read_master_log_pos: 245
   relay_log_file: mysql-relay-bin.000002
   relay_log_pos: 530
 relay_master_log_file: master-log.000002
   slave_io_running: yes
  slave_sql_running: yes
Salin selepas log masuk
Pengerahan selesai

Anda boleh mengakses blog solo yang digunakan dengan mengakses 172.18.68.11/solo-2.4 melalui penyemak imbas Apabila anda masuk buat kali pertama, anda akan ditanya untuk mendaftarkan kata laluan pengguna, iaitu kata laluan akaun.

Pada ketika ini, tidak kira bagaimana nginx dijadualkan, tomcat boleh menyimpan sesi klien dalam redis. Anda boleh menggunakan perisian pengurusan redis windwos untuk melihat bahawa terdapat maklumat sesi dalam kedua-dua pangkalan data redis master dan slave.


Atas ialah kandungan terperinci Bagaimana untuk melaksanakan sesi berterusan melalui Nginx+Tomcat+Redis. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

Video Face Swap

Video Face Swap

Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Cara memulakan pelayan nginx Cara memulakan pelayan nginx Apr 14, 2025 pm 12:27 PM

Memulakan pelayan Nginx memerlukan langkah-langkah yang berbeza mengikut sistem operasi yang berbeza: Sistem Linux/Unix: Pasang pakej Nginx (contohnya, menggunakan apt-get atau yum). Gunakan SystemCTL untuk memulakan perkhidmatan Nginx (contohnya, SUDO SystemCTL Mula Nginx). Sistem Windows: Muat turun dan pasang fail binari Windows. Mula Nginx menggunakan nginx.exe executable (contohnya, nginx.exe -c conf \ nginx.conf). Tidak kira sistem operasi yang anda gunakan, anda boleh mengakses IP pelayan

Cara memeriksa nama bekas Docker Cara memeriksa nama bekas Docker Apr 15, 2025 pm 12:21 PM

Anda boleh menanyakan nama kontena Docker dengan mengikuti langkah -langkah: Senaraikan semua bekas (Docker PS). Tapis senarai kontena (menggunakan arahan grep). Mendapat nama kontena (terletak di lajur "Nama").

Cara Mengkonfigurasi Nginx di Windows Cara Mengkonfigurasi Nginx di Windows Apr 14, 2025 pm 12:57 PM

Bagaimana cara mengkonfigurasi nginx di Windows? Pasang Nginx dan buat konfigurasi hos maya. Ubah suai fail konfigurasi utama dan sertakan konfigurasi hos maya. Mulakan atau Muat semula Nginx. Uji konfigurasi dan lihat laman web. Selektif membolehkan SSL dan mengkonfigurasi sijil SSL. Selektif tetapkan firewall untuk membolehkan trafik port 80 dan 443.

Cara memeriksa sama ada nginx dimulakan Cara memeriksa sama ada nginx dimulakan Apr 14, 2025 pm 01:03 PM

Bagaimana untuk mengesahkan sama ada nginx dimulakan: 1. Gunakan baris arahan: status sistem sistem nginx (linux/unix), netstat -ano | Findstr 80 (Windows); 2. Periksa sama ada port 80 dibuka; 3. Semak mesej permulaan Nginx dalam log sistem; 4. Gunakan alat pihak ketiga, seperti Nagios, Zabbix, dan Icinga.

Cara Mengkonfigurasi Masa Pelaksanaan Skrip Lua di Centos Redis Cara Mengkonfigurasi Masa Pelaksanaan Skrip Lua di Centos Redis Apr 14, 2025 pm 02:12 PM

Pada sistem CentOS, anda boleh mengehadkan masa pelaksanaan skrip LUA dengan mengubah fail konfigurasi REDIS atau menggunakan arahan REDIS untuk mengelakkan skrip jahat daripada memakan terlalu banyak sumber. Kaedah 1: Ubah suai fail konfigurasi Redis dan cari fail konfigurasi Redis: Fail konfigurasi Redis biasanya terletak di /etc/redis/redis.conf. Edit Fail Konfigurasi: Buka fail konfigurasi menggunakan editor teks (seperti Vi atau nano): sudovi/etc/redis/redis.conf Tetapkan had masa pelaksanaan skrip lua: Tambah atau ubah suai baris berikut dalam fail konfigurasi untuk menetapkan masa pelaksanaan maksimum skrip lua (unit: milidor)

Cara Memulakan Bekas oleh Docker Cara Memulakan Bekas oleh Docker Apr 15, 2025 pm 12:27 PM

Docker Container Startup Langkah: Tarik Imej Bekas: Run "Docker Pull [Mirror Name]". Buat bekas: Gunakan "Docker Buat [Pilihan] [Nama Mirror] [Perintah dan Parameter]". Mulakan bekas: Jalankan "Docker Start [Nama Container atau ID]". Semak Status Kontena: Sahkan bahawa bekas sedang berjalan dengan "Docker PS".

Cara menjalankan Nginx Apache Cara menjalankan Nginx Apache Apr 14, 2025 pm 12:33 PM

Untuk mendapatkan Nginx untuk menjalankan Apache, anda perlu: 1. Pasang Nginx dan Apache; 2. Konfigurasikan ejen Nginx; 3. Mula Nginx dan Apache; 4. Uji konfigurasi untuk memastikan bahawa anda dapat melihat kandungan Apache selepas mengakses nama domain. Di samping itu, anda perlu memberi perhatian kepada perkara -perkara lain seperti padanan nombor port, konfigurasi tuan rumah maya, dan tetapan SSL/TLS.

Cara Memasang Redis di CentOS7 Cara Memasang Redis di CentOS7 Apr 14, 2025 pm 08:21 PM

Muat turun pakej kod sumber dari sumber Redis rasmi untuk menyusun dan memasangnya untuk memastikan versi terkini dan stabil dan boleh disesuaikan dengan cara yang diperibadikan. Langkah -langkah khusus adalah seperti berikut: Kemas kini senarai pakej perisian dan buat direktori Redis Download Redis Source Code Packompress Decompress Pakej Kod Sumber dan menyusun konfigurasi pemasangan dan mengubah suai konfigurasi Redis untuk memulakan REDIS Periksa status permulaan

See all articles