Tag Archives: mutex

關閉 MySQL 的 Query Cache

MySQL 的 Query Cache 是目前已知效能不好的主要因素之一 (global mutex lock 的緣故),在正式環境裡的 best practice 一般都是關閉,之前測過也是一開下去效能就會狂掉... 而 Percona 的人在討論要怎麼樣才能完全關閉 MySQL 的 Query Cache:「Is Your Query Cache Really Disabled?」,而他們發現只有在 query_cache_type 與 query_cache_size 都設為 0,而且重開 MySQL 才能完全避免 global mutex lock: [W]e can see it is not … Continue reading

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

Auto Scaling 的 Instance Protection,有點像是 mutex...

前幾天 AWS 放出來的新功能,可以針對 Auto Scaling 裡的機器設定保護 (避免關機):「New – Instance Protection for Auto Scaling」。 看提供的 pseudocode 可以了解想法,ProcessWorkUnit(Work) 是個需要跑比較長時間的 process,中斷掉的話會浪費掉 resource: while (true) { SetInstanceProtection(False); Work = GetNextWorkUnit(); SetInstanceProtection(True); ProcessWorkUnit(Work); SetInstanceProtection(False); } 也就是這些機器還是會被 Auto Scaling 計算在內,但關機不會動這些機器。這段範例有種以前上課學 mutex 中 critical section 的感覺...

Posted in AWS, Cloud, Computer, Murmuring, Network | Tagged , , , , , , | Leave a comment

Percona 對 mysql_query_cache 的測試 (以 Magento 為例)

Percona 的人以現在的觀點來看 mysql_query_cache:「The MySQL query cache: Worst enemy or best friend?」。 起因主要也是懷疑 query cache 是 global mutex 在現在的硬體架構 (主要是 CPU 數量成長) 應該是個負面的影響,但不確定影響多少: The query cache is well known for its contentions: a global mutex has to be acquired for any … Continue reading

Posted in Computer, Database, Hardware, Murmuring, MySQL, Software | Tagged , , , , , , , , , , , , , , | 2 Comments