所以我有一个独特的系统,分布在2个应用程序和1个网站上。系统的所有3个组件将共享相同的数据源,现在每个用户只有1个图像,只有1个图像要上传,这将是他们的个人资料图像。我正在辩论是否应该将它们存储在文件系统或数据库中,这里的交易在我眼中是平等的。将它们存储在文件系统中我将不得不在一个服务器麻烦的3个不同系统中检索它们。另一方面,将它们存储在数据库中可能会使数据库变慢。
我在这里看到的一件事是,如果我制作一张图像表而不是备份它,并且让所有图像都参考图像表中的图像。可能发生的最糟糕的事情是我将丢失所有图像.. xD并不是很重要
我正在使用windows azure来托管我的数据库 我的网站将在windows azure上运行asp.net,我正在使用azure移动服务来提供应用程序
答案 0 :(得分:1)
由于3个应用程序使用相同的图像,我建议使用中央位置来存储图像,而不是将其本地存储在应用程序中。您将获得的优势是,如果用户从任何应用程序更新图像,更改将反映在其他应用程序中,而不必担心同步问题。
但是,不使用数据库表来存储图像,而是使用Windows Azure Blob存储。它仅用于此目的。此外,您的数据在同一数据中心内复制3次,并且您可以选择对数据进行地理复制以获得额外的冗余。使用blob存储,您也不必担心备份。