分类: |
  • 1

swoole:谁说PHP不支持异步操作?

 之前一直不知道有这么一个PHP的扩展的存在,今天逛了逛github才偶然发现。就是他: swoole

这是一个号称要重新定义PHP的扩展。纯C语言实现,高性能,支持百万并发。提供了PHP语言的异步多线程服务器,异步TCP/UDP网络客户端,异步MySQL,数据库连接池,AsyncTask,消息队列,毫秒定时器,异步文件读写,异步DNS查询。

更值得一提的是,他还支持websocket。

这个扩展提供了一个只能运行在cli环境下的Server类,和一个可以运行在任何环境下的Client类。Server和Client可以很方便的进行异步通信。这样一些异步任务可以很方便的放到Server上执行。

查看更多...

Tags: php 异步

分类:PHP教程 | 固定链接 | 评论: 0 | 查看次数: 14526

Js异步协作

文档  http://html5ify.com/eventproxy/api.html

先上上段代码

var EventProxy = require("./eventproxy');
 var proxy = new EventProxy();
 var add= function (v1, v2, v3){
       console.log(v1+v2+v3+'');
    };
proxy.assign("v1", "v2", "v3", add);
    clinet1.get("key1", function (err, data) {
        //do something
        proxy.trigger("v1", data);
    });
   clinet2.get("data", function (err, data) {
        //do something
        proxy.trigger("v2", data);
    });
    clinet3.get("l10n", function (err, data) {
        //do something
        proxy.trigger("v3", data);
    });

在JS的编程中经常会有这样的需要: 需要生成一个页面,数据是ajax的,模板也是ajax获取,通常的做法是先发一个ajax请求取数据,等永请求完成再发一个ajax请求取模板,最后再来渲染。

实际上请求数据和请求模板这两个请求同时发起,等两个都返回的时候就可以渲染了。这个eventproxy就是为方便这样做事而写的一个东西。

查看更多...

Tags: js 异步

分类:web前端 | 固定链接 | 评论: 0 | 查看次数: 5798

Socket异步选择模型实例—聊天室

 

利用这个模型,应用程序可在一个套接字上,接收以Windows消息为基础的网络事件通知。具体的做法是在建好一个套接字后,调用WSAAsyncSelect()函数。

int WSAAsyncSelect(
SOCKET s,              //要进行操作的SOCKET
HWND hWnd,          //要绑写的窗口句柄(当事件发生后要接收消息的窗口)
unsigned int wMsg,         //网络事件发生时的的消息响应
long lEvent                     //感兴趣的网络事件
);

查看更多...

Tags: socket编程 聊天室 异步

分类:socket编程 | 固定链接 | 评论: 0 | 查看次数: 7514
  • 1