微服务研究 - Swoole框架-Swoft初探

微服务研究 - Swoole框架-Swoft初探。没有swoole之前,php一直被"誉“为世界上最好的语言。swoole横空出世后,php就成了宇宙最好的语言了...

swoft是基于swoole的高性能协程全栈框架。看了 swoft官网介绍, 瞬间觉得是一个牛逼闪闪的swoole框架

想要使用swoole,如果自己手工造一个框架,时间成本太高,而且对自己的代码质量没什么信心(好吧,这才是主要原因...),如果将swoole与流行的框架,如laravel,yii2,thinkphp结合,会遇到不少坑,而且这些框架显得过于笨重。权衡之下,swoft这种专为swoole为生的框架,软盟网小编认为对于懒人来说,就很适合了。使用swoft的缺点在于这个框架用的人目前并不多,基本上除了官方文档,没有其他学习资源,也没找到基于swoft的开源项目。

swoft环境搭建


安装swoft的前提是已经安装了swoole,使用composer安装swoft,。

composer create-project swoft/swoft swoft

进入swoft目录,查看版本信息:

☁  swoft [master] ⚡ php bin/swoft -v
 ____                __ _
/ ___|_      _____  / _| |_
\___ \ \ /\ / / _ \| |_| __|
 ___) \ V  V / (_) |  _| |_
|____/ \_/\_/ \___/|_|  \__|

swoft: 1.0.0, php: 7.1.19, swoole: 4.0.3

体验http服务

由于swoft的websocket服务是基于http服务的,所以只需开启ws服务:

☁  swoft [master] ⚡ sudo php bin/swoft ws:start

微服务研究 - Swoole框架-Swoft初探_第1张图片

swoft开启ws服务

默认情况下,启用的是80端口,可在.env文件中指定端口

访问 http://127.0.0.1/

就能看到swoft欢迎页面:

微服务研究 - Swoole框架-Swoft初探_第2张图片 微服务研究 - Swoole框架-Swoft初探

 

这个欢迎页面对应的控制器是:

swoft/app/Controllers/IndexController.php 的 index 方法

控制器与路由的对应关系是通过注解路由来实现的,简单说,就是在控制器和方法的注释中指定路由.

微服务研究 - Swoole框架-Swoft初探_第3张图片 微服务研究 - Swoole框架-Swoft初探

我们添加一个方法来测试下:

swoft/app/Controllers/DemoController.php

新增test方法.

/**
  * @RequestMapping("test")
  */
public function test()
{
    return '你就是传说中的注解路由?';
}
微服务研究 - Swoole框架-Swoft初探_第4张图片 微服务研究 - Swoole框架-Swoft初探

 

访问 http://127.0.0.1/demo2/test

微服务研究 - Swoole框架-Swoft初探

体验ws服务

首先开启swoft自带的开发工具,具体操作参考 DevTool 配置

访问 http://127.0.0.1/__devtool/ws/test

微服务研究 - Swoole框架-Swoft初探_第5张图片 微服务研究 - Swoole框架-Swoft初探

 

在ws提供的文本域可以调试ws服务:

微服务研究 - Swoole框架-Swoft初探_第6张图片 微服务研究 - Swoole框架-Swoft初探

 

ws://127.0.0.1/__devtool 对应的控制器是 swoft/vendor/swoft/devtool/src/WebSocket/DevToolController.php

初体验swoft

swoft将swoole的功能进行了更易使用的封装与调用,并提供了很酷的开发工具。

想要学习swoft的,先将官方文档大概看两遍...

如果觉得官方文档语焉不详,希望我能多写一些swoft的实例文章.

部分来自:www.ruanally.com

 

你可能感兴趣的:(微服务Swoole/Swoft)