zoukankan      html  css  js  c++  java
  • tomcat + nginx 负载均衡 动静分离 session会话配置

       第一台虚拟机:apache
    下载要用的环境包
    yum 安装java  环境
    java -version  检测
     yum 安装lrzsz  
      rz 拉包
    tar -zxvf  解压包
    cp -r wenjian /opt/tomcat  解压到指定的目录下
    cd /opt/tomcat/bin        
    ./startup.sh  启动 tomcat    打开网页测试,
    echo "/opt/tomcat/bin/startup.sh">>/etc/rc.local   设置开机启动

    vim /opt/tomcat/conf/server.xml   编辑主配置文件
      Connector port="80"    修改端口号为80
    ./shutdown.sh
    ./startup.sh
     
     网页测试 
    /opt/tomcat/webapps/Root/index.jsp    更改默认主页(可以删掉 自己编写 )
    -------------------------------
    <%@ page contentType="text/html" %>
       <html>
           <body>
                 HELLO!
           </body>
        </html>
    --------------------------------------
    rz  拉进来所需要的  平台信息或者包
    yum  unzip  安装

    [root@localhost tomcat]# cp Anynote.war /opt/tomcat/webapps/
    [root@localhost tomcat]# cd webapps/
    [root@localhost webapps]# ls
    Anynote  Anynote.war  docs  examples  host-manager  manager  ROOT
    [root@localhost webapps]# cd Anynote
    [root@localhost Anynote]# ls
    database  index.jsp  META-INF  WEB-INF  websrc

    再次测试   ip:8080/Anynote


    yum -y install mariadb mariadb-server   安装数据库
    systemctl start mariadb      开启数据库

    [root@localhost ~]# mysqladmin -uroot password 123     创建 用户密码
    [root@localhost ~]# mysql -uroot -p         登陆数据库
    Enter password:            密码一般 后输入   防止泄密
    create databases Anynote;  创建数据库
    exit

    # mysql -uroot -p123 Anynote < /opt/tomcat/webapps/Anynote/database/Anynote(Mysql).sql   :导入数据库

    cd /opt/tomcat/webapps/Anynote/WEB-INF/     发布目录下
    vim jdbc.properties          配置关联数据库中的 名字,密码等等

    jdbc.url=jdbc:mysql://localhost:3306/Anynote     保持创建的数据库的名字 和这个一样
    jdbc.password=123           添加密码 

    cd /opt/tomcat/bin/      启动目录下
    ./shutdown.sh
    ./startup.sh        

    登陆 admin   admin   登陆成功

    第二台虚拟机 nginx
    关闭防火墙
    yum -y install lrzsz       rz拉包
    tar zxf nginx-1.9.0.tar.gz -C /usr/src/ 解压指定路径
    cd /usr/src/nginx-包               : set nu  列出行数
    ls
    yum -y install gcc gcc-c++ pcre-devel zlib-devel  安装
    ls
    ./configure --prefix=/usr/local/nginx 执行环境检查并指定安装目录
    make && make install 编译并安装
    cd /usr/local/nginx/  安装目录下看一下
    ls    有(conf html logs sbin)就对了
       《conf/nginx.conf(配置文件)》
    usr/local/nigix/sbin/nginx  启动nginx

    测试 http://ip  页面是 (wellcome to nginx)
    -------------------------------------------------------------------------
    如果报错的话 端口占用。                                              ---- 《 错误  不用这个
    vim conf/nginx.conf  (修改listen :80   为8080就可以了)-----------------
    再查看 端口  lsof -i :80     /    :8080   ------------------------------
    ------------------------------------------------------------------------
    优化:                                              ----
    nginx  内的woker_processes 1;   取决于自己电脑的CUP  ----
    worker_rlimit_nofile 204800;                       -----
    gzip  压缩                                          -----
    blog.ccdn.net  网站  可以查看 优化配置               -----
    -------------------------------------------------------------
     vim /usr/local/nginx/conf/nginx.conf        配置文件下关联数据库

            location ~ .(gif|jpg|jpeg|bmp|png|txt|ico|js|css)$ {        当访问 主页的时候 如果有页面或者图片等找这个路径
                    root   /usr/local/nginx/web;
            }
            location ~ {                                 
                    proxy_pass http://192.168.70.100:8080;        如没有的话找这个  端口:8080  别忘了写
             }

    /usr/local/nigix/sbin/nginx      开启服务

    虚拟机apache   :
     cd /opt/tomcat/webapps/     进到发布目录下
     ls                      找到ROOT
     mv ROOT ROOT.bak           移走原有的发布目录
     mv Anynote ROOT          把新的 需要显示的 目录放进去   必须与数据库的名字一样,
      

       84  cd /opt/tomcat/webapps/ROOT/WEB-INF/
       85  LS
       86  ls
       87  vim jdbc.properties
       88  cd
       89  cd /opt/tomcat/webapps/ROOT
       90  ls
       91  cd ..
       92  scp -r ROOT root@192.168.70.101:/usr/local/nginx/web   远程把 ROOT 发送至nginx 的发布目录下

       需要输入 nginx 虚拟机登陆的密码  (一般是 123456)
       


         nginx :上查看
      cd /usr/local/nginx/web/
        ls
     
         apache: 启动目录    
       94  cd /opt/tomcat/bin/
       95  ./shutdown.sh
           ./startup.sh   
        在开启   nginx    就可以登陆了 。

    负载均衡:

    apache 2  

     
    共享数据库: 
     数据库1 配置
    MariaDB [(none)]> grant all on *.* to daxian@'%' identified by '123';    ||||数据库创建并给权限 最大的权限  数据库1 给数据库2 权限

    数据库2 配置
    cd /opt/tomcat/webapps/Anynote/WEB-INF/
    vim jdbc.properties
    ------------------------------------------------------------------------------
    jdbc.url=jdbc:mysql://192.168.70.100:3306/Anynote     要关联数据库的地址 

    # Database Login UserName
    # If Mysql: Mysql Login UserName
    # If Sqlite: Empty                                -------------------------
    jdbc.username=daxian      给权限的用户            ------------------------

    # Database Login Password
    # If Mysql: Mysql Login Password                  --------------------------
    # If Sqlite: Empty
    jdbc.password=123          设置密码               ---------------------------
    ----------------------------------------------------

    访问就能 显示了

    备注:
      修改完配置文件 要重启服务。

      nginx 配置: 代理配置
    [root@localhost ~]# vim /usr/local/nginx/conf/nginx.conf

     http {
    upstream www{                          实现负载    www 为下面 location ip 解析    
          server 192.168.70.100:8080;        有两个服务器,                             |
          server 192.168.70.102:8080;          
     }
        include       mime.types;
        default_type  application/octet-stream;

      location ~ .(gif|jpg|jpeg|bmp|png|txt|ico|js|css)$ {
                    root   /usr/local/nginx/web;
            }
            location / {
                    proxy_pass http://www;   修改为和上面对应的 名字   www            
             }
    负载完成
    -------------      ----------------------
     pkill nginx                    关闭   重启
    /usr/local/nginx/sbin/nginx

    测试 两台tomcat 
    tail -f /opt/tomcat/logs/localhost_access_log.2016-12-30.txt

    session 会话 配置。
     
      nginx配置
    [root@localhost ~]# yum -y install memcached memcached-devel       安装 memcached

    [root@localhost ~]# systemctl start memcached                  启动  memcached

      
     tomcat :1  2  配置:

     [root@localhost ~]# cd /opt/tomcat/lib/
        rz 
      tomcat_session_jar  里面的9个包
       vim /opt/tomcat/conf/context.xml

       添加 

    <Manager className="de.javakaffee.web.msm.MemcachedBackupSessionManager" 
                memcachedNodes="n1:192.168.55.128:11211"                            修改为 memcached 的网址
                sticky="false" 
                sessionBackupAsync="false" 
                requestUriIgnorePattern=".*.(ico|png|gif|jpg|css|js)$" 
                transcoderFactoryClass="de.javakaffee.web.msm.serializer.kryo.KryoTranscoderFactory" 
        />

    登陆  ngnix  刷新 界面 不掉 就完成了

  • 相关阅读:
    .net经典笔试题
    asp.net面试题
    Java 面 试 题
    .net面试题集
    J2EE面试题集锦
    linux下查看硬件信息
    linux下软件的安装[转]
    在Linux系统下优化Oracle具体步骤
    制作Linux的优盘启动盘
    两端对齐,图片文字列表
  • 原文地址:https://www.cnblogs.com/daxiansmd/p/6392950.html
Copyright © 2011-2022 走看看