CGB2102-京淘项目day18
1.实现图片回显2.Nginx3.实现tomcat集群部署4.虚拟机搭建和使用 基本Linux命令
1.Nginx
1.1 问题说明
虚拟路径:
http://image.jt.com/2021/05/22/6fc9566f8911420fb1ae5c31cd36ae34.jpg
真实磁盘路径:
D:\JT_IMAGE\2021\05\22\6fc9566f8911420fb1ae5c31cd36ae34.jpg
说明: 如果通过虚拟路径进行访问,由于没有进行路径的映射,所以不能展现图片!!!
解决方案:
http://image.jt.com -> D:\JT_IMAGE 进行绑定(映射)
实现方案:反向代理技术
1.2 关于代理机制说明(考点)
1.2.1 反向代理
介绍:
反向代理服务器位于用户与目标服务器之间,但是对于用户而言,反向代理服务器就相当于目标服务器,即用户直接访问反向代理服务器就可以获得目标服务器的资源。同时,用户不需要知道目标服务器的地址,也无须在用户端作任何设定。反向代理服务器通常可用来作为Web加速,即使用反向代理作为Web服务器的前置机来降低网络和服务器的负载,提高访问效率。 [1]
反向代理流程图:
总结:
1.反向代理服务器介于用户与目标服务器之间
2. 用户以为反向代理服务器就是目标服务器.
3. 用户无须关心真实的服务器地址. 反向代理机制保护了目标服务器的信息
1.2.2 正向代理
正向代理,意思是一个位于客户端和原始服务器(origin server)之间的服务器,为了从原始服务器取得内容,客户端向代理发送一个请求并指定目标(原始服务器),然后代理向原始服务器转交请求并将获得的内容返回给客户端。客户端才能使用正向代理。
总结:
1. 代理服务器介于用户和目标服务器之间
2. 用户发起请求时,明确告知代理服务器访问的真实地址是谁
3. 正向代理保护了客户的信息.服务器无须了解真实的访问者到底是谁!!!
一般的正向代理通常用在网络请求中(路由器!!!)
1.2.3 实际应用
一般情况下 正向代理和反向代理都会使用. 正向服务实现网络通讯,反向负责获取服务器数据.
1.3 Nginx服务器
1.3.1 Nginx介绍
Nginx (engine x) 是一个高性能的HTTP和反向代理web服务器,同时也提供了IMAP/POP3/SMTP服务。Nginx是由伊戈尔·赛索耶夫为俄罗斯访问量第二的Rambler.ru站点(俄文:Рамблер)开发的,第一个公开版本0.1.0发布于2004年10月4日。
Nginx并发能力: 5万/秒 实际能力: 3万/秒
开发语言: C语言
1.3.2 Nginx下载
1.3.3 Nginx安装说明
1).nginx安装的目录中不能出现中文/空格/C盘的系统文件中.
2).nginx 会默认占用80端口
3).nginx 启动时需要通过命令执行.
1.3.4 Nginx启动步骤
1).首先以管理员身份运行 获取权限
2).访问网址:localhost:80 是否正常
如果启动异常,则去京淘问题集 检查标题8
1.3.5 Nginx进程项说明
主进程: 主要提供反向代理服务的.
守护进程: 防止主进程意外关闭
1.3.6Nginx命令
要求: 在nginx的根目录中执行
命令:
1.启动nginx start nginx 如果配置文件有错 也不提示.
2.重启nginx nginx -s reload 配置文件有错 ,会报错提示
3.关闭nginx nginx -s stop
1.4 Nginx反向代理机制说明
1.5 Nginx实现图片反向代理
1.5.1 代理规则
虚拟路径: http://image.jt.com:80/2021/05/22/6fc9566f8911420fb1ae5c31cd36ae34.jpg
磁盘地址: D:\JT_IMAGE/2021/05/22/6fc9566f8911420fb1ae5c31cd36ae34.jpg
1.5.2 反向代理配置
#配置图片代理服务器
server {
listen 80;
server_name image.jt.com;
location / {
#注意使用/ 不要使用\
root D:/JT_IMAGE;
}
}
1.5.3 图片回显流程
如果需要访问本地的Nginx服务器,则需要配置hosts文件,实现域名与IP的映射.
HOSTS.文件位置:
修改HOSTS:
#IP 域名 映射关系
#图片服务器域名
127.0.0.1 image.jt.com
#后台服务器域名
127.0.0.1 manage.jt.com
#前台服务器域名
127.0.0.1 web.jt.com
页面效果展现
1.6 关于图片回显报错解决方案
1.6.1 请求路径问题
1.检查URL路径是否正确: 注意协议名称是否添加
http://image.jt.com/2021/05/22/e342270ac43a4306a361d1d6a796a39a.jpg
2.更换磁盘路径 检查是否正确
D:/JT_IMAGE/2021/05/22/e342270ac43a4306a361d1d6a796a39a.jpg
如果测试通过则表示后端代码没错.
1.6.2 HOSTS文件测试
将hosts中的域名直接访问,检查是否如图
1.6.3 检查Nginx配置
注意 / 问题
1.6.4 检查Nginx是否重启
将nginx全部关闭. 关闭之后重启nginx
2 Windows项目发布
2.1 将项目编译打包
2.1.1 打包前台
2.1.2 检查是否有打包文件
2.1.3 将文件导入nginx
2.1.4 编辑前端代理
#配置前端服务器 web.jt.com:80
server {
listen 80;
server_name web.jt.com;
location / {
root dist;
index index.html;
}
}
2.1.5 页面效果展现
2.2 后端服务器搭建
2.2.1 动态获取端口
2.2.2 利用域名实现后端访问
说明: 要求用户访问: manage.jt.com 实现后端服务器跳转
#配置后端服务器
server {
listen 80;
server_name manage.jt.com;
location / {
#表示映射远程链接
proxy_pass http://localhost:8091;
}
}
2.3 后端集群搭建
2.3.1 集群搭建架构图
2.3.2 项目打包
2).查找jar包文件
3).将YMl配置文件修改为8092之后,重新打包,效果如下 启动之前确保IDEA中的服务应该关闭
2.3.3 项目发布
发布命令: java -jar 8091.jar
java -jar 8092.jar
注意事项: 每个终端都会被一个进程使用,如果需要启动多个tomcat服务器,则应该开启多个终端
2.4 实现集群配置
要求: 通过manage.jt.com 要求访问8091/8092的服务器.
2.4.1 编辑nginx配置文件
#集群配置
upstream jts {
server localhost:8091;
server localhost:8092;
}
#配置后端服务器
server {
listen 80;
server_name manage.jt.com;
location / {
#表示映射远程链接
#proxy_pass http://localhost:8091;
proxy_pass http://jts;
}
}
2.5 负载均衡
2.5.1 轮询
说明: 根据配置文件的顺序 依次访问服务器.
2.5.2 权重
说明: 根据设定的权重大小 挑选哪台服务器优先访问.
2.5.3 IPHASH策略
说明: 如果需要用户与服务器进行绑定,则使用该策略
IPHASH算法:
2.6 实现前后端调用
1).修改路由文件
2).修改addItem.vue文件上传路径
更多推荐
所有评论(0)