这是分布式集群环境下,如何实现session共享系列的第三篇。在上一篇:分布式集群环境下,如何实现session共享二(项目开发)中,准备好了一个通过原生态的servlet操作session的案例。本篇需要搭建相关的环境,包括:tomcat、nginx、redis。

  1.通过两个tomcat搭建集群:tomcat_1、tomcat_2

  2.通过nginx实现负载均衡

  3.通过redis存储session

1.安装tomcat

  1.1.tomcat_1

  上传tomcat_1到服务器192.168.80.22中。

#跳转到目录
cd /usr/local/develop#创建目录
mkdir atomcatcd atomcat

   server.xml配置文件(端口):

进程监听端口:<Server port="8005" shutdown="SHUTDOWN">
http服务端口:<Connector port="8080" protocol="HTTP/1.1"connectionTimeout="20000"redirectPort="8443" />
集群通信端口:<Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />

  1.2.tomcat_2

  上传tomcat_2到服务器192.168.80.22中。

#跳转到目录
cd /usr/local/develop#创建目录
mkdir atomcatcd atomcat

  server.xml配置文件(端口):

进程监听端口:<Server port="8006" shutdown="SHUTDOWN">
http服务端口:<Connector port="8081" protocol="HTTP/1.1"connectionTimeout="20000"redirectPort="8443" />
集群通信端口:<Connector port="8010" protocol="AJP/1.3" redirectPort="8443" />

2.安装nginx

  2.1.安装编译工具和库文件

yum -y install make zlib zlib-devel gcc-c++ libtool  openssl openssl-devel

  2.2.安装pcre

#进入目录
cd /usr/local/develop/anginx#上传安装文件并解压
tar -zxvf pcre-8.38.tar.gz#进入安装目录
cd pcre-8.38#检查配置
./configure#编译、安装
make && make install#查看pcre版本
pcre-config --version

  2.3.安装nginx

#进入目录
cd /usr/local/develop/anginx#上传安装文件,并解压
tar -zxvf nginx-1.8.1.tar.gz#进入安装目录
cd nginx-1.8.1#检查配置
./configure --prefix=/usr/local/develop/anginx/webserver/nginx --with-http_stub_status_module --with-http_ssl_module --with-pcre=/usr/local/develop/anginx/pcre-8.38#编译安装
make && make install#查看nginx版本/usr/local/develop/anginx/webserver/nginx/sbin/nginx -v
--------------------------------------------------------
[root@hadoop02 webserver]# /usr/local/develop/anginx/webserver/nginx/sbin/nginx -v
nginx version: nginx/1.8.1#配置nginx(检查)
/usr/local/develop/anginx/webserver/nginx/sbin/nginx -t#nginx管理命令
/usr/local/develop/anginx/webserver/nginx/sbin/nginx              # 启动 Nginx
/usr/local/develop/anginx/webserver/nginx/sbin/nginx -s stop              # 停止 Nginx
/usr/local/develop/anginx/webserver/nginx/sbin/nginx -s reload            # 重新载入配置文件
/usr/local/develop/anginx/webserver/nginx/sbin/nginx -s reopen            # 重启 Nginx

  2.4.nginx基础配置

#user  nobody;
worker_processes  1;#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 {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;server {listen       80;server_name  localhost;#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;}}

  2.4.nginx负载均衡配置

#添加tomcat列表,真实应用服务器都放在这
upstream tomcat_pool{#server tomcat地址:端口号 weight表示权值,权值越大,被分配的几率越大;server 192.168.80.22:8080 weight=4 max_fails=2 fail_timeout=30s;server 192.168.80.22:8081 weight=4 max_fails=2 fail_timeout=30s;#均衡策略#ip_hash;
}
---------------------------------------------------------------------------server {listen       80;server_name  tomcat_pool;#charset koi8-r;#access_log  logs/host.access.log  main;location / {#root   html;#index  index.html index.htm;proxy_pass http://tomcat_pool;    #转向tomcat处理
            proxy_set_header   Host             $host;proxy_set_header   X-Real-IP        $remote_addr;proxy_set_header   X-Forwarded-For  $proxy_add_x_forwarded_for;}#error_page  404              /404.html;.....................................................}

3.安装redis

  

#进入目录
cd /usr/local/develop/aredis#上传并解压redis
tar -zxvf redis-3.2.11.tar.gz#进入redis目录
cd redis-3.2.11#编译
make#进入src目录,并执行安装
cd srcmake install PREFIX=/usr/local/develop/aredis/myredis#启动redis服务端
[root@hadoop02 bin]# ./redis-server #客户端连接操作
[root@hadoop02 bin]# ./redis-cli

转载于:https://www.cnblogs.com/itall/p/10919602.html

