用户请求进来, web server 发一个消息给消息队列服务器,
然后立刻响应用户的请求,这个过程会很迅速;
同时,用若干个消费者程序去消费发过来的消息,异步地实现复杂操作。
消息服务器可以考虑 RabbitMQ.
【 在 xWvxYWYxvWx (xWvxYWYxvWxxWvxYWYxvWx) 的大作中提到: 】
: 标 题: Re: 请教一个老问题:页面执行耗时操作
: 发信站: 水木社区 (Fri Jan 23 19:43:04 2015), 站内
:
: 异步消息队列。
:
: 【 在 baoxiaoqiang (包小强) 的大作中提到: 】
: : 标 题: 请教一个老问题:页面执行耗时操作
: : 发信站: 水木社区 (Fri Jan 23 19:14:23 2015), 站内
: :
: : 假如有一个操作很耗时,不想让用户在浏览器页面等很久
: : 想让后台开一个线程操作,操作完通知用户
: : 一般用什么方法实现?
: :
: : 如果另开一个进程,耗时操作由进程来做应该可以。
: : 但要进行进程间通信,不是很方便。
: : 有没有web服务器支持直接开线程,然后web代码可以方便的和线程交互的?
: : java+tomcat和AMP分别怎么做?
: :
: : 如果是java,
: : 我的想法是这样的,用户发送一个请求,后台从application获取一个驻留对象p
: : 把请求发给p,然后页面立即返回
: : p完成任务后,往application或数据库中写个结果
: : 用户回头再来查看就行了
: : 不知道可不可行
: :
: : python+django试过 没成功
: : php搜很久没找到靠谱的答案,多数是讲IPC
: : --
: :
: : ※ 修改:·baoxiaoqiang 于 Jan 23 19:18:14 2015 修改本文·[FROM: 223.65.140.*]
: : ※ 来源:·水木社区 newsmth.net·[FROM: 223.65.140.*]
:
:
: --
:
: ※ 来源:·水木社区 newsmth.net·[FROM: 116.246.13.*]
--
修改:baoxiaoqiang FROM 223.65.140.*
FROM 180.156.232.*