关于java:京淘项目day08

2次阅读

共计 3310 个字符,预计需要花费 9 分钟才能阅读完成。

1. 京淘后盾优化

1.1 门路优化

1.1.1 编辑 properties 配置文件

1.1.2 编辑 FileServiceImpl

动静为属性赋值.

2 实现商品图片回显

2.1 反向代理

反向代理服务器位于用户与指标服务器之间,然而对于用户而言,反向代理服务器就相当于指标服务器,即用户间接拜访反向代理服务器就能够取得指标服务器的资源。同时,用户不须要晓得指标服务器的地址,也毋庸在用户端作任何设定。反向代理服务器通常可用来作为 Web 减速,即应用反向代理作为 Web 服务器的前置机来升高网络和服务器的负载,进步拜访效率。

特点:
    1. 反向代理服务器位于用户与指标服务器之间
    2. 对于用户而言, 认为代理服务器就是实在的服务器
    3. 反向代理机制爱护了实在的服务器信息
    4. 反向代理个别称之为服务端代理

步骤:
    1. 当用户发动申请时, 该申请被代理服务器拦挡.
    2. 代理服务器查问本人的配置文件, 依据 url 地址获取实在的服务器信息.
    3. 有代理服务器依据实在的服务器信息, 获取数据,
    4. 实在的服务器接管申请之后, 将数据返回给代理服务器
    5. 代理服务器接管到

2.2.1 正向代理阐明

正向代理,意思是一个位于客户端和原始服务器 (origin server) 之间的服务器,为了从原始服务器获得内容,客户端向代理发送一个申请并指定指标(原始服务器),而后代理向原始服务器转交申请并将取得的内容返回给客户端。客户端能力应用正向代理。

特点:
    1. 代理服务器位于用户与实在服务器之间
    2. 客户十分分明本人拜访的服务器到底是谁
    3. 服务器不分明拜访本人的服务器到底是谁, 认为只是代理服务器拜访.
    4. 正向代理称之为客户端代理, 爱护了客户信息

Nginx

2.3.1 Nginx 服务器服务器介绍

Nginx (engine x) 是一个高性能的 HTTP 和反向代理 web 服务器,同时也提供了 IMAP/POP3/SMTP 服务。Nginx 是由伊戈尔·赛索耶夫为俄罗斯访问量第二的 Rambler.ru 站点(俄文:Рамблер)开发的,第一个公开版本 0.1.0 公布于 2004 年 10 月 4 日。

其将源代码以类 BSD 许可证的模式公布,因它的稳定性、丰盛的功能集、示例配置文件和低系统资源的耗费而闻名。2011 年 6 月 1 日,nginx 1.0.4 公布。

Nginx 是一款轻量级的 Web 服务器 / 反向代理服务器及电子邮件(IMAP/POP3)代理服务器,在 BSD-like 协定下发行。其特点是占有内存少,并发能力强,事实上 nginx 的并发能力在同类型的网页服务器中体现较好,中国大陆应用 nginx 网站用户有:百度、京东、新浪、网易、腾讯、淘宝等。

特点:
    1. 占用内存少 不超过 2M
    2. 并发能力 5 万 / 秒   tomcat 150-220 个 / 秒
    3. 开发语言  C 语言

2.3.2 Nginx 下载

2.3.3 Nginx 装置

启动: 首先右键以管理员身份运行, 之后程序闪退

2.3.4 查看 Nginx 服务启动项

nginx 启动时, 会启动 2 个过程项, 其中一个
1. 主过程, 次要为用户提供反向代理服务, 占用内存大
2. 守护过程, 避免主过程意外敞开, 占用内存小

启动失常测试

2.4 Nginx 入门案例阐明

2.4.1 配置文件阐明

http{
    #必须在 http 协定之内进行配置
    server{
        listen 80;
        server_name "监听的域名地址";
        location / {root "反向代理的是一个目录";}
    }
    server{...}
}

2.5 NGINX 实现图片回显

