TSF:腾讯推出的 PHP 协程方案

Tencent Server Framework

Overview

Tencent Server Framework is a coroutine and Swoole based server framework for fast server deployment which developed by Tencent engineers.

FeaturesPHP Based. Compared with C++, the framework is more efficient in developing and programing.

based on Swoole extension. powerful async IO, timers and other infrastructure capacity can be used in this framework.

support PHP coroutine. Synchronous programing is possible using the coroutine schedule system, and can lead to the similar server capability with that of server deveoped in an asynchronous way.

support server monitor and provide interface to add more rules

Requirementsphp5.5+

Swoole1.7.18+

linux,OS X

InstallationPHP install

Swoole extension install

IntroductionTencent Server Framework can help you to start your server quickly,you just need to set a few settings

Server configvim server.ini[server];

server type:tcp,udp,httptype = http;

portlisten[] = 12312;

entrance fileroot = '/data/web_deployment/serv/test/index.php';

php start pathphp = '/usr/local/php/bin/php'[setting];

worker process numworker_num = 16;

task process numtask_worker_num = 0;

dispatch modedispatch_mode = 2;

daemonizedaemonize = 1;

system loglog_file = '/data/log/test.log'

How to start you servercd /root/tsf/bin/ php swoole testHttpServ startSupport Cmds: start,stop,reload,restart,status,shutdown

How to use TCP/UDP/HTTP Clientwe support different network protocols: TCP,UDP,HTTP$tcpReturn=(yield $this->tcpTest());

$udpReturn=(yield $this->udpTest());

$httpReturn=(yield $this->httpTest());

public function tcpTest(){

$ip = '127.0.0.1';

$port = '9905';

$data = 'test';

$timeout = 0.5; //second

yield new SwooleClientTCP($ip, $port, $data, $timeout);

}

public function udpTest(){

$ip = '127.0.0.1';

$port = '9905';

$data = 'test';

$timeout = 0.5; //second

yield new SwooleClientUDP($ip, $port, $data, $timeout);

}

public function httpTest(){

$url='http://www.qq.com';

$httpRequest= new SwooleClientHTTP($url);

$data='testdata';

$header = array(

'Content-Length' => 12345,

);

yield

$httpRequest->get($url);

//yield $httpRequest->post($path, $data, $header);

}

How to use MuticallBeside that,we also support Muticall:

you can use Muticall to send TCP,UDP packets at the sametime

when all the requests come back,return to interrupt$res = (yield $this->muticallTest());

public function muticallTest(){

$calls=new SwooleClientMulti();

$firstReq=new SwooleClientTCP($ip, $port, $data, $timeout);

$secondReq=new SwooleClientUDP($ip, $port, $data, $timeout);

$calls ->request($firstReq,'first'); //first request

$calls ->request($secondReq,'second'); //second request yield $calls;

} var_dump($res)

以上就是TSF:腾讯推出的 PHP 协程方案的内容,更多相关内容请关注PHP中文网(www.php.cn)!

