Laravel 6.0 中文文档的生成器实现,适用于处理 大型数据集。 例如,假设你的应用需要处理 GB 级别的日志文件,并使用 Laravel 的集合方法来解析日志,这个时候将整个日志文件一次性读取到内存 显然是不合适的,这个时候懒集合类就派上用场了,它可以每次只读 取文件的一小部分到内存: 本文档由学院君提供 学院君致力于提供优质 Laravel 中文学习资源:https://xueyuanjun.com 8 use App\LogEntry; 方法已经被升级 为返回 LazyCollection 实例,这样一来,我们就可以像之前一样执 行一次数据库查询,但是每次只会加载一个 Eloquent 模型到内存。 在这个示例中,filter 回调只有在迭代完每个用户时才会执行,从 而极大减少内存的使用量: $users = App\User::cursor()->filter(function ($user) { return $user->id 安装 Elasticsearch 的时候需要指定一个支持的版本。默认安装会创 建一个名为「homestead」的集群,不要给 Elasticsearch 分配超过 操作系统一半的内存,因此确保 Homestead 机器内存至少是分配 给 Elasticsearch 的两倍。 注:查看 Elasticsearch 文档学习如何自定义配置。 Neo4j Neo4j 是一个图形数据库管理系统,默认安装的0 码力 | 1442 页 | 14.66 MB | 1 年前3
Laravel 5.6 中文文档elasticsearch 到 Homestead.yaml 文件并指定一个支持的版本。默认安装会创建一个名为「homestead」的集 群,不要给 Elasticsearch 分配超过操作系统一半的内存,因此确保 Homestead 机器内存至少是分配给 Elasticsearch 的两倍: box: laravel/homestead ip: "192.168.10.10" memory: 4096 cpus: 会代理所有针对 *.test 域名的请求指向本地安装的站点目录。 此外,这样一个极速的 Laravel 开发环境只需要占用 7M 内存。Valet 并不是想要替代 Vagrant 或者 Homestead,只是提供了另外一种选择,更加 灵活、极速、以及占用更小的内存空间。正是基于这些原因,我们将 Valet 称之为轻量级的开发环境。 Valet 开箱支持但不限于以下软件和工具: Laravel 'database' => 0, ], ], ], ], 默认情况下,集群将会在节点之间进行客户端分区,从而允许你构建节点池并创建大量可用内存。不过,客户端分片并不处理故障转移,所以,非常 适合从另一个主数据存储那里获取有效的缓存数据。如果你想要使用本地 Redis 集群,需要在 Redis 配置的 options 中进行指定: 'redis'0 码力 | 377 页 | 14.56 MB | 1 年前3
Laravel 5.3 中文文档DnsMasq,Valet 将所有 请求代理到*.dev 域名并指向本地安装的站点目录。这样一个极速的 Laravel 开发环境只需要占 用 7M 内存。 Valet 并不是想要替代 Vagrant 或者 Homestead,只是提供了另外一种选择,更加灵活、极速、以 及占用更小的内存空间。 Valet 为我们支持但不限于以下软件和工具: Laravel Lumen Symfony 和 Redis 等。 缓存配置文件还包含其他文档化的选项,确保仔细阅读这些选项。默认情况下,Laravel 被配置 成使用文件缓存,这会将序列化数据和缓存对象存储到文件系统。对大型应用,建议使用内存缓 存如 Memcached 或 APC,你甚至可以为同一驱动配置多个缓存配置。 驱动预备知识 数据库 使用 database 缓存驱动时,你需要设置一张表包含缓存缓存项。下面是该表的 Storage::putFile('avatars', $request->file('avatar')); 注:如果你接收的上传文件尺寸很大,你可能需要手动指定文件名,因为计算大文件的 MD5 哈 希值很耗内存。 指定文件名 如果你不想要自动生成文件名,可以使用 storeAs 方法,该方法接收路径、文件名以及磁盘(可 选)作为参数: $path = $request->file('avatar')->storeAs(0 码力 | 691 页 | 9.37 MB | 1 年前3
Yii 2.0 权威指南譡 譳 譁 譲 譲 譡 譹 謨 謩 方法, 这样 会以数组的形式返回查询结果,而不必返回 譁 譣 譴 譩 譶 譥 譒 譥 譣 譯 譲 譤 对象,这能显著 降低因大量记录读取所消耗的 轃 轐 轕 时间和内存。如: $ c u s t o m e r s = C u s t o m e r : : f i n d ( ) - > a s A r r a y ( ) - > a l l ( ) ; 輱 这些方法都将响应对象作为返回值,如果要发送的文件非常大,应考虑使 用 譹 譩 譩 譜 護 譥 譢 譜 譒 譥 譳 議 譯 譮 譳 譥 謺 謺 譳 譥 譮 譤 譓 譴 譲 譥 譡 譭 譁 譳 譆 譩 譬 譥 謨 謩 因为它更节约内存, 以下示 例显示在控制器操作中如何发送文件: p u b l i c f u n c t i o n a c t i o n D o w n l o a d ( ) { r e t u r n 发或者调试一个应用的时候使用这个特性。 消 消 消息 息 息刷 刷 刷新 新 新和 和 和导 导 导出 出 出 如上所述,通过 譬 譯 譧 譧 譥 譲 譯 譢 譪 譥 譣 譴 对象,日志消息被保存在一个数组里。 为 了这个数组的内存消耗,当数组积累了一定数量的日志消息, 日志对象每 次都将刷新被记录的消息到 转 软 轧 轴 轡 轲 轧 轥 轴 轳 中。 你可以通过配置 l o g 组件的 警 譬 譵 譳 譨 證 譮 譴 譥 譲0 码力 | 537 页 | 4.66 MB | 1 年前3
Laravel 5.1 中文文档protocol: udp 4、使用 Blackfire Profiler 进行性能分析 SensioLabs 的 Blackfire Profiler 能自动收集代码执行数据,比如内存、CPU 时间、硬盘 I/O 等,Homestead 使得在应用中使用该 profiler 变得轻而易举。 所有需要的软件包已经安装到 Homestead 盒子,你只需要在 Homestead.yaml Eloquent 结果,可以使用 chunk 命令。chunk 方法会获取一个“组 块”的 Eloquent 模型,并将其填充到给定闭包进行处理。使用 chunk 方法能够在处理大量数 据集合时有效减少内存消耗: Flight::chunk(200, function ($flights) { foreach ($flights as $flight) { // 和 Redis 等。 缓存配置文件还包含其他文档化的选项,确保仔细阅读这些选项。默认情况下,Laravel 被 配置成使用文件缓存,这会将序列化数据和缓存对象存储到文件系统。对大型应用,建议使 用内存缓存如 Memcached 或 APC,你甚至可以为同一驱动配置多个缓存配置。 1.1 缓存预备知识 1.1.1 数据库 使用 database缓存驱动时,你需要设置一张表包含缓存缓存项。下面是该表的0 码力 | 307 页 | 3.46 MB | 1 年前3
Laravel 5.2 中文文档protocol: udp 4、使用 Blackfire Profiler 进行性能分析 SensioLabs 开发的 Blackfire Profiler 能自动收集代码执行数据,比如内存、CPU 时间、 硬盘 I/O 等,Homestead 使得在应用中使用该性能分析器变得轻而易举。 Blackfire Profiler 需要的软件包已经预安装到 Homestead 盒子,你只需要 Eloquent 结果,可以使用 chunk 命令。chunk 方法会获取一 个“组块”的 Eloquent 模型,并将其填充到给定闭包进行处理。使用 chunk 方法能够在处 理大量数据集合时有效减少内存消耗: Flight::chunk(200, function ($flights) { foreach ($flights as $flight) { // 和 Redis 等。 缓存配置文件还包含其他文档化的选项,确保仔细阅读这些选项。默认情况下,Laravel 被配置成使用文件缓存,这会将序列化数据和缓存对象存储到文件系统。对大型应用,建 议使用内存缓存如 Memcached 或 APC,你甚至可以为同一驱动配置多个缓存配置。 1.1 缓存预备知识 数据库 使用 database 缓存驱动时,你需要设置一张表包含缓存缓存项。下面是该表的0 码力 | 377 页 | 4.56 MB | 1 年前3
CmlPHP v2.x 开发手册
CmlPHP中提供了简化的psr-3日志接口。在对其进行改进的过程中也 是比较纠结是否要完全按照psr-3,甚至直接使用 monolog 这样强大的 第三方包。但是在我直接用 monolog 后看了下内存占用,已经接近空 业务的时候框架自身的占用了。而CmlPHP是定位轻量的开发框架。 所以还是决定自己开发了一个简化的psr-3日志接口。 框架在线上模式的时候,默认Log只记录致命错误及未被捕获异常可以0 码力 | 245 页 | 720.67 KB | 1 年前3
CmlPHP v2.x 开发手册
CmlPHP中提供了简化的psr-3日志接口。在对其进行改进的过程中也是比较纠结是否要完全按照psr-3, 甚至直接使用 monolog 这样强大的第三方包。但是在我直接用 monolog 后看了下内存占用,已经接近 空业务的时候框架自身的占用了。而CmlPHP是定位轻量的开发框架。所以还是决定自己开发了一个简 化的psr-3日志接口。 框架在线上模式的时候,默认Log只记录致命错误及未被捕获异常可以通过修改配置文件0 码力 | 143 页 | 1.54 MB | 1 年前3
CmlPHP v2.x 开发手册
行改进的过程中也是比较纠结是否要 完 全 按 照 psr-3, 甚 至 直 接 使 用 monolog 这 样 强 大 的 第 三 方 包 。 但 是 在 我 直 接 用 monolog 后看了下内存占用,已经接近空业务的时候框架自身的占用了。而CmlPHP是 定位轻量的开发框架。所以还是决定自己开发了一个简化的psr-3日志接口。 框架在线上模式的时候,默认Log只记录致命错误及未被捕获异常可以通过修改配置文0 码力 | 251 页 | 973.37 KB | 1 年前3
共 9 条
- 1













