• 6、nginx+linux下jdk配置


    Nginx高级

    1.1 Nginx的进程

    1.1.1 进程与守护进程

    说明:Nginx的启动一次启动2个进程.一个是主进程,另一个是守护进程.守护进程的作用防治主进程意外关闭.

    关闭Nginx:

    如果需要关闭Nginx,先关闭守护进程.在关闭主进程.

    nginx  -s stop

    1.1.2 Nginx的实例化

    说明:Nginx的进程可以做到秒开和秒关,并且可以无限的开启进程.并且支持50000次的并发.

    1.1.3 Nginx系统首页跳转

    说明:Nginx中可以写很多的服务项,每拦截一个url就是一项服务(server).

    server {
            listen       80;
            server_name  localhost;
    
            #charset koi8-r;
    
            #access_log  logs/host.access.log  main;
    
            location / {
                root   html;
                index  index.html index.htm;
            }

     

    特殊的属性:

    root :表示转向的是一个文件夹

    proxy_pass:表示转向具体的URL.它是一个代理的请求

    1.2 实现京淘后台页面跳转

    1.2.1 编辑Nginx配置文件

    要求:url中输入manage.jt.com时需要将请求转发到localhost:8091上

    实现:

    通过Nginx实现反向代理

    #京淘的后台管理系统  nginx负载监听浏览器.拦截具体的url实现页面转向

    server { 
            listen        80;
            server_name    manage.jt.com;
    
            #页面转向 转向的是一个具体的url 
            location / {
                proxy_pass http://localhost:8091;    
            }
        }

    1.2.2 编辑Hosts文件

    说明:通过Hosts工具实现修改.修改hosts的作用是将请求转发到本机.

     

    1.2.3 页面跳转测试

     

    1.2.4 异常说明

    说明:

    1. 重启Nginx时需要将nginx先全部关闭.再次启动.之后测试
    2. 配置文件复制前一个后修改

    Nginx实现集群的部署

    2.1 集群部署

    2.1.1 集群部署的意义

    说明:通过配置集群的方式,是解决高并发问题有效方案.

    解决方法:通过Nginx负载均衡技术和反向代理技术,可以实现集群的搭建

     

    2.2 Window中启动多台tonmcat

    2.2.1 Tomcat配置

    说明:有些机器可能启动无缓冲tomcat时报错.需要自己手动复制本机自由的tomcat做测试.

    2.2.2 修改配置文件

    说明:分别将项目的parent-common-manage通过Maven工具打包

    1.修改server.xml文件的端口

    <Connector port="8092" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" />

    2.修改日志监听端

    <Server port="8006" shutdown="SHUTDOWN">

    3.修改AJP端口

    <Connector port="8010" protocol="AJP/1.3" redirectPort="8443" />

    2.3 配置Nginx

    2.3.1 编辑负载均衡

    #实现Nginx的负载均衡
        upstream jt{
            server 127.0.0.1:8091;
            server 127.0.0.1:8092;
            server 127.0.0.1:8093;
        }

     

    2.3.2 负载均衡实现

    #京淘的后台管理系统  nginx负载监听浏览器.拦截具体的url实现页面转向
        server { 
            listen        80;
            server_name    manage.jt.com;
    
            #页面转向 转向的是一个具体的url  表示upstream名称
            location / {
                proxy_pass http://jt;    
            }
        }

    2.4 Tomcat启动时异常

    2.4.1 引入log4j日志jar

     

    说明:

    引入日志文件需要的步骤

    1.引入log4j.jar

    2.检测是否含有配置文件

    3.properties文件如何被引用

    要求:

        1.文件的名称必须为log4j.properties

        2.要求文件的路径位于resources目录下

    原因:

    因为在log4j源码中有静态代码块.默认的读取的配置文件的路径和名称都是写死的/log4j.properties

    2.4.2 Tomcat日志文件

    说明:通过tomact的日志文件检测报错信息.如果文件过多,先将tomcat停止,之后删除catalina.log文件,之后重启

     

     

    2.4.3 常见的错误

    1. 字母的大小写 ,除了类名开头之外 ,全部的都是小写的(sql语句/配置文件的路径)
    2. 端口被占用

    a) 关机重启

    b) ~~~~~~~

    2.5 Nginx负载均衡的策略

    2.5.1 轮询策略

    说明:每台服务根据顺序依次访问.并且它是nginx中默认的负载均衡的方式.

    加载的顺序和Nginx中的配置的顺序是相同的

     

    2.5.2 权重的方式

    需求:

    由于公司的服务器不同同一个型号,性能上略有差异.这时使用轮询可能会出现问题

    2.解决方法:采用权重的方式

    说明:根据服务器的性能,动态的分配连接.

     

    说明:通过权重的形式,可以根据服务器的性能,动态的分配连接.一般公司配置使用权重的方式

    2.5.3 IP_hash配置

    需求:如何实现Session共享????

    问题描述:当用户登陆一台服务器时,在服务器内部保存了用户的Session信息.如果用户再次发出请求后,将不能保证用户访问的依然是登陆过的服务器.这时需要用户再次登录.这种问题如何解决????

    总结问题:由于用户访问的服务器不固定,导致Session不能共享.

    解决办法:通过IP_Hash

    说明:通过用户的IP地址,nginx中内部进行哈希值运行.最终绑定唯一的一台服务器.

    总结:

    通过IP_hash的计算,将服务器与用户的IP地址进行了绑定.实现了Session的共享.---------Session黏着!

    通过IP_hash能够解决简单的Session共享问题.大型公司不会使用该方式(SSO)

     

    图例说明:

    如果在配置文件中配置了IP_hash,轮询和权重将不起作用.

    2.5.4 备用机机制

    说明:如果nginx中的服务器都处于满负荷状态.无暇顾及新的连接.这时备用机才会生效.如果主服务器.处理完请求后处于正常状态.这时备用机处理等待状态.

     

    2.5.5 通过Nginx如何实现项目部署

    需求:需要将war包部署到服务器中????

    方法:通过Nginx下线服务器处理

     

    如果在server后边添加down配置.nginx不会再将请求发往该服务器.当服务器部署完成后,down去掉,之后重启nginx服务器.表示部署完成.由于nginx的开启和关闭的是速度很快,所有用户没有感觉!!!

    Linux的项目部署

    3.1 虚拟机启动

    3.1.1 解压文件

    说明:通过VMware打开VMX文件即可

    打开以后的效果

    3.1.2 Linux操作操作系统的种类

    特点:

    1. Linux操作系统在服务器端大量的使用
    2. Linux系统安全性更好
    3. Linux系统稳定性更强  2周维护一次---一个月(运维)
    4. Linux操作系统全部都是基于文件的
    5. 克隆linux系统

     

    3.1.3 克隆操作系统

     

     

    2.创建链接克隆之后修改名称和路径

    3.2  Linux网络配置

    3.2.1 桥接模式

     

     

    3.2.2 NAT模式

    说明:采用NAT模式后,只要固定了IP地址,可以永久的访问.不用修改代码

     

    查询命令:ifconfig

    3.2.3 固定IP地址

    3.2.4 安装xShell文件

    说明:XShell是远程连接Linux操作系统的工具.通过xShell连接远程的Linux操作系统

    之后输入用户名和密码链接程序

    说明:如果出现该提示信息表示xShell连接虚拟机连接成功

    3.2.5 创建快照

    3.2.6 Linux系统命令

    用户名密码:root root

    1.cd /         回到根目录

    2.ls           查询当前文件夹中的文件

    3.ll           查询文件夹的详细信息

    4.pwd          查询当前文件夹的路径

    5. mkdir java tomcats   创建多个文件夹

    6.mkdir -p aa bb/cc     创建多个文件夹

    7.rm -rf  aa bb

       8.rm 文件名称   y/n y

       9.vim aa.txt

    1.如果没有aa.txt文件则创建

    2.如果含有aa.txt文件则编辑

    3.I:表示编辑

    4.Esc 退出模式模式

    5.:wq 保存退出

    6.Esc+u 撤销

    3.3 JDK的配置

    3.3.1 传输JDK

    选中文件夹之后 拖拽到系统中(文件夹路径固定)

    3.3.2 解压JDK

    3.3.3 配置环境变量

    说明: vim /etc/profile 表示编辑环境变量

     

     

    3.3.4 让配置生效

     

    3.3.5 测试JDK配置是否成功

     

  • 相关阅读:
    2010,只有感恩。
    用 pythonmessage 为程序库和日志模块解耦
    PHP 范例
    Install Perl CPAN modules
    关于人生的思考
    Exception in thread "main" java.lang.OutOfMemoryError: Java heap space
    PHP error: Cannot modify header information headers already sent
    Iceweasel安装Java plugin
    ARP协议以及集线器,交换机,路由器的组合
    Java 字符串操作
  • 原文地址:https://www.cnblogs.com/xiangyuqi/p/8651260.html
Copyright © 2020-2023  润新知