当前位置: 首页 > news >正文

芜湖做网站的邓健照片成都最新疫情

芜湖做网站的邓健照片,成都最新疫情,郑州网站制作,普陀集团网站建设令人激动的黑科技:Laravel 项目性能提升 20 倍 这个项目能够在无需修改任何代码且无需第三方扩展的前提下,将你的 Laravel 项目性能提高 20 倍。它仅依赖于 PHP 原生的 pcntl、posix、fiber 和 sockets。 项目灵感 起因是看到官方发布的 PHP 8.1 更新…

令人激动的黑科技:Laravel 项目性能提升 20 倍

这个项目能够在无需修改任何代码且无需第三方扩展的前提下,将你的 Laravel 项目性能提高 20 倍。它仅依赖于 PHP 原生的 pcntl、posix、fiber 和 sockets。

项目灵感

起因是看到官方发布的 PHP 8.1 更新中引入了 fiber 特性,看到这则消息时我非常激动,我仿佛看到了 PHP 的更多可能性。再结合我对 Swoole 和 Workerman 的工作流程了解得出结论:它能够完美应用到 Laravel 和 ThinkPHP 等这些规范的面向对象标准框架中。

思路

我的思路是通过利用 fiber 特性,将 Laravel 项目中的 I/O 操作异步化,从而减少阻塞时间,提高整体性能。具体方法包括以下几个方面:

  • 利用 fiber 实现协程:将传统的同步 I/O 操作改为异步 I/O 操作,使得 PHP 代码能够在等待 I/O 操作时执行其他任务。
  • 集成到现有框架:在不修改现有业务逻辑代码的前提下,通过中间件或扩展包的形式,将新的异步 I/O 操作集成到 Laravel 项目中。
  • 优化资源利用率:通过减少阻塞时间,提高服务器的并发处理能力,从而提升整体性能。
  • 提供更多协程助手:提供更多的协程助手函数,方便开发者使用协程特性。
  • 借鉴了 async/await 特性:借鉴了 JavaScript 中的 async/await 特性,提供了类似的函数,方便开发者编写异步代码。

结果

经过一系列的测试和优化,这个项目最终成型,到目前为止我已经在生产环境中部署且能够在 Unix/Linux 服务器上正常工作。
在这里插入图片描述

安装方法

通过 Composer 安装:

composer require cclilshy/p-ripple-drive

运行

php artisan p:run
# -l | --listen     服务监听地址,默认为 http://127.0.0.1:8008
# -t | --threads    服务线程数,默认为4`

Nginx 伪静态配置

location / {try_files $uri $uri/ @backend;
}location @backend {proxy_pass http://127.0.0.1:8008;proxy_set_header Host $host;proxy_set_header X-Real-IP $remote_addr;proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;proxy_set_header X-Forwarded-Proto $scheme;
}

不出意外应该是这样的运行结果:

在这里插入图片描述

至此,你的工作已经完毕,无需进行额外配置,但仍然需要有一定了解 CLI 运行模式的机制,并知悉下列函数在运行过程中会发生什么以决定如何使用它们,如 dd、var_dump、echo、exit、die。如果你的项目中充斥了

header('content-type: application/json'); 
die(json_encode($data));

这样的写法则不适用于该项目

更多

该项目不仅提供了性能提升,还提供了多个协程助手以让开发者能够充分利用协程的特性。当然你也可以忽略这一项。如你可以在控制器中做这些事:

特性 defer

public function index(Request $request) : string {\P\defer(function(){//TODO: 这里的代码将在 return 之后运行, 允许返回请求后做某些事情});return 'Hello PRipple';
}

特性 await

public function index(Request $request) : string {// 非堵塞进程模式读取某个文件$content = \P\await( \P\IO::File()->getContents(__FILE__) );return $content;
}

特性 组件原生化

public function index(Request $request) : string {// 非堵塞进程模式请求某个 URL$response = \P\await( \P\Net::Http()->Guzzle()->getAsync('http://www.baidu.com') );return $response;
}

附言

目前,该项目已经支持 ThinkPHP 和 Laravel。未来我计划将它扩展到更多的 PHP
框架中。尽管该项目在我的服务器上完全正常工作,我甚至觉得它很完美,但依然可能有意料之外的 Bug 需要发现。期待大家在使用过程中反馈问题,共同完善这个项目。也欢迎大家参与到项目的开发和优化中,共同推动
PHP 生态的发展。如果你想了解它是怎么工作的以及更多的使用方法欢迎查阅文档:

项目驱动: https://github.com/cloudtay/p-ripple-drive/blob/main/README.zh_CN.md
项目核心: https://github.com/cloudtay/p-ripple-core/blob/main/README.zh_CN.md

http://www.yidumall.com/news/58489.html

相关文章:

  • 武汉电脑网站制作公司广州网站定制多少钱
  • 品牌网络推广怎么做来宾seo
  • 自己做的网站外网访问网络营销活动案例
  • 美女教师做爰网站网络平台运营是做什么的
  • 443是端口网站建设百度怎么收录网站
  • html做的网站怎么发布统计网站访问量
  • 武汉专业网站建设360排名优化工具
  • wordpress缓存文件在seo怎么搞
  • 协会网站建设模板互联网营销方案
  • 鲜花网站建设毕业论文网站宣传文案范例
  • dede做的网站打不开广州网站设计
  • 医院如何做网站策划?鞍山seo外包
  • 武汉百度建网站广州网络营销推广
  • 广州荔湾区网站建设百度竞价排名危机事件
  • 云南 房地产网站建设磁力王
  • 小米手机官方网站网店代运营和推广销售
  • 19年做哪个网站致富2345网址导航删除办法
  • 建设一个网站首先需要什么中国关键词官网
  • web网站开发实例一个新手怎么做推广
  • 网页网站建设的ppt模板下载沈阳今天刚刚发生的新闻
  • 网站建设的客户怎么找seo排名优化培训怎样
  • wordpress二维码用户登录seo店铺描述例子
  • 北京公司网站开发廊坊网络推广优化公司
  • 怎么用壳域名做网站企业网络推广方案
  • 学校网站logo怎么做百度站长工具是什么意思
  • 环保公司网站模版培训行业seo整站优化
  • 购物网站风格搜索app下载安装
  • wordpress更改ip后登录seo优化是啥
  • 企业网站哪家公司好网站关键词免费优化
  • 猎聘做简历的网站收费靠谱吗长沙seo关键词