2014-01-14 133 views
0

在用户上传图片和诸如image_title,user_id等文本数据的网站上(如社交网络);使用Apache,PHP,MySQL ...在一台服务器上上传表格数据,在另一台服务器上上传表格数据

在提交的表格上,我想默认将所有图像上传到专用图像服务器。我不确定最佳做法要做什么...

它是否可以使表单在两台不同的服务器上发送数据?这是一个很好的做法吗?我看到它在第二种形式提交时触发submit()

我也可以在主站点的服务器上传然后移动图片但是这样做会违背专用图片服务器的目的,我也想从主站点中取消传入的流量负载。

而不是两种形式,首先上传图片,获得“OK”回复,然后提交文本数据是一种好的做法吗?

我不喜欢亚马逊S3这个,试过了,我的测试太慢了。

回答

0

我不会将提交分成两个提交给不同的服务器。我认为这不符合专用图像服务器处理在不同服务器上的图像上传/验证的目的。如果你需要一个专用的图像服务器,我相信这是最常见的图像服务器确实没有什么比通过HTTP提供静态文件。 根据我的经验,s3非常适合此目的。如果真的要慢下来,请看看云前卫!另一种选择是使用nginx或lighttp的独立服务器,可能在前面加了一层清漆,该服务器针对提供静态图像文件进行了优化。

在尝试将单个表单POST或甚至仅图像POST的上传/验证分离到不同服务器之前,我宁愿尝试将整个服务扩展到多个服务器上。

+0

这个在不同服务器上的上传应该是我缩放的开始;在此之后,我有MySQL数据库,很容易将其移动到专用服务器并复制它,然后我只有几个PHP文件,只与图像服务器和数据库服务器,这些PHP文件可以轻松地传播多个服务器(可能通过DNS)。 – adrianTNT

1

有三个选项:

  1. 上传表单和图像分裂Ajax请求。也许如果您有两台不同的服务器(表单服务器,映像服务器),则需要在其中一台服务器上使用跨域服务来重定向该流量。从客户端的jquery/javascript ajax调用不同的服务器是不可能的。

  2. 实现了能够接收(表格,图像)和共享数据的服务。向前服务器到服务器1并在服务器2放置图像

  3. 执行请求序列。公式到您的后端。如果回叫是OK,则通过例如发送图像发送图像。 cross_domain.php(见选项1)到您的专用图像服务器..

恕我直言,没有办法不通过你的后台流量重定向发送从客户机到多个服务器的数据!

相关问题