App Server Framework PHP Swoole <a href="https://github.com/xtjsxtj/asf#%E5%AE%89%E8%A3%85%E8%BF%90%E8%A1%8C"></a><strong>安装运行</strong><strong>http_server开发</strong 介绍
App Server Framework (ASF)简介:
-
当前版本0.01试用版。
-
框架本身是一个完整的tcp_server,不再需要apache,Nginx,fpm这些,框架已包含log处理,MysqL访问封装。
-
框架用fast-route库来做http route处理,直接映射到控制器上,使用者只要写具体的控制器方法就可以实现rest风格的API。
-
至于性能,可以很低调的说:相当高,具体可以参考swoole相关文档: http://www.swoole.com/
安装运行
环境:linux2.6+、PHP5.5+、MysqL5.5+、swoole1.7.20+
下载:https://github.com/xtjsxtj/asf
tar zxvf asf.tar.gz cd asf PHP ./bin/asf.PHP test_http start 也可以直接进入具体server目录直接运行入口脚本文件: cd asf/apps/test_http PHP ./index.PHP 查看当前server进程状态: PHP asf/bin/asf.PHP test_http status 查看所有server运行状态: PHP asf/bin/asf.PHP list
http_server开发
当protocol为http(不设置则默认为http),server运行为http_server,这种模式下默认不需要做任何额外的配置,系统会按默认的路由规则分发到具体的控制器中处理,开发者只需要写具体的控制器和方法就可以。
下面是http_server,test_http的开发流程:
-
server配置文件:apps/test_http/config/server_conf.PHP
<?PHP
class Swoole_conf {
public static $config=array(
‘server_name’ => ‘test_http’, //server名称
‘log_level’ => NOTICE, //跟踪级别
‘listen’ => 9501, //listen监听端口
‘log_file’ => ’/asf/apps/test_http/index.log’, //log文件
);
} -
worker配置文件:apps/test_http/config/worker_conf.PHP
<?PHP
class Worker_conf{
public static $config=array(
‘log_level’ => DEBUG,
‘MysqL’ => array(
‘socket’ => ’/tmp/MysqL.sock’,
‘host’ => ‘localhost’,
‘port’ => 3306,
‘user’ => ‘user’,
‘password’ => ‘password’,
‘database’ => ‘test’,
‘charset’ => ‘utf8’,
),
} -
唯一主入口脚本:apps/test_http/index.PHP
<?PHP>
define(‘BASE_PATH’, DIR);
require_once BASE_PATH.’/../../lib/autoload.PHP’;$server = new swoole();
$server->start(); -
控制器:apps/test_http/controller/index_controller.PHP
<?PHP
class index_controller extends base_controller {
public function index() {
log::prn_log(DEBUG, json_encode($this->content));
log::prn_log(DEBUG, json_encode($this->param));return ‘ok’;
}
} -
controller基于父类base_controller实现,而base_controller必须基于lib/controller.PHP的controller实现。
-
在这种默认的配置下:访问 http://localhost:9501/index/index 路由将会执行上面index_controller控制器中的index方法,http调用返回的结果是:ok
App Server Framework PHP Swoole <a href="https://github.com/xtjsxtj/asf#%E5%AE%89%E8%A3%85%E8%BF%90%E8%A1%8C"></a><strong>安装运行</strong><strong>http_server开发</strong 官网
https://github.com/xtjsxtj/asf
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。