多功能嵌入PHP执行的IOCP服务(TCP)
来源:互联网 发布:淘宝卖家暖心的寄语 编辑:程序博客网 时间:2024/04/30 12:19
多功能嵌入PHP执行的IOCP服务(TCP)
嵌入式php的tcp服务程序
VC2012开发 使用完成端口io模型 php版本为5.3.23
目前在完善阶段
欢迎大家试用并提出宝贵的意见功能:
嵌入php独立运行,启动后,便能用tcp协议直接调用脚本中的函数.
php-embed.ini为php的配置文件,可以自行修改.
默认端口为本机的1234端口,可以在设置中更改
可以单次运行(运行后就最小化,如果要结束只能结束进程),也可以注册为服务运行(支持多服务注册及调用)
如启动后tcp输入 ["test",1,2,4]回车 服务器执行后就返回 +ok:["1","2","4"]回车
最初设计这个的目的是为了在网络通信程序中达到敏捷开发,后来经过优化,执行效率及调试效率大大提升,功能也加了很多.
可以用windows自带的telnet来测试程序效果,注意每一个指令除了指定长度的如gzip 其他都是以输入回车符来执行的.
程序运行过程中编辑script.php文件之后不用重启服务,程序会自动重新加载脚本.
默认的输入会以php来嵌入执行,嵌入php执行的输入格式为json数组:
["test",1,2,4]就表示调用embed_test函数并传入3个参数,分别为数字1,2和4(调试功能)
["get_functions"]服务端就会返回所有嵌入式php指令及调用方法(调试功能)
服务程序中定义了很多的扩展处理类型,如:
压缩指令操作:
gzip 1000回车(输入1000字节的gzip数据)
就可以传输gzip压缩了的指令来执行
regzip ["test",1,2,4]
就会返回gzip压缩的返回值
文件上传及下载操作:
["checkfileexists","56faf021de7aa5a5c63eeae97cae83dd.jpg"]
为检测56faf021de7aa5a5c63eeae97cae83dd.jpg这个文件是否已存在
["adduploadfile"]
为增加一个上传文件,是为了后面的多线程上传功能,例如返回2013052914433687836523.tmp
uploadfile 2013052914433687836523.tmp 0 10000
为上传2013052914433687836523.tmp文件(必须先调用adduploadfile增加文件) 从0字节开始上传10000个字节(支持多线程上传)
["uploadcompleted","2013052914433687836523.tmp","56faf021de7aa5a5c63eeae97cae83dd","jpg",297576]
为告诉服务器文件上传完了,并发送文件md5和服务端比对,服务端会以md5来作为索引名
downloadfile 56faf021de7aa5a5c63eeae97cae83dd.jpg 0 10000
为下载56faf021de7aa5a5c63eeae97cae83dd.jpg文件 从0字节开始下载10000个字节(支持多线程下载)
数据广播操作:
listenbroadcast streambctest
为监听一个名为streambctest的广播,之后输入的内容都会被当成心跳包保持连接,服务端会一直返回监听的数据内容
createbroadcast streambctest
为建立一个名为streambctest的广播传输,之后输入的内容会即时的送达到所有监听广播的连接
createcommandbc commandbctest
为建立一个名为commandbctest的广播传输,之后输入的内容,以\n为一条完整指令,转发到所有监听广播的连接
sendcmdbc commandbctest 1234567890test
为给名为commandbctest的广播发送单条指令 内容为 1234567890test,消息会立即送达到监听广播的连接
web的当前状态查看器:
浏览器中以http打开本机绑定的端口,服务程序会自动生成当前所有连接的详细列表,包括每个连接的类型,每个连接的日志,很详细(调试功能)
文件的详细日志:
程序目录下会保存一个LOG文件,为服务运行后所产生的所有日志,可供调试查看(调试功能)
flash跨域的安全策略处理:
服务程序加入了flash跨域的安全策略处理,可以把本服务作为flash的整合服务程序,亦可放到843端口独立运行.
下载地址:
http://download.csdn.net/detail/phoenix_/5617215
- 多功能嵌入PHP执行的IOCP服务(TCP)
- 简单的IOCP程序(TCP)
- PHP多功能分页类
- php 多功能搜索
- TCP IOCP服务器源代码
- 简单的使用 IOCP 模型的 TCP 服务器例子
- 执行带嵌入参数的sql
- TCP的服务
- TCP的服务流程
- TCP服务的可靠性
- 简单的tcp服务
- php编写socket服务TCP/IP
- PHP多功能图片处理类
- php的扩展和嵌入--总纲
- php嵌入JavaScript 获取控件的值
- 多功能的PagerSlidingTabStrip
- WeiKuCMS多功能微信营销服务系统
- MainActivity 嵌入 Fragment 的每个函数执行的生命周期
- 深度探索C++对象模型笔记(四)
- JNDI是什么
- 二分查找 UVa 10487 - Closest Sums,时间复杂度为O(2nlogn)
- RT3070 USB WIFI 在连接socket编程过程中问题总结
- 批量Unblock文件
- 多功能嵌入PHP执行的IOCP服务(TCP)
- c# listview导出excel文件
- 水表气表设计总结(一)
- java android面试题分析总结
- 为什么需要使用MQ?
- Hadoop基础(2)
- listview 每项内的控件获取焦点
- 解决 _iconv_open referenced from..的问题
- HTTP POST请求的Apache Rewrite规则设置