使用RoadRunner,Spdy是一个有见地的库集成,用于以PHP创建快速的、可靠的、现代化的REST API。

0.0.1-rc1 2022-06-19 03:56 UTC

This package is auto-updated.

Last update: 2024-09-20 03:28:20 UTC


README

Static Analysis PHP Version Coding Style License: WTFPL

关于

Spdy PHP是一个有见地的库集成,用于使用RoadRunner以PHP创建快速的、可靠的、现代化的REST API。

通过使用合理的行业标准默认设置,Spdy让您专注于应用程序的业务价值,而不是浪费时间在选择和重新选择各种技术和配置上。

在最高层面上,Spdy只是实现经过实战检验的、行业标准化的PHP库,并将它们捆绑在一起,形成一个快速且可靠的REST API骨架。

开始使用

  1. 安装Spdy
composer require nickstarlight/spdy
  1. 实现应用程序基本结构
<?php declare(strict_types=1);

include_once './vendor/autoload.php';

/** Create a new app instance */
$app = new Nickstarlight\Spdy\App();

/** Get the default router instance */
$router = $app->getRouter();

/** Declare a route */
$router->get('/', fn () => [ 'message' => 'Hello World' ]);

/** Kickstart the event-loop */
$app->run();
  1. 获取RoadRunner二进制文件
./vendor/bin/rr get-binary
  1. 实现基本的Roadrunner PHP Worker配置,创建一个名为.rr.yaml的新文件,内容如下:
version: "2.7"

server:
  command: "php yourscript.php"

http:
  address: 0.0.0.0:8080
  1. 使用rr二进制文件启动应用程序
./rr serve

您就可以开始了!在localhost:8080上访问并检查您的新路由!

文档参考

如前所述,Spdy不会试图重新发明轮子,所有使用的库都是知名的库。如果您想调整任何内容或更改提供的默认设置,以下文档就是您需要的所有内容。

常见问题解答

  1. 如何声明路由?

    请查看League Route文档以获取示例。

  2. 如何配置Worker以适应服务器需求?如何设置健康检查?数据库连接?环境变量?

    Roadrunner为这些问题和其他许多功能提供了现成的生产级配置,请查看Roadrunner配置文件参考

  3. 我需要一个强大的ORM、广播、视图、与ReactJS/Vue/Svelte的集成等...

    Spdy的主要目标是提供一个可靠、小巧且高效的基座,用于创建简单而强大的REST API,它并不试图取代完整的框架。如果您需要更多功能,您应该明确地寻求完整的框架!一些好的例子是SymfonyLaravelYiiLaminasPhalcon

基准测试

有关更多信息,请查看基准测试独立存储库。

许可证

本作品许可在WTFPL许可证下。