10w定时任务,如何高效触发超时

一、缘起

很多时候,业务有定时任务或者定时超时的需求,当任务量很大时,可能需要维护大量的timer,或者进行低效的扫描。

 

例如:58到家APP实时消息通道系统,对每个用户会维护一个APP到服务器的TCP连接,用来实时收发消息,对这个TCP连接,有这样一个需求:“如果连续30s没有请求包(例如登录,消息,keepalive包),服务端就要将这个用户的状态置为离线”。…

MongoDB 最佳实践 – 持续更新版

版本历史:

- V1.0  2017.02.06 TJ Tang 初始版本

前言

作为MongoDB的一名方案架构师,我的大部分时间都是在和MongoDB的客户和用户交互。在这里,我希望通过一个不断更新的活文章的方式来为大家收集整理一下MongoDB开发及维护时候值得了解或者遵从的一些最佳实践。我非常真切地希望您也可以参与进来,共同维护这个文档,让更多的用户受惠(可以通过文末微信号联系我)…

主要开源PHP CMS 列表

主要开源PHP CMS 列表

一、PHPCMS
通用型模块化网站内容管理系统,内建模型管理,可建任何类型的网站。采用PHP MVC框架开发。稳定负载能力强。支持建站群. 基本不用二次开发.
http://www.phpcms.cn

二、帝国CMS
通用型模块化网站内容管理系统,内建模型管理,可建任何类型的网站。安全性最好,功能最强大的CMS系统。 缺点:后台样式比较老,后台操作浏览器兼容性差。基本不用二次开发.
http://www.phome.net/…

        

Swoole2.0协程的使用和源码解读

聊聊Swoole2.0协程

Swoole 2.0正式版发布了。2.0版本最大的更新是增加了对协程(Coroutine)的支持。正式版已同时支持PHP5和PHP7。基于Swoole2.0协程PHP开发者可以已同步的方式编写代码,底层自动进行协程调度,转变为异步IO。解决了传统异步编程嵌套回调的问题。

目前Swoole底层内置的协程客户端组件包括:udpclient、tcpclient、httpclient、redisclient、mysqlclient,基本涵盖了开发者常用的几种通信协议。协程组件只能在服务器的onConnect、onRequest、onReceive、onMessage 回调函数中使用。…