"待当前请求的数据IO就绪后,worker 会一口气执行 业务代码 直至 完成,执行期间 worker 是被完全占用 的"
比如有些PDF转图片这样的操作
或者导出excel 数据量大, 又要循环操作数据的
如果只开一个线程的话 或者几个线程都被这些操作占用 这个时候整个系统是不是就会卡住?
有些小的管理系统经常有这些操作
请问这种情况下 是不是连普通的apache都比不了?
这种情况下webman和apache/php-fpm比没有优势,但是也不会比apache/php-fpm慢。 PDF转图片这种慢操作适合放单独的进程里去完成,比如消息队列、或者单独启动一组任务进程处理。
这种你换啥语言都不行,你必须使用上消息队列,然后慢慢后台给你生成。
是的,换任何语言都一样,都得慢慢等
小管理系统有没这些我不清楚, 但你可以参考优酷/前程无忧 之类的, 他们上传视频/简历 后是异步任务的。
上传视频 -> 检查hash是否已有 -> 不存在 -> 壓入隊列 -> 等待隊列空閒(loop) -> 轉碼 存在 taskID | | | | 完成_____________________________| | | 待轉碼_______________________________________| | 轉碼成功--------------------------------------------------------------------| 轉碼失敗--------------------------------------------------------------------|
这种情况下webman和apache/php-fpm比没有优势,但是也不会比apache/php-fpm慢。
PDF转图片这种慢操作适合放单独的进程里去完成,比如消息队列、或者单独启动一组任务进程处理。
这种你换啥语言都不行,你必须使用上消息队列,然后慢慢后台给你生成。
是的,换任何语言都一样,都得慢慢等
小管理系统有没这些我不清楚,
但你可以参考优酷/前程无忧 之类的,
他们上传视频/简历 后是异步任务的。