在这一点上,我不是一个程序员,坚实的html/css,熟悉JS,但不是一个程序员的任何手段。我正在寻找任何必要的东西,为即将到来的项目。
我需要建立一个在线图像存储库,它将托管大约15k张照片。这些照片需要用户输入与它们相关的数据。它们需要通过标签进行搜索,并且可以批量下载。
你们会做文件系统或数据库存储吗?基本上,您会使用哪种类型的存储解决方案?
发布于 2014-01-28 07:12:05
对于这样的星座,我通常使用的方法是
这是因为您需要为您的元数据建立索引和事务安全性,但通常不需要对映像的“部分”进行更新(我想它们只会通过添加新的部分或删除旧的部分来更新,对于需要事务性安全性的图像,唯一需要的是两个不同的映像不会获得相同的文件名,但这是元数据操作)。
请注意,有一些数据库可以用这种方式处理存储,因此您可以通过SQL以事务性的方式访问所有数据,包括图像,但是DB将图像存储在后台的单独文件中。
发布于 2014-01-28 07:20:44
这可能是一种罕见的情况,在这种情况下,我建议考虑第三方解决方案,您可以修改。除了开源的图片库软件之外,还有很多不同CMS的图库插件。
如果你必须自己写这个,因为你正在谈论的卷,它并不是真正重要的,你把图片-无论是哪种方式,它将工作。但是,如果您期望高流量,最好是在文件系统上,这样您的数据库服务器就不必处理文件服务的过载了。此外,将图像保存在文件系统中可以为您提供更多关于备份的灵活性。
发布于 2014-01-28 15:35:48
在文件系统中存储文件肯定是一个很好的快速解决方案,而且我个人不会建议将文件存储在数据库中,即使在很少的情况下也是如此。
但是,在另一个注意事项上,请考虑直接从web应用程序存储文件系统中的文件并不是一个干净的解决方案。
例如,在某些框架中,如果“在文件系统中创建、修改或删除文件”,请参见JavaEE指南:http://www.oracle.com/technetwork/java/restrictions-142267.html,在本例中,如果您“在文件系统中创建、修改或删除文件”,则会破坏服务器模型。
这是因为直接将文件存储在文件系统中是无法扩展到云的,在云中,服务器可能在几十个硬盘上运行在不同的虚拟机中。
在Java中,建议的解决方案是使用像Apache JackRabbit这样的标准容器。
https://softwareengineering.stackexchange.com/questions/225744
复制相似问题