分布式集群环境下,如何实现session共享三(环境搭建)相关推荐

  1. Apache shiro集群实现 (六)分布式集群系统下的高可用session解决方案---Session共享

    Apache shiro集群实现 (一) shiro入门介绍 Apache shiro集群实现 (二) shiro 的INI配置 Apache shiro集群实现 (三)shiro身份认证(Shiro ...

  2. Spring-Redis实现分布式环境下主子域名Session共享

    背景: 之前一直采用通过注解的方式配置Spring环境下的子域名共享,其基本思路是通过将session放入redis中,然后将使用HTTPSESSION更改为使用SpringSession的方式,使得 ...

  3. Hadoop伪分布式集群的安装部署

    Hadoop伪分布式集群的安装部署Hadoop伪分布式集群的安装部署 首先可以为Linux虚拟机搭建起来的最初状态做一个快照,方便后期搭建分布式集群时多台Linux虚拟机的准备. 一.如何为虚拟机做快 ...

  4. Ceph分布式集群安装配置

    前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家.点击跳转到网站:https://www.captainai.net/dongkelun 前言 记录Ceph分布式集群安 ...

  5. 技术干货实战(4)- 分布式集群部署模式下Nginx如何实现用户登录Session共享(含详细配置与代码实战)

    原文链接:技术干货实战(4)- 分布式集群部署模式下Nginx如何实现用户登录Session共享(含详细配置与代码实战) 最近有小伙伴催更,让debug多写点技术干货,以便多学习.巩固一些技能:没办法 ...

  6. k8s-大型分布式集群环境捷径部署

    转k8s-大型分布式集群环境捷径部署 课程介绍 ​ Kubernetes(k8s)一个用于容器集群的自动化部署.扩容以及运维的开源平台.通过Kubernetes,你可以快速有效地响应用户需求;快速而有 ...

  7. Hadoop2.7.3+HBase1.2.5+ZooKeeper3.4.6搭建分布式集群环境

    Hadoop2.7.3+HBase1.2.5+ZooKeeper3.4.6搭建分布式集群环境 一.环境说明 个人理解: zookeeper可以独立搭建集群,hbase本身不能独立搭建集群需要和hado ...

  8. Storm环境搭建(分布式集群)

    作为流计算的开篇,笔者首先给出storm的安装和部署,storm的第二篇,笔者将详细的介绍storm的工作原理.下边直接上干货,跟笔者的步伐一块儿安装storm. 原文链接:Storm环境搭建(分布式 ...

  9. Linux下Apache与Tomcat的完全分布式集群配置(负载均衡)

    最近公司要给客户提供一套集群方案,项目组采用了Apache和Tomcat的集群配置,用于实现负载均衡的实现. 由于以前没有接触过Apache,因此有些手生,另外在网上搜寻了很多有关这方面的集群文章,但 ...

最新文章

  1. [JavaScript]关于div的隐藏
  2. 2.2.4 操作系统之作业/进程调度算法(FCFS先来先服务、SJF短作业优先、HRRN高响应比优先)
  3. ios 内存深度优化_iOS 25个性能优化/内存优化常用方法
  4. Notepad++插件之ftp/sftp远程编辑功能,以及各种插件(转:http://blog.csdn.net/happy_wu/article/details/73302994)
  5. 文件上怎么盖章_投标文件该怎么盖章呢?投标人必看!
  6. java runtime类高级,java入门 -- RunTime类
  7. hosts ip 指向ip_【好玩的网络-第4期】DNS硬核科普,你是怎么上网的?DNS里都有啥?传说中的hosts文件又是啥?...
  8. STM32F4_USART配置及细节描述
  9. 作为 IT 行业的过来人,你有什么话想对后辈说的?
  10. Centos防火墙添加IP白名单
  11. 原生JS实现粘贴到剪贴板
  12. mongoDB的配置以及运行
  13. 理解Java主函数中的String[] args
  14. java 单例 初始化_单例数据库对象启动时参数化初始化?
  15. 中国人工智能学会通讯——人工智能在各医学亚专科的发展现状及趋势 1.6 结束语...
  16. Linux下编译安装WizNote
  17. VBScript 程序员参考手册 读书笔记01-07
  18. win7 计算器 android,win7计算器
  19. Dota2 荒神罪 破解
  20. docker 启动时错误docker: Cannot connect to the Docker daemon

热门文章

  1. 【译】Secure Computations as Dataflow Programs Implementing the SPDZ Protocol using TensorFlow
  2. 用区块链改变人工智能:去中心化带来数据新范式
  3. Algorand协议详解
  4. android 6.0 logcat机制(三)logd处理请求log
  5. JZOJ 5068. 【GDSOI2017第二轮模拟】树
  6. 卸料装置弹性零件的计算方法_冲裁模卸料板的设计
  7. html表单页脚,HTML 表格
  8. 我拿什么融化你,冰冷的电子图书馆?
  9. [CODEVS 3037] 线段覆盖 5
  10. ICCV 2017 《Illuminating Pedestriant via Simultaneous Detection Segmentation》论文笔记