[发明专利]用于网站服务器处理事件的方法和设备有效
申请号: | 201510882272.3 | 申请日: | 2015-12-03 |
公开(公告)号: | CN106844017B | 公开(公告)日: | 2021-07-06 |
发明(设计)人: | 郑涔 | 申请(专利权)人: | 阿里巴巴集团控股有限公司 |
主分类号: | G06F9/48 | 分类号: | G06F9/48 |
代理公司: | 上海百一领御专利代理事务所(普通合伙) 31243 | 代理人: | 陈贞健;周建华 |
地址: | 英属开曼群岛大开*** | 国省代码: | 暂无信息 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 用于 网站 服务器 处理 事件 方法 设备 | ||
1.一种网站服务器处理事件的方法,其中,所述方法包括:
运行主线程,由所述主线程基于事件的处理请求创建协程后,再挂起所述主线程并切换至所述协程;
运行所述协程,由所述协程创建通信管道,并将所述事件的主要业务逻辑交由工作线程池进行处理,再挂起所述协程并切换至所述主线程;
再次运行所述主线程,由所述主线程继续处理事件循环,直至收到所述通信管道发送的所述工作线程池处理完毕的消息,挂起所述主线程并切换至所述协程;
再次运行所述协程,由所述协程处理所述事件的次要业务逻辑,并在处理完毕后,结束所述协程并切换回所述主线程。
2.根据权利要求1所述的方法,其中,运行所述协程,由所述协程创建通信管道,并将所述事件的主要业务逻辑交由工作线程池进行处理包括:
运行所述协程,由所述协程将所述事件的主要业务逻辑的参数发送给所述工作线程池,再挂起所述协程并切换至所述主线程;
运行所述工作线程池,由所述工作线程池的工作线程处理所述事件的主要业务逻辑。
3.根据权利要求2所述的方法,其中,在运行所述主线程之前,所述方法还包括:
创建用于处理事件的主要业务逻辑的业务逻辑模块,所述业务逻辑模块具有供所述协程调用的应用程序编程接口;
由所述协程将所述事件的主要业务逻辑的参数发送给所述工作线程池包括:由所述协程将所述事件的主要业务逻辑的参数通过应用程序编程接口发送至所述工作线程池;
所述运行所述工作线程池包括:由所述工作线程池的工作线程基于所述业务逻辑模块处理所述事件的主要业务逻辑。
4.根据权利要求3所述的方法,其中,所述通信管道包括相互关联的可读文件句柄和可写文件句柄。
5.根据权利要求4所述的方法,其中,
所述由所述协程将所述事件的主要业务逻辑的参数发送给所述工作线程池包括:由所述协程创建所述通信管道,并为所述通信管道的可读文件句柄关联一读事件,其中,所述读事件对应一用于恢复协程的执行的事件处理逻辑;
由所述协程将所述可写文件句柄的参数通过所述应用编程接口发送至所述工作线程池;
所述运行所述工作线程池包括:所述工作线程池的工作线程处理所述事件的主要业务逻辑,当处理完毕时,所述工作线程池基于接收的所述可写文件句柄的参数向所述可写文件句柄写入完成标识,所述完成标识被所述可读文件句柄读取;
所述再次运行所述主线程包括:由所述主线程继续处理事件循环,当所述主线程处理到所述通信管道的可读文件句柄所关联的读事件,读取到所述完成标识时,执行所述读事件对应的事件处理逻辑,以挂起所述主线程并切换至所述协程。
6.根据权利要求1至5中任一项所述的方法,其中,所述再次运行所述协程还包括:
当所述协程处理所述事件的次要业务逻辑时,遇到输入输出接口阻塞时,则挂起所述协程并切换回所述主线程。
7.一种网站服务器处理事件的设备,其中,所述设备包括:
主线程运行装置,用于运行主线程,由所述主线程基于事件的处理请求创建协程后,再挂起所述主线程并切换至所述协程;
协程运行装置,用于运行所述协程,由所述协程创建通信管道,并将所述事件的主要业务逻辑交由工作线程池进行处理,再挂起所述协程并切换至所述主线程;
主线程恢复运行装置,用于再次运行所述主线程,由所述主线程继续处理其他事件的处理请求,直至获取所述通信管道发送的所述工作线程池处理完毕的消息,挂起所述主线程并切换至所述协程;
协程恢复运行装置,用于再次运行所述协程,由所述协程处理所述事件的次要业务逻辑,并在处理完毕后,结束所述协程并切换回所述主线程。
8.根据权利要求7所述的设备,其中,所述协程运行装置包括:
发送单元,用于运行所述协程,由所述协程将所述事件的主要业务逻辑的参数发送给所述工作线程池,再挂起所述协程并切换至所述主线程;
处理单元,用于运行所述工作线程池,由所述工作线程池的工作线程处理所述事件的主要业务逻辑。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于阿里巴巴集团控股有限公司,未经阿里巴巴集团控股有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201510882272.3/1.html,转载请声明来源钻瓜专利网。
- 上一篇:手持式真空清洁器
- 下一篇:带用户操作界面的洗衣机(运行、暂停、预约)