首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

Laravel项目的性能优化

所以,接下来的这篇文章给大家分享了几个Laravel网站性能优化的技巧。 优化一:关闭debug 打开.env文件,把debug设置为false。...缓存配置 就如路由一样,你同样可以在应用中缓存配置文件。...设想一下这种场景:每次你发送一个请求到 App 中,Laravel 都需要去加载不同的配置文件,并且要去打开*.env* 文件读取其中的内容。这种方式性能低下,是不?...我的建议是学会如何使用事件和队列,可以将发送邮件任务交给专门的流程,以致于改善用户使用体验。 我上篇文章专门讲了laravel队列的使用,有兴趣的可以去看一下Laravel队列的使用。...那么,将每次的查询结果缓存一小时如何 ? 这个缓存组件的 * remember* 方法在未找到缓存的情况下将会先从数据库中获取数据,并缓存60分钟。

3.7K30

Laravel 数据库连接配置和读写分离

今天开始讲如何Laravel 中操作数据库,Laravel 为我们提供了多种工具实现对数据库的增删改查,在我们使用 Laravel 提供的这些数据库工具之前,首先要连接到数据库。...数据库的连接配置文件位于 config/database.php,和很多其他 Laravel 配置一样,你可以为数据库配置多个「连接」,然后决定将哪个「连接」作为默认连接。...随着应用访问量的增长,对数据库进行读写分离可以有效的提升应用整体性能,关于数据库层面的读写分离配置不属于本教程讨论范畴,我们这里只讨论从应用层面如何Laravel 项目中配置读写分离连接。...也支持多个连接,一个默认连接和一个用作缓存的 cache 连接。...这一思想在 Laravel 配置中无处不在,很多服务都支持配置多个连接提供不同的驱动,比如 Session 支持文件、数据表等连接,缓存支持 Memcached、Redis 等连接,队列支持数据库、Beanstalkd

5.2K20

创建并运行一个新的 Laravel 项目

资源文件,如视图模板、语言文件、待编译的 Vue 模板、Sass、JS 源文件 routes:项目的所有路由文件都定义在这里 storage:用于存放缓存、日志、上传文件、已经编译过的视图模板等 tests...文件 .env.example/.env:用于配置环境变量,.env.example 是一个示例模板,而 .env 是真正的配置文件,由于包含敏感信息,通常也将其放到 .gitignore 文件中。...如上例所示,所有的因环境而异的变量配置值(尤其是敏感信息)都应该存放到根目录下的 .env 环境变量文件中: SPARKPOST_SECRET = xyj_laravelacademy.org 然后在配置文件中通过...(每个环境有自己独立的 .env 文件)使用不同的配置值,提高了代码的复用性和灵活性。...4、运行 安装好 Laravel 项目,了解了目录结构及其作用,以及如何对项目进行配置后,我们就可以运行这个应用了,启动方式因开发环境而异,我们在前面的 Homestead、Laradock、Valet

6.8K30

Laravel 5+ .env环境配置文件详解

在我们开发的时候,有时候我们希望不同的环境中有不同的配置参数,举例来说,你希望生产环境使用的缓存机制与本地环境不同。 要实现这个目的,Laravel使用了DotEnv这个PHP库。...打开.env文件,可以看到一系列配置信息: APP_NAME=Laravel         APP_ENV=local         APP_KEY=base64:qDt/OQzs9YbNTyfHC4xgG...,包含了缓存,数据库,开发环境,队列等等。...因此,.env文件不应该被加入到版本控制中,也就是说每一个开发环境下的.env文件都是独立的。我们可以根据我们开发环境的不同,配置出不同的.env文件,从而实现不同的开发环境拥有不同的配置参数。...好了,本文主要讲解了Laravel 5+ .env环境配置文件的各项含义与使用方法,更多源于Laravel框架的使用技巧请查看下面的相关链接

2.1K20

Laravel5.5 session 的配置及使用示例讲解

