应用服务器和静态文件存储服务器之间那种方式交换数据最好?

2018-06-20 08:28:21 +08:00
 alwayshere

网站静态文件单独存放在一台服务器 A 上,应用逻辑( php )放在另一台服务器 B 上,现在 A 有时候也要去 B 的数据库查询一下,B 也要时时刻刻传输文件到 A 上,哪种方式能实现最快速的数据交互?

2401 次点击
所在节点    程序员
10 条回复
wangxiaoaer
2018-06-20 08:34:34 +08:00
如果理解无误的话,目前 A 需要去 B 的数据库查询,这个场景明显已经超出了静态文件服务器该做的事情,最好把这个业务放到 B 上面。

B 需要上传文件到 A,这个我们目前还是通过文件共享的方式实现,也就是 A 上面某个文件夹开放给 B 共享,同时把这个共享文件夹里面的文件通过 web server 对外服务。
opengps
2018-06-20 08:53:18 +08:00
你这情况,A 不是静态呀,能否改造下 A ?查询部分拿走放到 B 服务器上
alwayshere
2018-06-20 08:56:15 +08:00
@opengps A 内存 16G,感觉做纯静态服务器有点浪费内存,所以偶尔还是跑个任务之类的
opengps
2018-06-20 08:57:41 +08:00
@alwayshere 你的机器 AB 内网不互通吗?内网互通速度应该差不了多少了
sampeng
2018-06-20 09:55:05 +08:00
nfs 应该够用
wenzhoou
2018-06-20 11:53:58 +08:00
内存大才是做纯静态的优势。文件都放到内存里头缓冲起来。
leopku
2018-06-20 14:34:12 +08:00
折腾过 N 多架构之后,现在觉得(仿)S3 的是最不折腾的
openbsd
2018-06-20 14:35:05 +08:00
A 为什么要去访问 B ?
a7a2
2018-06-20 15:06:33 +08:00
数据库配置成主主同步

文件也使用 Sersync 实现实时同步(随变化而同步)

php 也是要把另外一台用上

自己根据 2 机器的实际情况选适用的灾难转移,例如 dns、nginx、lvs 等方式

这样就可以避免单机故障
msg7086
2018-06-21 00:04:16 +08:00
AB 走 API 互联啊。传输文件可以用 NFS。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/464264

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX