系统相关
首页 > 系统相关> > 技能栏_聚合工程/Nginx/FastDFS/jsonp/Httpclient

技能栏_聚合工程/Nginx/FastDFS/jsonp/Httpclient

作者:互联网

1.聚合工程

集合工程也称为maven多模块,是分布式系统的基础和框架

1.1 聚合工程的优点在哪里体现?

之前我们搭建一个SSM的后台管理系统,大概分为以下几个包

但是在分布式系统中,每个系统的模块之间是会有联系的,比如订单系统需要用到后台管理系统中的com.taotao.manage.pojo,我们之前的做法是直接将pojo复制到订单系统中,但是这样不利于管理,比如后台系统中的pojo发生了改变,订单系统中pojo也要进行修改,十分难维护,如果将后台管理系统的pojo变成一个jar包,订单系统也可以依赖这个jar包.这就是聚合工程的意义

简而言之:聚合工程可以将其中不同的模块分别打成jar包,其他工程就能依赖这些jar包


1.2 基本的聚合工程

一个基本的聚合工程一般由pom工程,jar工程,web工程组成

示例:

在这里插入图片描述
聚合工程内部的模块,通过在pom中add Dependencies就可以直接依赖,而不用将某个模块maven install,通常情况下都是web依赖service,service依赖mapper,mapper依赖pojo,pojo依赖外部的公共jar

引入依赖后,就能使用依赖中定义的类和存在的jar包了
在这里插入图片描述
注意:引用外部的jar时,比如taotao-common,要实现将taotao-common进行maven install,在仓库中形成jar包,之后才能通过坐标引入

具体可参考:通过聚合工程来实现SSM一文,其中为了让前台系统和后台系统jar包版本一致,我们还定义了一个parent模块


2.SwitchHosts和Nginx(反向代理)

我们现在都是直接通过ip来访问服务器的,本地我们使用127.0.0.1,虚拟机上我们设置为192.168.56.101(自定义)
但是在实际环境中我们都是通过域名来访问地址,比如 www.baidu.com

2.1 SwitchHosts

我们访问 www.baidu.com,浏览器通过域名到DNS查找服务器ip地址,然后进行访问
我们并没有在网上注册域名,所以肯定找不到,但是此时我们就可以使用到SwitchHosts

(1)域名解析

既然我们无法通过域名服务器解析,所以我们就通过修改本机的hosts文件,配置域名和映射的ip地址,直接修改本机的Hosts文件比较麻烦,需要记忆地址,这里我们采用一款软件:switchHosts

2.2 Nginx(反向代理)

我们现在可以通过 www.taotao.com:8080, manage.taotao.com:8081 访问本地的web项目,那有没有办法在访问的时候不携带端口,我们知道如果不携带端口访问,默认访问的是80端口,同一个服务器下无法存在两个端口一个的服务,所以我们想到了Nginx

(1)修改switchHosts中域名映射
因为我们将Nginx装在了虚拟机上,所以域名的映射也应该是虚拟机ip
在这里插入图片描述

(2)反向代理设置:
Nginx默认会使用80端口
在这里插入图片描述

流程:
1)用户访问 http://manage.taotao.com/rest/page/index
2)域名解析,得到地址:192.168.56.101。也就是nginx所在的虚拟机
3)因为是默认端口80,被Nginx监听到,Nginx解析请求
4)Nginx将服务转发到:192.168.56.1:8081,就是tomcat所在的主机
5)tomcat监听8081,所以最终被Tomcat处理

3.FastDFS以及使用nginx访问FastDFS

以前我们上传一个文件,都是保存在项目所在目录,或者tomcat所在的机器
用户以后如果要访问图片,也肯定是有这台机器中的tomcat来处理请求。
但是图片是静态资源,静态资源应该由静态web服务器处理,即我们的Nginx,但是图片不在nginx的机器上,就有问题

以前图片存在以下问题:
1.图片必须保存在tomcat机器,所以只能通过tomcat服务器处理
2.图片资源越来越多,存储不下
3.所有图片都在一台机器下,容易出单点故障

分布式文件系统是指可以将用户上传的很多很多文件保存在多台计算机上,主要解决单台服务器硬盘容量不够用问题,并且能够做到数据传输的负载均衡、以及数据存储的主从备份。


4.Jsonp和HttpClient

方式有2种

标签:工程,FastDFS,jar,pojo,Nginx,taotao,jsonp,com
来源: https://blog.csdn.net/qq_24099547/article/details/98090431