Tag Archives: thread

MySQL 上的 Thread Pool...

Percona 的人寫了一篇「Percona Server: Improve Scalability with Percona Thread Pool」,提到關於 MySQL 在連線數很多時的效能。 傳統的作法是一個連線使用一個 thread,這種方法實做起來很簡單,但當連線數超過一定程度時就會因為共用資源的限制而變慢。 其中一種解決方法是引入 Thread Pool 架構,也就是 M 個 thread 處理 N 個連線。 Oracle 有提供商用版本叫做 Thread Pool Plugin,就如同名字,是以 plugin 形式存在。這個功能在 5.5 與 5.6 都有。 MariaDB 也有 open source 實做的 Thread … Continue reading

Posted in Computer, Database, MariaDB, Murmuring, MySQL, Network, Software | Tagged , , , , , , , | 1 Comment

MySQL 平行執行的 Replication...

「MySQL Replication – Multi-Threaded Slaves (Parallel Event Execution)」這篇在講 MySQL 5.6 的 multi-threaded replication。 在文章裡提到,在 5.6.3 之前的版本,MySQL replication 都是 single-threaded,所以當 master 可以充分發揮多 CPU 能力時,slave 仍然要一個更新跑完才會跑下一個更新。 舉例來說,假設 master server 上有兩個 thread 在跑: thread 1 正在執行 UPDATE table1 SET foo = 0 WHERE … Continue reading

Posted in Computer, Database, Murmuring, MySQL, Network, Software, WWW | Tagged , , , , , , , , , , , , , | Leave a comment

用 Lbzip2 解壓縮

手上抓了幾個 .bz2 的檔案要 bzcat 出來 pipe 丟給 Perl script 跑,用系統預設的 bzip2 發現速度卡在解壓縮,而不是 Perl script... 用 parallel 與 bzip2 當關鍵字到 apt-cache 裡面找,有找到兩個套件:Lbzip2 與 Pbzip2,都裝起來後測解壓縮的功能,發現 Pbzip2 解壓縮時沒有辦法利用到多核心的優勢,而 Lbzip2 則是很順利的超過 100%,輸出結果讓 Perl script 也吃滿 CPU resource... 如果是壓縮時需要壓縮率,還是用 xz 就好...

Posted in Computer, Murmuring, Software | Tagged , , , , , , | Leave a comment

裝 mplayer-mt 改善解碼效率

用 multi-threaded 版本可以將解碼的程式丟到多顆 CPU core 上跑,善用多 CPU 的資源,這樣看 1080p 才不會痛... (家裡的 AMD X2 4000+ 得這樣設,不然原來的版本解不動) 主要有兩個步驟要做,首先是加 ppa 並且安裝 mplayer-mt: sudo apt-add-repository ppa:longinus00/mplayer-mt sudo apt-get update sudo apt-get upgrade # 已經有 mplayer 的 case sudo apt-get install mplayer # 沒有裝 mplayer … Continue reading

Posted in Computer, Murmuring, Recreation, Software | Tagged , , , , , | 1 Comment

Perl 的 Threading 實做:Coro

去年「Perl - PSGI」這篇文章裡面提到 Perl 的 threading 一直是頭痛的問題之一,唐鳳在留言上推薦用 Coro 而非原來的 thread。 實際測試後發現並非 OS level 的 threading,而是利用抽換的方式將系統內許多 blocking function 換掉,並且支援常用到的 module (像是 libwww-perl 系列),使得現有的程式要 porting 到 Coro 上會簡單很多,寫起來也的確比較像 threading 程式。(雖然實做比較接近 event-based) 附上之前寫來測試的程式,用的是 PIXNET 的 API:

Posted in Computer, Murmuring, Programming, Software | Tagged , , , | 1 Comment