解决办法是将获取 Session 数据逻辑后置或者在构造函数中引入在 StartSession 之后执行的中间件 ⑵....配置信息 主要能使用到的配置信息,config.session 一般不要更改此文件,若有改动应该配置 .env 文件....'driver' => env('SESSION_DRIVER', 'file'), //驱动选择模式 'lifetime' => env('SESSION_LIFETIME', 120), //默认...120分钟的有效时间 ○ 使用指导 ⑴. file 驱动方式 默认框架的配置信息下,使用的是 file 类型,也可以配置 .env 文件中的:SESSION_DRIVER=file 主要使用的几个方法为...【备注】: 相关 session 的处理代码,可通用,无需修改,此为优势 其实我就没明白,这个 session 表 的存在意义是如何的?

1.4K10

自动化部署 - Laravel Deploy实战

这个问题是闭包路由无法缓存,将api的user路由和首页那个闭包路由改成使用控制器或者注释掉,要记得提交代码 首次部署设置一下env,nginx配置也是需要创建的。...对于 .env 文件,存放于目标主机的 /path/to/project/shared/ 目录下。...修改 .env 后记得重新缓存配置 php artisan config:cache 另外需要注意的是配置 nginx 站点时,网站根目录应该为 /path/to/project/current/public...|--- storage // 即 laravel 项目的 storage 文件夹 |--- .env // 即 laravel 项目的 .env 每次部署更新,会在 releases...下新建文件夹如 num,拉取对应的最新代码,安装 composer 依赖完成一些其它自定义任务,并将 storage, .env 链接到 shared 文件夹下的那两个上去,然后项目根目录下的 current

2.4K30

php系列二之phpstorm Xdebug和laravel常见问题整理

如果要将这些文件添加到库中生成对应的表则需要执行 php artisan migrate 2. 更新依赖时出问题了如何解决?...Laravel 源码的结构 app:网站的业务逻辑代码,例如:控制器/模型/路由等 bootstrap:框架启动与自动加载设置相关的文件 config:网站的各种配置文件 database:数据库操作相关的文件...public:网站的对外文件夹,入口文件和静态资源(CSS,JS,图片等) resources:前端视图文件和原始资源(CSS,JS,图片等) storage:编译后的视图、基于会话、文件缓存和其它框架生成的文件...:视图路径 blade 视图 4. laravel 配置文件 .env: 环境配置文件 .env.example:.env 文件的一个示例 .gitignore: git 的设置文件,制定哪些文件会被...如何查看 phpinfo 创建一个简单的文本文档并命名为 phpinfo.php 代码如下: <?php phpinfo(); ?

3.2K20

3分钟短文 | Laravel同时连接多个数据库,你用啥办法

Laravel 是一个全球流行的框架,开发者和使用者都比较活跃,周边有许多库,和第三方资源均提供了支持。 今天说一下,如何在框架里同时连接多个数据库? 学习时间 为什么需要连接多个数据库呢?...一般我们在 .env 文件内指定本地或者线上使用的配置项。这样做比较灵活,很容易区分出不同的设置。...首先我们在 .env 文件内添加如下配置: DB_CONNECTION=mysql DB_HOST=127.0.0.1 DB_PORT=3306 DB_DATABASE=database1 DB_USERNAME...$something = SomeModel::on('mysql2')->find(1); // 静态方法 return $something; } } 这样优雅灵活的用法,有没有眼前一亮...写在最后 本文通过多种方法,演示了Laravel从数据库连接配置,到程序内使用的方方面面。还没有体验这个框架的同学,你真的值得一试了。 Happy coding :-)

1.3K10

Laravel env函数的坑,缓存config配置问题

