资讯专栏INFORMATION COLUMN

现代化编程 -- 在 Swoole 上开发 Laravel 框架的应用

leap_frog / 1703人阅读

摘要:是非常现代化的一套框架基于的构建方式其很多核心依赖并非完全自己所维护而依赖于等较成熟的以此实现现代化框架的集众优于一身站在巨人肩上的特点经过前面的了解我们已经知道给带来的无可比拟的优势但因为一些局限我们无法将其直接用于成熟的框架而需要进行

Laravel

Laravel 是非常现代化的一套 PHP 框架, 基于 composer 的构建方式, 其很多核心依赖并非完全 Laravel 自己所维护, 而依赖于 symfony/http-, eloquent/ 等较成熟的 Library, 以此实现现代化框架的集众优于一身(站在巨人肩上)的特点.

LaravelFly

经过前面的了解, 我们已经知道 Swoole 给 PHP 带来的无可比拟的优势, 但因为 Swoole 一些局限, 我们无法将其直接用于成熟的 PHP 框架, 而需要进行部分改造方可在 Swoole 上运行. 而 LaravelFly 正是这样一款工具(or, you can call it something else, anyway).

好了, 下面我们开始操作吧.

先来新建一个全新的 Laravel

# Composer 下载 Laravel 安装包:
composer global require "laravel/installer"

# 新建项目
laravel new test
cd test/
composer update

cp .env.example .env
vim .env # 修改数据库配置
php artisan key:generate
php artisan serve

这时我们通过 http://localhost:8000 就可以访问这份新的 laravel 项目了

但我们还得继续往下

composer require "scil/laravel-fly":"dev-master"

vendor/bin/publish-laravelfly-config-files

vim app/Http/Kernel.php

#########################################
# class Kernel extends HttpKernel
#  -->
#
#
# if (defined("LARAVELFLY_GREEDY")) {
#     if (LARAVELFLY_GREEDY) {
#         class WhichKernel extends LaravelFlyGreedyKernel { }
#     } else {
#         class WhichKernel extends LaravelFlyKernel { }
#     }
# } else {
#     class WhichKernel extends HttpKernel { }
# }
#
# class Kernel extends WhichKernel
#

vendor/bin/start-laravelfly-server

好了, 我们的 laravel 项目现在是在 Swoole 扩展上运行了, 几乎没有什么 bug, 不过, 经过测试发现 debugbar 有些许问题, debugbar 调试过程记录的查询历史不会在请求完成后清空, 而会继承到下一次请求, 这其实是 Swoole 并不会在每次请求完成后回收创建的资源, 而我们只需要在 config/laravelfly.php 声明需要在单次请求完成后回收的实例即可.

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/22558.html

相关文章

  • 使用 Swoole 来加速你 Laravel 应用

    摘要:是为开发的生产级异步编程框架。因为单个请求创建的环境在请求执行结束后会立即销毁。可以提供强大性能而则可以提供优雅代码结构使用。在使用这个包之前,请确保你的机器安装了正确的。建立并运行起来现在,你可以执行以下的命令来启动服务。 showImg(https://segmentfault.com/img/bVbaF89?w=1240&h=634); Swoole 是为 PHP 开发的生产级异...

    snifes 评论0 收藏0
  • Swoole 入门教程 —— 2小时入门Swoole

    摘要:前言是由韩天峰编写的一个扩展主打异步高并发常驻服务特性适用于等多种伺服器应用场景本系列文章主要介绍方向的应用本系列文章使用原生扩展实现操作数据库操作除外本系列文章将逐步更新预计前完成在完成更新前希望不要不带链接地转载给我一点修正错误的时间题 前言 Swoole 是由 韩天峰 编写的一个 PHP 扩展, 主打异步/高并发/常驻服务特性. 适用于 HTTP/TCP/UDP/WEBSOCK...

    or0fun 评论0 收藏0
  • 个人整理, 阅读过好文章 (每天随时更新)

    摘要:大家有好的文章可以在评论下面分享出来共同进步本文链接数组使用之道程序员进阶学习书籍参考指南教你在不使用框架的情况下也能写出现代化代码巧用数组函数框架中间件实现没错,这就是面向对象编程设计模式需要遵循的个基本原则令人困惑的在中使用协程实现多任 大家有好的文章,可以在评论下面分享出来, 共同进步! 本文github链接 php PHP 数组使用之道 PHP程序员进阶学习书籍参考指南 教你...

    Chiclaim 评论0 收藏0
  • 使用 Swoole 加速 Laravel

    摘要:因为为单个请求创建的环境将在请求过程完成后立即销毁。可以成为强大的性能增强器,提供了优雅的结构和代码使用方式。你可以使用此命令快速安装它,并访问官方网站获取更多信息。注意目前仅支持和。服务器不能使用。基准测试使用进行干净的测试。 Swoole 是针对PHP的生产级异步编程框架。它是一种用纯C语言编写的PHP扩展,它使PHP开发人员能够在PHP中编写高性能,可扩展的并发TCP,UDP,U...

    didikee 评论0 收藏0
  • 2017年PHP程序员未来路何方

    摘要:目前来看等语言还难以企及和。作为一个资深的开发者,在技术上给各位程序十点未来的建议,希望对大家有所帮助。开发者应当学习掌握规范,在开发程序时应当尽量遵循规范。程序员除了写后台程序之外,还有很大一部分工作在展现层,和浏览器前端打交道。 PHP 从诞生到现在已经有20多年历史,从Web时代兴起到移动互联网退潮,互联网领域各种编程语言和技术层出不穷, Node.js 、 GO 、 Pytho...

    william 评论0 收藏0

发表评论

0条评论

leap_frog

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<