首先謝謝大家.
請問各位在自己的項目中都是怎麼處理設定檔的.
比如我現在有個 key=>value的配置, 大概1200個左右. 我使用yii2架構.
每次架構啟動 都會載入所有的設定檔, 因為比較多了. 所以有點擔心 項目正式上線後會有問題. 比如同時線上人數多了. 這樣比較多的配置, 每次消耗的記憶體會不會比較大.
請問各位都是怎麼處理的?
就放配置裡
緩衝
資料庫
???
我的項目正式上線,預估同時線上峰值不到1k使用者.
請各位分享一下比較好的解決方式.謝謝.
回複內容:
首先謝謝大家.
請問各位在自己的項目中都是怎麼處理設定檔的.
比如我現在有個 key=>value的配置, 大概1200個左右. 我使用yii2架構.
每次架構啟動 都會載入所有的設定檔, 因為比較多了. 所以有點擔心 項目正式上線後會有問題. 比如同時線上人數多了. 這樣比較多的配置, 每次消耗的記憶體會不會比較大.
請問各位都是怎麼處理的?
就放配置裡
緩衝
資料庫
???
我的項目正式上線,預估同時線上峰值不到1k使用者.
請各位分享一下比較好的解決方式.謝謝.
配置項還算挺多的,如果系統效能要求比較高的話,建議還是採用redis緩衝的方式,然後還可以增加一個後台頁面動態管理這些配置項,另外,建議最好把配置項分組,比如預先載入配置,懶載入配置,自己其它模組用到但當前模組不需要的配置進行分組區分,需要什麼就載入什麼,另外也可以按照開發環境,測試環境,正式環境等維度分組,最後,為了減少redis出現故障導致錯誤的情況,建議把系統預設的一份配置放在檔案中,並做好報錯提醒,所謂的降級使用。
yac 你值得擁有
設定檔單獨存放,如:
db.conf.phpftp.conf.phpcache.conf.php
然後再寫個類庫按需lazyLoad載入,如Config::get('db.user_name');
我覺得你多慮了,在你這個訪問量下,載入這點設定檔完全不是問題,特別是開啟了php的opcache之後
你可以用ab測試做一下壓力測試就有數了
Laruence的Yac你可以考慮一下
感謝大家了. 看來還要具體情況具體對待.