什麼是 Lumen?
Lumen 是一個由 Laravel 元件搭建而成的微框架,由 Laravel 官方維護。 Lumen 為速度而生,是目前最快的 PHP 框架之一,甚至比類似的微框架 Silex 速度還要快。
Lumen 比其他微框架的優點是,建立在 Laravel 之上,使其具備 Laravel 強大的功能,如 路由,依賴注入,Eloquent ORM,資料庫遷移管理,佇列和規劃任務等。
Laravel 本來就是一個功能齊全,速度飛快的框架,但是 Lumen 因為去除了很多 Laravel 的配置和可自定義的選項,速度越加飛快,毫秒必爭。
快速的速度,再加上 Laravel 非常方便的功能,使用 Lumen 開發應用程式會是非常愉悅的體驗。
相關推薦:《php入門教學》
什麼時候使用 Lumen?
Lumen 專為微服務或API 設計,舉個例子,如果你的應用程式裡面有部分業務邏輯的請求頻率比較高,就可以單獨把這部分業務邏輯拿出來,使用Lumen來建構一個小App。
因為 Lumen 是對 Laravel 最佳化了框架的載入機制,所以 Lumen 對資源的要求少很多。
當然,你可以使用 佇列系統 與你的主 Laravel 應用程式互動。 Laravel 和 Lumen 從一開始就是設計成能一起很好的工作,並且,配合使用,允許你架構一個強大的,以微服務為驅動的應用程式。
Lumen 同時也非常適用於建立 API 接口,此類型的應用通常不需要具備 全端框架 的所有功能,如 HTTP 會話管理,Cookies,和模版系統。
Lumen 的限制
因為框架的載入進行了優化,去除靈活性來換取速度,所以Lumen 的可自訂性不是很強,一些專為Laravel 開發的擴充包可能無法使用,如開發者工具條,CMS 系統等。
Lumen 沒有使用 Symfony 的路由模組,而是採用了速度更快的 nikic/fast-route。如果你需要使用 Symfony 的路由功能,例如 子網域等進階路由功能,Lumen 可能不適合你,建議使用功能更齊全的 Laravel。
如果你真的選擇了全端框架,請放心使用,建立在 Laravel 上的應用程式能處理每天 15,000,000 以上的請求,沒什麼可擔憂的。
Lumen 包含了哪些Laravel 的功能
Lumen 包含了大部分的Laravel 全端框架的功能:
##·Blade 模版引擎
·Caching 快取系統
·Command Scheduler 排程任務
##·Controllers 控制器
·Eloquent ORM 資料庫操作
·Error Handling 錯誤處理
#·Database Abstraction 資料庫抽象層
·Dependency Injection 依賴注入
·Logging 日誌系統
#·Queued Jobs 佇列系統Lumen 獨特的初始化機制,使其在功能強大的同時,具備了高效能,是建立微服務架構應用的絕佳方案。
總結:1. Lumen是Laravel元件搭建而成的子框架,由Laravel官方進行維護,其上的程式碼可以不進行修改就放在Laravel上運行。
2. Lumen是目前最快的PHP框架之一,它去掉了很多在Laravel中的配置和可選項以提升了它的速度。
3. Lumen的優點就是快,同時也具備了絕大部分Laravel的強大功能。
4. Lumen的缺點是它犧牲了一定的靈活性來保證速度,所以它的可定義性不是很強,同時也有一些為Laravel開發的擴充包可能無法在其上使用。
5. Lumen的使用範圍:適合實現一些互動頻率非常高的部分。
6.一般來說開發API的服務端建議使用Lumen。
以上是php開發api用什麼框架的詳細內容。更多資訊請關注PHP中文網其他相關文章!