FrankenPHP 现代 PHP 应用服务器

2024年 5月 31日 30.6k 0

FrankenPHP 是一个基于 Caddy Web 服务器构建的现代 PHP 应用服务器。

FrankenPHP
                                                                                                                            现代 PHP 应用服务器-1

FrankenPHP 特性包括:Early Hints、worker 模式、实时功能、自动 HTTPS、HTTP/2 和 HTTP/3 支持等

Early Hints:FrankenPHP 原生支持 103 Early Hints 状态码,可以将网页的加载时间缩短 30%。在普通模式和 worker 模式下都支持。

<?php

header('Link: </style.css>; rel=preload; as=style');
headers_send(103);

// your slow algorithms and SQL queries 🤪

echo <<<'HTML'
<!DOCTYPE html>
<title>Hello FrankenPHP</title>
<link rel="stylesheet" href="https://www.oschina.net/p/style.css">
HTML;

Early Hints 是一种 HTTP 状态代码 (103 Early Hints),用于在最终响应之前发送初步 HTTP 响应。这样,服务器可在服务器忙于生成主要资源时,向浏览器发送关于网页可能使用的关键子资源(例如网页的样式表、关键 JavaScript)或源的提示。在等待主要资源期间,浏览器可以使用这些提示来预热连接并请求子资源。也就是说,Early Hints 通过提前执行一些工作来帮助浏览器充分利用此类“服务器思考时间”,从而加快网页加载速度。

worker 模式:启动应用程序并将其驻留在内存中,FrankenPHP 将在几毫秒内处理传入的请求。

实时功能:FrankenPHP 配有内置 Mercure Hub,Mercure 允许将事件实时推送到所有连接的设备,它们将立即收到 JavaScript 事件。无需 JS 库或 SDK。

FrankenPHP
                                                                                                                            现代 PHP 应用服务器-2

FrankenPHP 可与任何 PHP 应用配合使用,并且由于其与 worker 模式的官方集成,使得 Laravel 和 Symfony 项目比以往任何时候都快。

FrankenPHP 还可以作为独立的 Go 库使用,通过 net/http 在任何应用程序中嵌入 PHP。

相关文章

Java 之父 James Gosling 宣布退休
快手文生图大模型可图宣布开源
李彦宏:开源模型是智商税
VLMs多模态大模型当下进展与思考
开源日报 | 李彦宏称开源模型是智商税;Windows下的GUI开发;有趣的人形机器人;边学AI边赚钱
Meta 开源新的“多标记预测”语言模型

发布评论