tsf php,TSF:腾讯推出的 PHP 协程方案相关推荐

  1. 小米手机在欧洲首次登顶,市场份额超越苹果;腾讯推出游戏“双减双打”新措施;三星成全球最大芯片厂商|极客头条...

    「极客头条」-- 技术人员的新闻圈! CSDN 的读者朋友们早上好哇,「极客头条」来啦,快来看今天都有哪些值得我们技术人关注的重要新闻吧. 整理 | 孙胜 出品 | CSDN(ID:CSDNnews) ...

  2. 互联网早报:腾讯推出“电子签平台” 用微信就能开出具备法律效力的电子收据

    行业热点 1.腾讯推出"电子签平台" 用微信就能开出具备法律效力的电子收据: 2.承诺不利用大数据"杀熟"!京东.美团等10平台签署承诺书: 3.消息称抖音正在 ...

  3. 除霾神器:中科爱讯推出BHU智能新风机,让你呼吸森林空气

    空气净化器.3M口罩,遇到雾霾.PM2.5爆表的天气还需要什么"装备"保护自己和家人?接连不断的雾霾天气,也使空气新风系统进入大众视野,此时我们研发出符合国人使用习惯的BHU新风机 ...

  4. 互联网早报:腾讯推出“微小号”,用虚拟手机号拨打电话收发短信

    行业热点 1.腾讯推出"微小号",用虚拟手机号拨打电话收发短信: 2.得物App:误操作发出数万 520 无门槛券,不是营销,订单算数: 3.滴滴网约车宣布进入南非市场,4 月将进 ...

  5. 怪物猎人世界服务器小程序,坚守的猎人的最后礼物? 腾讯推出《怪物猎人世界》官方小程序...

    原标题:坚守的猎人的最后礼物? 腾讯推出<怪物猎人世界>官方小程序 虽然WeGame版的怪猎世界情况仍不明朗,但是并不妨碍腾讯的相关跟进.最近的微信就上线一款官方的小程序--WeGame狩 ...

  6. 8 亿邮件地址泄露,源于邮件验证服务;腾讯推出微信公众号直播工具

    (给技术最前线加星标,每天看技术热点) 转自:开源中国.solidot.cnBeta.腾讯科技.快科技等 [技术资讯] 0.8 亿邮件地址遭泄露,源于邮件验证服务 近日,Security Discov ...

  7. 一边“打工”一边“合作”,微盟为何联手腾讯推出私域加速计划?

    随着微信生态的扩大,开一家基于私域流量的线上商城,无论是对品牌方还是个人卖家来说都是极为友好的.品牌方多了一个流量入口,个人卖家也能够降低投入成本,由此微盟这类SaaS平台得以快速发展. 不过随着用户 ...

  8. 腾讯推出世界最强人脸识别 准确率99.8%;微软在慕尼黑设立欧洲首个物联网实验室 | IoT黑板报...

    外媒:韩国最大电信运营商SK电讯或被迫放弃与华为合作 @雷锋网 据外媒报道,韩国最大的电信运营商SK电讯近来受到巨大舆论压力,或有可能放弃使用华为的网络设备,因为批评家认为华为的技术将可以窃听通话内容 ...

  9. IoT黑板报:腾讯推出世界最强人脸识别 准确率99.8%

    IoT黑板报,阅尽物联网新鲜事! 关注同名公众号"IoT黑板报" ,获取更多物理网资讯及干货 关注物联网领域,寻求报道或投稿请邮件联系 jiawd@csdn.net 外媒:韩国最大 ...

最新文章

  1. PHP 通过数组判断数组顺序输出是否是二叉排序树的后序遍历结果
  2. 学完python还需要学什么语言好_python基础学完了之后还需要学习什么
  3. Ubuntu下安装配置VIM/GVIM(GUI-Vim)
  4. 经典面试题(35):以下代码将输出的结果是什么?
  5. 操作mysql_操作mysql
  6. python中for循环格式_如何将python中for循环的输出写入csv格式的文件?
  7. w ndoWs8pE模式下载,电脑店超级U盘启动盘制作工具V6.8(全能版)
  8. 2016年辽宁省电子设计大赛自动循迹小车制作心得
  9. android anr 分析方法,Android ANR分析
  10. 基于某点评字体库的字体反爬
  11. 李航·《统计学习方法》学习笔记
  12. 当 Python 遇到数据库,这个模块就变得超级好用
  13. Android Jni 调用
  14. 何为JAVA内部类?
  15. Linux下如何设置程序的开机自启动功能
  16. BZOJ4735 你的生命已如风中残烛(组合数学)
  17. phonegap 修改app的名称
  18. 操作系统笔记(3)——同步与互斥
  19. 留存电脑硬盘的影视剧作品
  20. 【ESP32】1.Arduino IDE 2.0安装详解

热门文章

  1. linux expect 自动交互命令 总结
  2. linux grouplist groupinstall groupremove 简介
  3. linux 五种IO模型 简介
  4. linux shell sleep usleep 延时命令 秒 毫秒 微秒
  5. docker 占用磁盘空间清理 无用数据卷删除
  6. centos7 安装 python3
  7. 使用Windbg解析dump文件
  8. UNICODE_STRING 总结
  9. c语言printf()输出格式控制
  10. (三)Amazon Lightsail 部署LAMP应用程序之连接到Lightsail数据库