消除 Drupal 8 Toolbar 垂直模式閃爍

我們是對客戶負責的開發者,讓客戶用得爽是我們的目標。我們絕不會是只生活在程式碼中追求不必要的 0.1 ms 後端效能 的不實際人士。對客戶的前端體驗是我們第一必須關註的。適當的時候進行正確的決定,做正確的事,比一切看不見的完美更完美!

繼 修復 Drupal 8 Toolbar 亂跳現象 發佈後,在 CORE ISSUE 又進行了三個月原地踏步。無止境等待,不會令我們停步,繼往開來,現在發佈了 2.0 版本,進一步修復我們所面臨的一切問題:

https://www.drupal.org/project/toolbar_anti_flicker

** 中文讀者若遇上問題,可以在此或官方 ISSUE 透過你熟悉的語言與我溝通。

Drupal Error 404 效能問題

D7.9 以前,Drupal 對所有頁面處理是完整地執行整個程序一次,包括 404 錯誤。現在增加了 Fast 404 Error 處理,在程序較早的時期就中段執行下去。

 

預設值下,一些常見的圖片檔案或靜態資源會經 Fast 404 處理,你可以透過 settings.php 中的 $conf 設置:


$conf['404_fast_paths_exclude'] // 排除 Fast 404 處理的路徑

$conf['404_fast_paths'] // Fast 404 處理的路徑

$conf['404_fast_html'] // Fast 404 顯示的錯誤頁面內容

值得留意的是,預設的情況下,Fast 404 還是會進行錯誤記錄 (Logging),如果這對你沒有用途的話,可以移除 settings.php 中 drupal_fast_404() 前的註釋,這會略過其他程序,在 settings.php 執行後立刻終止。或者更佳的情況是使用 .htaccess,怎麼寫?這個要靠自己啦。

** 在 Drupal 7.9 以前,必須手動啟用。
** 相關 ISSUE: http://drupal.org/node/76824

透過 Virutalbox 建立 LAMP 加快網頁開發時間

Windows 下使用 LAMP 架設網站,總是慢慢的感覺。本地開發,工具都是 Windows 的好,也沒錢購買 Mac OS,連上遠端的伺服器就是不方便,也不見得快了。

一直使用 Virtualbox 做瀏覽器相容性的測試,最近一時興致,在上面搭建 Linux 平台,發現了另一種速度的感覺。Virtualbox 的架設不難,只是網路設定複雜了一點,網上教學文章相當多,本文並不打算教你怎樣建做了。

經驗分享

我的 Virtualbox 配置:

  • Ubuntu 9.10 32 bits
    32 bits 比 64 bits 更省記憶體
  • 配給 512MB 記憶體
    只用於開發,很足夠了
  • 網路設定了 NAT 及 Host-only
    NAT 可以外連,Host-only 提供給內部使用
  • Samba
    提供檔案共享。透過 Virtualbox內置只享,速度相當慢 ( 可能是 Apache / PHP 並沒有為 Windows 檔案系統作優化 ),也不方便軟體存取。使用Samba 可以 mapping 到 windows 下當作一個磁碟
  • 一般 SERVER 必備的東西

效能測試

我使用了 Drupal 7 作為測試。結果是 Virtualbox LAMP 比 Windows 快很多:

普通頁面 1 倍
讀入大量檔案頁面 3 倍
MySQL 相差 3 倍
啟用 APC 2 ~ 3 倍

以上結果只是約數,並不是很嚴格的基準測試。

總結

Virtualbox 下純安裝 Ubuntu 無 GUI 介面,空置時並不佔多少記憶體,啟動速度相當快,相比下能節省很多開發時間。透過 Virtualbox Snapshot 功能,方便做功能測試。缺點是檔案都集中的一個虛擬檔案中,一不小心會掉失所有檔案,需要勤加備份。由於線上線下都是 Linux 系統,差異減少,上線時也不必要做更多額外的測試及調整。