2.5.1 编辑 Nginx.conf 文件

# 配置图片代理服务器 http://image.jt.com
server {
    listen 80;
    server_name image.jt.com;
    
    location / {root E:/Stage5;}
}

2.5.2 Nginx 命令

目录: 在 nginx 的根目录中执行

命令:
    1. 启动命令: start nginx
    2. 重启命令: nginx -s reload
    3. 终止命令: nginx -s stop

2.4.4 编辑 hosts 文件

介绍:HOSTS 文件是操作系统为了不便开发, 在本地造成的一个域名与 IP 的映射的文件. 然而该文件只对本机无效.
地位:C:WindowsSystem32driversetchosts

文件内容:

#IP 域名  映射关系

127.0.0.1  image.jt.com

127.0.0.1  manage.jt.com

127.0.0.1  www.jt.com

127.0.0.1  sso.jt.com

127.0.0.1  localhost

2.5.4 对于 nginx 回显图片报错问题阐明

1. 查看配置文件是否正确

2. 查看上传门路

3. 查看 nginx 配置是否失常

4. 查看 nginx 是否启动失常

5. 查看 host 文件是否无效

2.6 实现域名的代理

2.6.1 业务需要

需要: 须要通过 http://manage.jt.com 域名拜访 l …:8091 的服务器.

操作:
    1. 批改 hosts 文件
    2. 批改 nginx 的配置文件

2.6.2 批改 nginx.conf 配置文件

批改 nginx 之后, 重启即可.

3 nginx 高级用法

3.1 nginx 负载平衡机制

3.2 动静获取服务端端口号

申请门路:http://manage.jt.com/getPort 获取以后的服务器端口号信息

package com.jt.controller;

import org.springframework.beans.factory.annotation.Value;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

@RestController
public class PortController {@Value("${server.port}")
    private String port;
    /**
     * 获取端口号信息
     */
    @RequestMapping("/getPort")
    public String getPort(){return "以后拜访的服务器的端口号为:"+port;}
}

3.3 我的项目打包

3.3.1 利用 maven 形式打包

阐明: 批改各自的端口号, 之后将我的项目打包

3.3.2 利用压缩工具打包

将 xxx.war 改为 xx.zip 之后利用压缩工具批改配置文件

3.3.3 我的项目公布

命令: java -jar 8081.war 会占用一个终端窗口, 在运行时, 终端不能敞开

3.3.4 开释资源的组合键

ctrl + c

3.4 nginx 负载平衡测试

3.4.1 轮训策略

阐明: 依照 nginx.conf 中配置文件的程序顺次拜访.

# 配置商品后盾服务器
    server{
        listen  80;
        server_name manage.jt.com;

        location / {
            #代理实在服务器地址
            #proxy_pass http://localhost:8091;
            #映射到集群
            proxy_pass  http://jtWindows;
        }
    }

    #配置 tomcat 服务器集群  1. 默认 轮询策略
    upstream jtWindows {
        server 127.0.0.1:8081;
        server 127.0.0.1:8082;
        server 127.0.0.1:8083;
    }

3.4.2 权重策略

阐明: 因为公司的物理服务器可能性能有高有低, 为了让高性能的服务器解决更多的数据.

# 配置 tomcat 服务器集群  1. 默认 轮询策略  2. 权重策略
    upstream jtWindows {
        server 127.0.0.1:8081  weight=6;
        server 127.0.0.2:8082  weight=3;
        server 127.0.0.3:8083  weight=1;
    }

3.4.3 IPHASH 策略

阐明: 如果须要将 服务器与 IP 地址 进行绑定时, 应用该策略

# 配置 tomcat 服务器集群  1. 默认 轮询策略  2. 权重策略  3.ip_hash 策略
    upstream jtWindows {
        ip_hash;
        server 127.0.0.1:8081  weight=6;
        server 127.0.0.2:8082  weight=3;
        server 127.0.0.3:8083  weight=1;
    }

原理:

正文完
 0