Apache 在更動設定檔以後,如果要套用新設定,一般都會下 restart 來重新啟動 Web server:
1
|
|
這個指令會立即關掉所有的子進程,然後再重新讀取設定。但是在 production 伺服器,這樣可能會造成使用者的 request 被中斷。
比較少人知道還有一個 graceful 的指令:
1
|
|
發出這個指令以後,每個子進程都會處理完目前的 request 後,再套用新的設定。在 production 伺服器更改設定,使用 graceful 才能避免造成使用者的困擾。
Apache 在更動設定檔以後,如果要套用新設定,一般都會下 restart 來重新啟動 Web server:
1
|
|
這個指令會立即關掉所有的子進程,然後再重新讀取設定。但是在 production 伺服器,這樣可能會造成使用者的 request 被中斷。
比較少人知道還有一個 graceful 的指令:
1
|
|
發出這個指令以後,每個子進程都會處理完目前的 request 後,再套用新的設定。在 production 伺服器更改設定,使用 graceful 才能避免造成使用者的困擾。
之前在 VirtualBox 的 Shared Folder 進行開發,在寫 PHP 的時候都沒問題, 但是只要碰到靜態檔案,例如 Js 檔,明明修改了,看到的還是舊的版本。
這時候只要重開 Apache 就好了,但是每次這樣重開也不是辦法,於是 Google 一下是哪裡出了問題。 發現是 Apache 的 sendfile 在做怪,這是一個利用 Kernel 的 sendfile 來加速靜態檔案發送的功能。
但是 sendfile 在目錄是網路掛載的情況下會出問題,所以在開發環境,把這個功能關掉,才不會出現檔案沒更新的錯誤。
打開 httpd.conf,找到 EnableSendfile ,並設成 off:
1 2 3 4 5 6 7 8 |
|
更多有關 Apache Sendfile 可以參考:Apache Documentation
Bower Official Site : http://twitter.github.com/bower/
Bower 是一個 JavaScript Package Manager,類似 node.js 的 npm 、 PHP 的 composer。
在開發 Web 前端時,常常需要很多套件來輔助開發,例如需要 jQuery、Backbone、Bootstrap 和 Require.js 等等, 在沒有套件管理的情況下,通常有幾種方式:
不管用上面哪種方法,如果想要更新套件,一樣的事情又得重做一次。如果需要特定版本的套件,又要花時間找。
而 Bower 就是用來解決這個問題的,只要列好所需的 Library 就可以一個指令全部抓回來,更新的時候也一樣快速。
Vagrant Official Site : http://vagrantup.com/
以往在建立 VM 的時候,就算 Guest Machine 都已經安裝好了,在部屬 Share Folder 、 Port Forwarding 時也會花非常多的時間,如果是在一個團隊裡,要求大家開發的環境都一樣,而 Server 內要有 Apache 2.2 、 PHP 5.4 、 Redis 和 MongoDB,設定檔也都要一樣,光想到這些就令人頭痛。
而 Vagrant 就是用來解決這個問題的,它能將你配置好的 VM 封裝起來,以後,如果其他開發者進來, 只要一個指令,就可以把開發環境建立起來,開發環境一起來,馬上就能進入狀況,可以節省非常多的時間成本!
自己向來是 Windows 的忠實使用者,即便我其實不太喜歡微軟的東西,但是在 Windows 我可以發揮最大的開發速度。
然而,最近找工作,跑了很多家公司面試,發現,千篇一律的都是 mac!!實機操作的時候也是 mac,導致環境不熟悉, 操作的速度非常緩慢,本來一個小時內可以搞定的題目,居然花了兩個小時以上。 甚至有公司還規定,他們公司只用 mac,禁止 Windows..XDD
上面這張,不是圖片XD,可以直接玩!
這是一年前的作品,因為那時候剛當完兵,腦袋被重灌,只好寫一些東西來回復記憶。而當時我最想學的東西是 JavaScript 和 HTML5 ,所以就從這邊開始下手! 使用的技術是 HTML5 的 Canvas,用 JavaScript 來控制各種行為和畫面的呈現。
本來的目標是做得跟原本的 XP版 一模一樣,後來的成果差了左右鍵同時按,和一些自訂功能,大概花了兩天的時間完成。
因為是恢復記憶用的作品,所以原始碼非常可怕,如果想要學習的千萬不要XD。
下面這張是真的踩地雷,可以看到實際遊戲的部分,跟做出來的成品,一個 Pixel 都不差
很久以前就很想把陽台改造成空中花園,不太喜歡一盆一盆的盆栽,感覺很雜亂的感覺。 剛好最近沒工作在家太無聊,於是就開始了空中花園 DIY,以前完全沒有經驗,完全都靠網路上找資料、做功課。
PHP 是 Script 語言,在程式被執行的時候才會開始編譯,所以和其他預先編譯好的語言比起來速度會比較慢。 而如果 code 沒有變更,每次的編譯其實是多餘的,如果能將重複編譯的時間和資源省下來,就可以讓 PHP 加速不少。
市面上有很多 PHP 加速的外掛,可以用來達成這個目的,APC 就是其中一個。APC 會將編譯的結果暫存起來,省去每次需要重新編譯的時間。
Lovey 是我跟同事千千一起合作完成的專案。是一個 Pinterest Like 網站,以女性服飾和配件為主要經營方向。
在做這個網站之前,也做了一個類似 Pinterest 的網站,但是因為圖片太雜,網站沒有一個主軸,使得客源非常不穩定。 做足功課以後,發現不少女生停留在網拍和 PTT e-shopping 的時間非常得長!於是考慮到在女性導購的方面,應該會有很多商機, 於是結合了女性導購和 Pinterest 的網站就誕生了!
在上一家公司裡,公司自行開發了一套 Framework,工程師都必須 Follow 這套 Framework 和設計標準, 而這套 Framework 是由其中一個有十年經驗的工程師所開發。他跟我說這套程式碼的開發流程後,給了我一個 Sample Code, 一看之下,讓我馬上決定離開這家公司。
先不論這個 Framework 好不好用,光看裡面的 Coding Style,我就覺得無法從這家公司學到高深的技術了。 在那個 Sample Code 中,我看到最噁心的東西就是,不斷的 if else if else,少則三四層,多則五六層。 他跟我說程式碼可以維護是很重要的,結果我看到他的寫的東西卻是這樣…這種東西可以維護嗎(怒)?