enflow/component-laravel

Enflow 客户的 Laravel 包

dev-master 2024-07-15 11:42 UTC

This package is auto-updated.

Last update: 2024-09-15 11:56:53 UTC


README

component-laravel 包为基于 Enflow 的应用程序提供了一种合理的默认配置。LaravelServiceProvider 注册了一些类、中间件,并启用了 Skyline 集群支持。

安装

您可以通过 composer 安装此包

composer require enflow/component-laravel

配置

此包会自动通过 Laravel 的自动加载进行注册。

异常处理

要包含此异常处理程序以启用更漂亮的错误处理,请像这样从 app/Exceptions/Handler.php 文件扩展 \Enflow\Component\Laravel\AbstractExceptionHandler

<?php

namespace App\Exceptions;

use Enflow\Component\Laravel\AbstractExceptionHandler;

class Handler extends AbstractExceptionHandler
{
    protected $dontReport = [];

    protected $dontFlash = [
        'password',
        'password_confirmation',
    ];
}

启用 Bugsnag

  1. 将新的 Laravel 项目添加到您的 Bugsnag 账户中,并启用 Slack 通知到 #failure
  2. 将 Bugsnag 添加到您的 services.php 文件中
    'bugsnag' => [
        'api_key' => env('BUGSNAG_API_KEY'),
    ],
  1. 将 BUGSNAG_API_KEY 添加到您的 .env 文件中

命令

db:sync

db:sync 命令允许您将生产数据库从您的本地机器导出并自动导入。

性能

为了提高 db:sync 脚本的导入时间(使用 2GB 数据库测试),导入时间约为 60 分钟。

  1. 确保您的 Linux 机器上运行的是 MySQL 8.0 或更高版本(从 WSL 连接到基于 Windows 的 MySQL 的旧系统要慢得多)。
  2. 更改配置设置以提高缓冲区大小以允许更快的导入。

sudo nano /etc/mysql/mysql.conf.d/mysqld.cnf

[mysqld] 块之后添加以下内容

innodb_buffer_pool_size=4G
innodb_log_buffer_size=256M
innodb_log_file_size=1G
innodb_write_io_threads=16
innodb_flush_log_at_trx_commit=0
max_allowed_packet=1024M
read_buffer_size=2M

重新启动 MySQL 以使这些变量生效: sudo service mysql restart

通过直接通过 mysql 检查以确保变量已应用:SHOW VARIABLES LIKE "innodb_buffer_pool_size";

贡献

有关详细信息,请参阅 CONTRIBUTING

安全

如果您发现任何与安全相关的问题,请通过电子邮件 michel@enflow.nl 反馈,而不是使用问题跟踪器。

鸣谢

关于 Enflow

Enflow 是一家位于荷兰阿芬丹的数字创意代理商。我们专注于开发网络应用程序、移动应用程序和网站。您可以在我们的网站上找到更多信息 在这里