Laravel v5.8.19 –批量插入性能改进
Laravel团队发布了Laravel5.8.19,其中添加了最新的框架,修复程序以及显着的性能改进,从而影响了使用Eloquent进行大容量插入的过程。
首先,进行了性能改进,从而提高了对成千上万个物品进行大批量插入的速度。进行了根本性的更改是 为了避免 –您可以查看PullRequest#28614,以获取有关更改内容的更多细节。Arr::flatten()array_merge
接下来,将一个 isProduction() 方法添加到Application类,以查看环境是否与值“production”匹配。如果您正在使用, prod 或者 prd 您将需要使用类似以下的内容:
app()->environment('prod')
接下来,DYNAMODB_ENDPOINT 添加了一个可选的 配置选项。使用新的环境变量,可以使用DynamoDB的本地版本进行本地开发和测试。
最后,可以使用url配置选项来解析Redis配置URL,该 选项将在定义时覆盖其他配置值:
[ //直接来自Heroku文档 'url' => 'redis://h:asdfqwer1234asdf@ec2-111-1-1-1.compute-1.amazonaws.com:111', 'host' => '127.0.0.1', //... ]
由于MathieuTUDISCO的贡献,现在可以通过URL配置各种数据库。有关如何使用url 密钥配置数据库的更多详细信息, 请查阅数据库配置文档。
您可以在下面看到所有修复程序列表,以及GitHub上5.8.18和5.8.19之间的全部差异。可以在GitHub5.8changelog中找到Laravel5.8的完整发行说明:
v5.8.19
添加
添加了可选的 DYNAMODB_ENDPOINT env变量以为DynamoDB配置端点(#28600)
添加的 方法(#28602)Illuminate\Foundation\Application::isProduction()
允许的异常报告 rescue() 被禁用(#28617)
允许在Redis配置中解析网址(#28612,f4cfb32)
允许设置其他(sourceip 和 localdomain)smtp配置选项(#28631,435c05b)
固定的
修复了使用别名的口才更新查询(#28607)
固定的 (#28618)Illuminate\Cache\DynamoDbStore::forever()
固定 event:list 命令,在结合使用手动注册事件和事件自动发现的情况下(#28624)
性能改进
提高 (#28614)的性能 Arr::flatten()
已变更
已添加 id 到 (#28588)中的ModelNotFoundException 异常 ImplicitRouteBinding