OHSCE-Open HI-REL Signal Communication Engine是一款高可靠性跨平台的PHP通信框架,Windows友好且同时支持Linux和OS X。对TCP、UDP、ICMP、RS232/485通信、简单内存通信与数据暂存,可轻松驾驭各种以太网应用和工业总线应用。OHSCE科学的平衡了高性能和高可靠性,天生分布式支持,特别适合应用于对可靠性和稳定性有较高要求的场景。如:物联网、工业与自动化工程、智能化工程、可靠网络服务。 OHSCE将多个原本属于Linux的特性移植到WINDOWS平台且具有良好的运行效果。 采用高效的多进程模型,进程独立。 支持Windows平台串口完美读取(无需指定长度)。 支持Windows平台进程守护。 支持Windows平台进程间内存通信,小型数据内存中转。 即将支持多个进程同时伺服一个端口 V0.1.20_A 是 OHSCE 的第二个公开预览版,我们保证接下来的一段时间此版本完全向上兼容。 V0.1.20 版本包含以下函数集更新: 基础函数集: 内存通信函数更新。 SOCKET函数错误修复。 封装函数集 ohsce_channel_X FIXBUG:ohsce_reChannel ENGINE: FIXBUG:NPCOMWR(WINDOWS) 后续版本我们将继续完善并加入和补充更多的封装函数及基础函数,欢迎大家提供建议与改进,您的支持是我们改进动力。 快速入门 一、检查环境是否支持OHSCE 系统:Windows / Linux / OSX 建议:WINDOWSSERVER2008及以上 UbuntuServer14.04LTS及以上 PHP:5.3及以上 建议PHP5.4及以上 PHP扩展: Socket,Shmop,Curl,dio(建议) 二、修改配置文件 /config/oibc_sce_config.php 三、运行测试程序 3.1工作在以太网上 一个TCP服务端测试程序: 对应的客户端测试程序: 3.2工作在工业自动化现场控制网络上 操作串口RS232/485测试程序: <?php ini_set('memory_limit',"88M");//重置php可以使用的内存大小为64M set_time_limit(0); ob_implicit_flush(1); i n c l u d e('loadohsce.php'); Ohsce_eng_serial_creat($hscecom,"com7"); //OHSCE会默认为你创建一个 9600,n,8,1 写读的串口资源 Ohsce_eng_serial_open($hscecom); //一旦通过该函数成功开启了串口,此串口就被OHSCE进程占用了 此时串口资源变为可用状态 Ohsce_eng_serial_write($hscecom,"01030001000415c9",true);//向串口设备发送数据 以16进制发送 Ohsce_eng_serial_read($hscecom,$data,null,true); // 读取串口数据 返回数据长度为未知 以16进制返回 echo $data; //输出数据 sleep(30); 3.3测试使用OHSCE的进程守护 我们先写一个无用的自杀进程 <?php sleep(60); exit; 编写OHSCE-PCENTER入口文件: <?php $ohsce_pcenter_pr_name='测试'; $ohsce_pcenter_pr_prun='\pexample.php'; $ohsce_pcenter_memmorykey=6901;//注意 不得与生成器冲突,否则请提前注册。 启动并守护这个进程 正式运行使用隐藏窗口模式。 不断完善中,感谢支持。 下载地址:Ohsce/archive/master.zip OHSCE_V0.1.20 Alpha 发布,高可靠性的PHP通信框架下载地址