使用 GridFS 创建缩略图MongoDB + PHP
我正在创建一个网站,一个客户将出售他的摄影作品,他出售了很多摄影作品,并且可能会获得相当多的流量。每天大概有 2000-5000 个独立用户。我正在使用 MongoDB 和 PHP,我读到我应该使用 GridFS 来存储这些大文件。 2MB-5MB 以上的照片,但显然 BW 会非常昂贵(我在云托管上),并且加载这些图像将使页面加载永远持续下去。
那么,如何在 PHP 和 MongoDB 中使用 GridFS 创建缩略图?我用谷歌搜索了一下,除了人们指出的之外,我似乎找不到任何真实的信息: http://www.php.net/manual/en/class.mongogridfs.php
但我不知道如何处理这些信息。我需要吗(我希望不需要,这会有点混乱):
上传 ->存储原始->使用 GD Lib 调整原始大小 ->将图像大小调整为 GridFS 作为原始图像的元值?
I'm creating a site where a client who will be selling his photography which he sells a lot of it and will probably get quite a bit of traffic. Probably around 2k-5k uniques a day. I'm using MongoDB with PHP and I read i should use GridFS to store these large files. Upwards of 2MB-5MB photos, but obviously BW will be extremely spendy (im on cloud hosting) and loading of of these images will make page loads take forever.
So, how do I create thumbnails with GridFS in PHP and MongoDB? I Googled it and I can't seem to find any real information except people pointing to: http://www.php.net/manual/en/class.mongogridfs.php
but im not sure what to do with that information. Do I need to (i hope not, this would be sort of messy):
Upload -> store original -> use GD Lib to resize original -> resized image to GridFS as a meta value to the original image?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
我最终只是创建了自己的缩略图,然后使用 GD2 将其保存到 MongoDB,然后将缩略图与完整大小一起保存。
I ended up just creating my own thumbnails after saving it to MongoDB with GD2 and then saving the thumbnails as well alongside the full size.
我做的一件事是在 try {} catch 中
如果发生一些异常(gd 失败,mongo 失败等...)那么你删除文件,这样就不会浪费存储空间。
One thing I did was inside a try {} catch
if some exception happens (gd fails, mongo fails, etc...) then you remove the files so you don't waste storage.