前端工程師必看 JavaScript The Right Way

325x450xtech-icon_js-strict.png.pagespeed.ic.iBvyvS-EQY

PHP 的工程師一定知道 PHP The Right Way,現在 JavaScript 也出了 JavaScript The Right Way,不管是新手或者是資深工程師,都值得把裡面提到文章一看再看,此網站包含

網站還提供了新手或老手必讀的文章,像是 Understanding JavaScript OOP, Understanding “Prototypes” in JavaScriptUnderstanding JavaScript Function Invocation and “this”。也有推薦值的購買的書籍,以及免費書籍

MySQL 5.6 UUID 複製資料到 Slave Server

mysql_logo

MySQL Performance Blog 看到這篇 Beware of MySQL 5.6 server UUID when cloning slaves,裡面提到如果是要複製資料到 Slave 機器,大部分的使用者肯定是將 /var/lib/mysql 目錄整個 copy 到 Slave 機器上。如果是 MySQL 5.6 Server 目錄內會有 auto.cnf 設定檔,這是 MySQL 5.6 新的功能叫做 server_uuid,在啟動 MySQL 後,就會自動建立 auto.cnf 檔案,此檔案就像是 my.cnfmy.ini 設定檔一樣,只是內容只有支援 [auto] 並且只有支援 server_uuid 這 key 值,例如

[Read More]

Percona XtraDB Cluster 搭配 HAProxy

percona

本篇文章紀錄安裝 Percona XtraDB Cluster (簡稱 PXC) 及搭配 HAProxy 做分散流量系統,其實在業界已經很常看到 HAProxy + MySQL Cluster Database 解決方案,HAProxy 幫您解決負載平衡,並且偵測系統是否存活,管理者也就不用擔心 MySQL 服務是否會掛掉。本篇會著重於 HAProxy 設定部份,並且紀錄每一步安裝步驟。之前本作者寫過一篇 Galera Cluster for MySQL Multi-master Replication,也可以參考。今天測試系統都會以 CentOS 為主,各位讀者可以直接開 Amazone EC2 來測試,測試完成再關閉即可。

[Read More]

Percona XtraDB Server 出現 read only issue

mysql_logo

最近在整理 Percona XtraDB Server 將 Read Write 全部拆開,寫入部份只開一台 Node,讀取機器 Replica 則是越多越好,當然如果預計 write 都不會有任何 conflict 的話,那就不用拆開,read write 都可以在同一台即可,拆開的目的要解決 Innodb transaction locking 問題。今天遇到的是將機器讀寫都放在同一台,然後同時多台 Master 架構,結果跑在 CodeIgniter 上面出現底下錯誤訊息

The MySQL server is running with the –read-only option so it cannot execute this statement

[Read More]

Sysbench 測試 Percona XtraDB Server 效能

mysql_logo

今天拿 MySQL benchmark tool - Sysbench 來測試看看 Percona XtraDB Server + Haproxy 效能如何,實驗主機是執行在 CentOS 6.4 版本,記憶體 128 G,在 CentOS 本身用 Yum 安裝 Sysbench 時,內建的版本為 0.4.12,單機測試 MySQL 效能不會出現任何錯誤,但是只要是透過 Haproxy,並且有兩台以上的 Server,就會噴出底下錯誤訊息:

ALERT: failed to execute mysql_stmt_execute(): Err1317 Query execution was interrupted

[Read More]

在 Chrome 瀏覽器使用 Terminal 終端機

Google Chrome

簡介

不知道大家有無在瀏覽器內直接連上 Terminal 終端機,今天來介紹 DevTools Terminal,這是一套 Chrome extension,它可以讓您在 Chrome 瀏覽器直接使用 Terminal,平常開發程式,一定會常常切換瀏覽器及 Terminal 軟體,現在開發者可以直接在瀏覽器連上 Terminal,並且開始使用 Git, Grunt, wget 甚至 Vim 等指令。

Screenshot from 2014-01-05 20:36:26

[Read More]

前端工程師必看: 十大 CSS 技巧

css3

2014 年第一篇文章來寫前端工程師必須要瞭解的 [CSS] 技巧,此篇其實來自於 KidsIL Blog 內的一篇 10 Great CSS Tips for every Web Developer,裡面作者紀錄了十大 CSS 技巧,看完這十大後,發現有些技巧曾經出現在 Even Wu 給網頁設計師的建議一文,這些技巧都算是蠻基本的,對於前端工程師有很大的幫助,如果尚未瞭解或還沒開始使用的開發者,也可以建議團隊開始使用。底下內容來自於原網站,在加上筆者的一些補充。

[Read More]

增加 phpMyAdmin 登入時間

phpMyAdmin 是一套管理 MySQL 資料庫的 UI 介面工具,預設登入時間為 1440 秒,這時間是定義在 libraries/config.default.php 內,phpMyAdmin 也是透過 gc-maxlifetime 來決定 Session 存在與否,所以如果要增加登入時間,比如說設定一年 (3600 * 24 * 365) 好了,請按照底下設定 PHP 設定檔 如果是裝 php-fpm 請修改 /etc/php5/fpm/php.ini 路徑 1 2 3 ;After this number of seconds, stored data will be seen as \'garbage\' and ; cleaned up by the garbage collection process. ; http://php.net/session.gc-maxlifetime session.gc_maxlifetime = 315360000 重新啟動 php-fpm 1 $ /etc/init.d/php5-fpm restart phpMyAdmin 設定檔 修改 config.inc.php 如果找不到此檔案,請複製 config.sample.inc.php 為 config. [Read More]

The streaming build system Gulp

gulp

看到 Yeoman 作者之一 Addy Osmani 開始 review Gulp build system,由於 Yeoman framework 跟 GruntJS 是很緊密結合的,但是 GruntJS 套件愈來愈多,漸漸的執行 GruntJS 後,開始吃了系統 CPU 及記憶體,這對於開發環境而言,會是一大負擔阿,大家不知道有無發現,跑 Nodejs GruntJS 時,每當存檔的時候,CPU 就開始哀嚎了,我自己是有這方面的體會,加上團隊內並不是每位同仁的電腦都是很 powerful,原本是好意讓團隊開發更遵守 coding style 及統一開發環境,但是 Grunt 的肥大,讓整個 Client 環境 Loading 飆高。所以 Yeoman 看到了 Gulp。也有考慮如何將 Gulp 整合到 Yeoman 專案。

[Read More]