想问一个架构上的问题

来源:3-9 _广告模块开发_广告接口开发

黑灰化肥会挥发

2019-12-04

请问老师,在真实的项目里,如果是分布式项目。是不是有一台或者多台单独的图片服务器,然后我们用一些跨域的方式发送请求(如果参数带有file的话是不是不合理呢?),将图片存到图片服务器的磁盘上,然后在图片服务器上用nginx反向代理,将api请求存储到磁盘的地址。

写回答

4回答

源生活

2019-12-04

然后你说的参数带file,没什么不合理的,只不过不能说是参数,就是上传文件,无论是上传给自己本来的应用服务器,还是上传给图片服务器,上传的过程是少不掉的。

0
0

源生活

2019-12-04

所以比较简单的方式是:页面请求没有区别,还是提交给原来的服务,服务端无论集群中的哪台服务器接到请求,存储的其实是同一个磁盘上,访问的时候通过nginx访问,是可以配静态资源的,这样nginx会先从这块磁盘上读,缓存到nginx所在的服务器上,缓存的策略都是可配的,一般nginx也不止一个,上层会有F5之类的硬负载,负载到N个nginx上。

0
1
黑灰化肥会挥发
这么晚了,我先睡了老师。明天我领悟一下再跟您讨论,谢谢您的指导!
2019-12-04
共1条回复

源生活

2019-12-04

你说的是保存图片是吧,保存可以直接存磁盘,这块磁盘是集群共享的,集群里每台服务器都挂载这块磁盘。

0
0

源生活

2019-12-04

一般是静态资源服务,有固定的ip或域名,不是请求带file,就是用存在库里的图片资源url加上固定的域名,请求静态资源服务里的某张图片,请求得到的就是可以直接显示的。

0
0

IT段子手详解MyBatis遇到Spring 秒学Java SSM开发大众点评

【毕设】SSM全面梳理,前后端分离,zTree 和复杂SQL打造权限系统,解惑MyBatis和RESTful

1001 学习 · 485 问题

查看课程