我有一个简单的问题,想听听其他人在多个主机之间复制图像的最佳方法的经验。
我已确定将图像存储在数据库中,然后使用数据库复制在多个主机上将导致最大可用性。
我对文件系统的担忧在于同步图像的困难(例如,我不希望5个服务器都访问同一个服务器以获取图像!)。
现在,我对将图像存储在数据库中唯一担心的是额外的查询会影响数据库,并且如果我想要“虚拟”图像链接指向数据库条目,则必须放置额外的处理(例如AddHandler)。
就我所了解的而言:
如果您有一个脚本提供图像:每个图像都需要一个数据库调用。
如果您将图像显示为二进制数据:可以在单个数据库调用中完成。
为了提供外部/可链接的图像,您必须为您想要“伪造”的扩展名添加addHandler,并将其指向您的脚本语言(例如php,asp)。
我可能漏掉了什么,但我很好奇是否有其他更好的想法?
编辑:Tom建议使用mod_rewrite来保存使用AddHandler,我已接受作为解决AddHandler问题的建议方案。但是,我仍然觉得没有完整的解决方案,请继续回答;)
一些人建议使用lighttpd而不是Apache。 lighttpd的ISAPI模块有多大不同?
我已确定将图像存储在数据库中,然后使用数据库复制在多个主机上将导致最大可用性。
我对文件系统的担忧在于同步图像的困难(例如,我不希望5个服务器都访问同一个服务器以获取图像!)。
现在,我对将图像存储在数据库中唯一担心的是额外的查询会影响数据库,并且如果我想要“虚拟”图像链接指向数据库条目,则必须放置额外的处理(例如AddHandler)。
就我所了解的而言:
如果您有一个脚本提供图像:每个图像都需要一个数据库调用。
如果您将图像显示为二进制数据:可以在单个数据库调用中完成。
为了提供外部/可链接的图像,您必须为您想要“伪造”的扩展名添加addHandler,并将其指向您的脚本语言(例如php,asp)。
我可能漏掉了什么,但我很好奇是否有其他更好的想法?
编辑:Tom建议使用mod_rewrite来保存使用AddHandler,我已接受作为解决AddHandler问题的建议方案。但是,我仍然觉得没有完整的解决方案,请继续回答;)
一些人建议使用lighttpd而不是Apache。 lighttpd的ISAPI模块有多大不同?