小编Sky*_*rth的帖子

Laravel这个响应时间可以吗?

我注意到laravel应用程序内部存在一些严重的问题。在本地主机上,即使没有任何中间件或任何操作的基本路由,也要花费大约250ms的加载时间。所以我认为这有点疯狂。你怎么看 ?是因为我的计算机性能好吗?还是在服务器上部署它会更快?

SPECS:laravel 5.7无业游民,Laravel / homestead(水准6.4.0)

编辑:更多有关计时的详细信息: 定时

在相同的环境中测试样本,但是新创建了laravel 5.7项目。Project仅具有一个控制器和一种基本方法来返回变量$test=microtime(true) - LARAVEL_START;。结果通常在130〜ms左右。考虑到我的实际应用程序正在返回带有一些库和样式表的视图,所以它相当不错。

现在的结论:我猜这种速度对于我的本地环境来说是完全可以的(考虑到PC规格和无nfs的无所事事)。


编辑2: 正如@Tarasovych建议的那样,我确实禁用了debugbar并用于$test=microtime(true) - LARAVEL_START;获取响应时间。结果如下:

没有调试栏:

$test=microtime(true) - LARAVEL_START; 
Run Code Online (Sandbox Code Playgroud)

$ test是:

首先,首先呼叫该路线:500〜ms。

在同一路径上刷新:190〜ms。

使用调试栏:

$test=microtime(true) - LARAVEL_START; 
Run Code Online (Sandbox Code Playgroud)

$ test是:

首先,首先呼叫该路由:530〜ms。

在同一路径上刷新:200〜ms。

大致来说,调试栏会影响响应时间约 10〜毫秒 也许我也应该在.env中禁用app_debug吗?我还没有尝试过。

如果我没有提供足够的信息,请告诉我,以便我进行更新。

谢谢

optimization performance laravel laravel-5

5
推荐指数
1
解决办法
205
查看次数

具有默认值的 Github Action 布尔输入

我正在为市场开发 GitHub Action。它有各种带有默认值的输入。这些输入之一恰好是boolean我用来切换调试状态的输入。

这是我的布尔输入定义:

inputs:
  debug_mode:
    description: "Controls the debug mode, boolean, true is for on. When turned on, it'll output certain information on certain steps. Mainly used for development, but use it as you please to inspect your env and variables."
    type: boolean
    required: false
    default: false
Run Code Online (Sandbox Code Playgroud)

boolean正如您所看到的,它具有带默认值的类型false。然后,在其中一个步骤中,我检查debug_mode以确定是否运行该步骤。但是,它没有按预期工作:

steps:
  - name: Dump debug_mode
    run: echo "debug_mode is ${{ inputs.debug_mode }}"
    shell: bash
  - name: Dump context
    if: ${{ inputs.debug_mode}}
    uses: crazy-max/ghaction-dump-context@v2
  - …
Run Code Online (Sandbox Code Playgroud)

continuous-integration yaml github-actions

5
推荐指数
1
解决办法
1万
查看次数

Laravel 重命名集合键

我有以下行来获取集合数组。

$tags = Tag::all()->map->only(['id', 'name']);
Run Code Online (Sandbox Code Playgroud)

这会产生以下数据。

[{"id":1,"name":"tag 2"},{"id":2,"name":"tag 3"},{"id":3,"name":"tag-44"},{"id":4,"name":"biyoloji"}]
Run Code Online (Sandbox Code Playgroud)

我的目标是重命名集合中的关键名称,如下所示。

[{"value":1,"text":"tag 2"},{"value":2,"text":"tag 3"},{"value":3,"text":"tag-44"},{"value":4,"text":"biyoloji"}]
Run Code Online (Sandbox Code Playgroud)

基本上,我想将“键”重命名为“值”,将“名称”重命名为“文本”。我尝试了pluck()函数、get()函数、映射,但无法使其工作。最有可能的是,用 foreach 迭代它就toArray()可以解决问题,但我正在寻找正确的方法来做到这一点。我的环境是 Laravel 8 和 PHP 7.4

php collections laravel php-7 laravel-8

4
推荐指数
2
解决办法
1万
查看次数