1
bhuztez 2012-04-10 12:12:28 +08:00
1. picasa ?
|
3
est OP 况且Picasa对大图还有尺寸和文件大小限制。让我20多MB的JPEG全景图情何以堪。
|
8
bhuztez 2012-04-10 13:45:35 +08:00
@est 缩图很费 CPU 时间,所以你只能,在上传后在后台排队缩成固定的几种尺寸。20M的原图,即时处理是来不及的。我感觉很多开源的都是直接在相同进程用 GD 处理下吧,没仔细看代码,也许我是错的。
|
15
est OP |
17
bhuztez 2012-04-10 22:40:56 +08:00
@est 还拼不起来,只能说下大致的情况。测试结果表明 GraphicsMagick 比 ImageMagick 快那么一点,JPEG库,libjpeg-turbo又比libjpeg快那么点。队列用 gearmand ,为了让它监听 unix socket ,我用 Twisted 写了个。WSGI Server,在 flup 的基础上,把 SCGI 折腾成可以像 FastCGI 那样监听从 fd0 传进来的 socket,这样就能配合 supervisord 了,现在正在想怎么支持 X-Sendfile, prefork 的处理方式打算抄袭一下 unicorn ,另外再山寨一份 supervisord ,supervisord 蛋疼的地方是不支持用 unix socket 连进来进程的 uid 认证。
你可以在Github同ID上找到相关代码,现在还没文档,有些地方还不稳定。 你确定监视子进程真的有用?测试表明 1024x1024 的JPEG图片,还算不错的CPU上,单核一秒也就只能 10 张。你那是 20M ,处理时间要好几秒都很有可能吧,还有为了照顾浏览体验,你可能需要在上传的时候,生成多个尺寸的缩略图。20M 的用 HTTP 上传本身就显得很坑爹了。也许还是 FTP 或者 SSH 上传,inotify 折腾下? |
19
est OP |