Laravel 不同生產(chǎn)環(huán)境服務器的判斷實踐
項目的前期為了開發(fā)速度會使用單一應用,就是一個 Laravel 框架實現(xiàn) API 和后臺接口。
用戶體量上來后,一臺服務器不夠了,項目就采用了 API 和 后臺接口分開放到不同的服務器上面。
發(fā)現(xiàn)路由數(shù)量變多后影響到了性能,這個時候需要區(qū)別不同服務器去加載不同的路由。
如何去別不同的服務器區(qū)別環(huán)境,但是又要區(qū)別是生產(chǎn)環(huán)境。
代碼實現(xiàn)
可以使用 app()->environment(); 方法實現(xiàn),生產(chǎn)環(huán)境和測試環(huán)境的區(qū)別。
查看代碼后發(fā)現(xiàn)可以使用更多的方法。
/**
* 獲取或檢查當前應用程序環(huán)境。
*
* @return string|bool
*/
public function environment()
{
// 返回傳遞給函數(shù)的參數(shù)數(shù)量
if (func_num_args() > 0) {
// 如果第一個參數(shù)是數(shù)組就去第一個,不是的話取全部的。
$patterns = is_array(func_get_arg(0)) ? func_get_arg(0) : func_get_args();
return Str::is($patterns, $this['env']);
}
return $this['env'];
}
Str::is 函數(shù)判斷給定的字符串是否匹配給定的模式。星號 * 可以用來表示通配符:
# 判斷在 API 環(huán)境
app()->environment("production.api");
# 判斷在 ADMIN 環(huán)境
app()->environment("production.admin");
# 判斷在所有環(huán)境
app()->environment("production.*");
修改 RouteServiceProvider 文件
/**
* Define the routes for the application.
*/
public function map()
{
// 公共路由
if (app()->environment('production.api')) {
# production api 路由
$this->mapApiRoutes();
} elseif (app()->environment('production.admin')) {
# production admin 路由
$this->mapAdminRoutes();
} else {
# local testing stanging 環(huán)境下加載所有路由
$this->mapApiRoutes();
$this->mapAdminRoutes();
}
}
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
相關文章
yii2高級應用之自定義組件實現(xiàn)全局使用圖片上傳功能的方法
這篇文章主要介紹了yii2高級應用之自定義組件實現(xiàn)全局使用圖片上傳功能的方法,結合實例形式分析了Yii2自定義組件實現(xiàn)圖片上傳的相關步驟與操作技巧,需要的朋友可以參考下2016-10-10
用Laravel Sms實現(xiàn)laravel短信驗證碼的發(fā)送的實現(xiàn)
這篇文章主要介紹了用Laravel Sms實現(xiàn)laravel短信驗證碼的發(fā)送的實現(xiàn),小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2018-11-11
php安裝擴展mysqli的實現(xiàn)步驟及報錯解決辦法
這篇文章主要介紹了 php安裝擴展mysqli的實現(xiàn)步驟及報錯解決辦法的相關資料,希望通過本文能幫助到大家,需要的朋友可以參考下2017-09-09
thinkPHP3.2.3結合Laypage實現(xiàn)的分頁功能示例
這篇文章主要介紹了thinkPHP3.2.3結合Laypage實現(xiàn)的分頁功能,結合實例形式分析了thinkPHP3.2.3結合Laypage實現(xiàn)分頁的model控制器與view視圖相關操作技巧,需要的朋友可以參考下2018-05-05
YII2框架自定義全局函數(shù)的實現(xiàn)方法小結
這篇文章主要介紹了YII2框架自定義全局函數(shù)的實現(xiàn)方法,總結分析了YII2框架自定義全局函數(shù)相關實現(xiàn)技巧與操作注意事項,需要的朋友可以參考下2020-03-03
laravel 實現(xiàn)根據(jù)字段不同值做不同查詢
今天小編就為大家分享一篇laravel 實現(xiàn)根據(jù)字段不同值做不同查詢,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-10-10