Laravel Laravel env函数的坑 在写一个接口的时候,需要从 config 配置文件里面读取配置, 默认的配置信息是在 .env 文件里面的。...我是直接从控制器里面 通过 env 函数来去取配置信息的。但是这里就有个坑了,因为 配置文件是可以进行缓存的, 然后我每次进行缓存,打开控制器就会报错了,因为读取不到配置的信息。...在框架核心启动类中 Illuminate\Foundation\Bootstrap\LoadEnvironmentVariables::boot ,第20行代码可以知道, 如果缓存了配置文件就会直接返回了...,然后就不会从 env 文件加载配置了!...在需要用到的地方 使用 config('services.xx.xxx') 函数读取配置,这样就可以正常缓存配置了!

1.5K20

Laravel系列4.1】连接数据库与原生查询

连接数据库配置 首先我们可以看下配置文件,在 Laravel 程序的 config 目录下,有一个 database.php 文件,其中有关于数据库的连接配置信息。...从 options 这个参数里面,我们可以看出,Laravel 默认使用的是 PDO 连接的数据库,我也没有研究在 Laravel如何使用 mysqli 进行连接,因为 PDO 确实已经是事实的连库标准了...在这个 mysql 的配置中,我们会发现很多 env() 函数调用的信息。这个函数是用于读取 .env 文件中所写的配置信息的。...通过上面两步,我们的配置就完成了,是不是非常简单,接下来就是在代码中如何使用。...总结 数据库上手就是一堆源码,不过这也让我们搞清楚了 Laravel 在底层是如何去创建一个 PDO 对象的。

3.2K50

Laravel 中编写第一个 Artisan 命令

),现在,我们挑几个最基本的命令来看下: help:为指定命令提供使用帮助信息,如 php artisan help make:request clear-compiled:移除编译过的类文件,比如缓存...、Blade视图文件等 down:将应用切换到维护模式以便查找问题 up:将应用从维护模式恢复为正常模式 env:显示应用当前运行环境,如 local、production migrate:运行所有数据库迁移...migrate:数据库迁移相关命令(数据库教程中会详细介绍) notifications:notifications:table 用于生成通知表 optimize:optimize:clear 用于清除缓存的启动文件...编写第一个 Artisan 命令 介绍完系统内置的所有命令之后,我们接下来看看如何编写自定义的 Artisan 命令,这种需求在实际项目开发中还是常有的,比如数据迁移、数据修复、定时任务等。...至此,你应该对 Artisan 命令的使用和编写有了一个初步的概念,下一篇我们将介绍如何通过命令类编写更加复杂的交互命令。

3.1K20

如何Laravel5.8中正确地应用Repository设计模式

在本文中,我会向你展示如何Laravel 中从头开始实现 repository 设计模式。我将使用 Laravel 5.8.3 版,但 Laravel 版本不是最重要的。...repository 设计模式允许你使用对象,而不需要了解这些对象是如何持久化的。本质上,它是数据层的抽象。...现在我们有了控制器和模型,是时候看看我们创建的迁移文件了。除了默认的 Laravel 时间戳字段外,我们的博客只需要 标题、内容 和 用户 ID 字段。 <?...接下来我们需要添加数据库信息到 Laravel 根目录的 .env 文件中。...DB_DATABASE=laravel_repository DB_USERNAME=root DB_PASSWORD=secret 当你更新了 .env 文件后我们需要清空缓存: php artisan

4.2K31

Laravel中Redis的配置和使用

/predis 会在composer.json中引入最新版本的predis composer update 把下载predis 库加入到vendor,命令执行成功后,如图: 配置redis 说到laravel...'host' => env('REDIS_HOST', 'localhost'), 'password' => env('REDIS_PASSWORD', null),...laravel 项目中默认就有了相关配置(如果你没有修改redis默认安装参数的话),你也可以根据你安装配置的redis进行相关参赛的修改。...使用redis 做缓存 默认使用的file 做缓存,修改的话,也很简单,直接修改.env 文件中的配置参数就OK。...我们可以在Redis门面上以静态方法的方式调用Redis客户端提供的任何命令(Redis命令大全),然后Laravel使用魔术方法将命令传递给Redis服务器并返回获取的结果。

2.3K20
领券