Tag Archives: monkey

Perl 上的 Monkey Patch

這整個週末都在跟 Net::DNS 奮戰 edns-client-subnet,遇到模組內的一小段程式有 bug,先用 monkey patch 硬上,之後再看看要怎麼丟 patch 回 upstream。 monkey patch 的方法主要是參考「How can I monkey-patch an instance method in Perl?」這邊提供的方法而來的。 由於實際的行為是 subroutine redefined (會產生警告訊息),所以要局部關掉 warnings,然後再把整個 subroutine 換掉: use BugPackage; { no warnings; local *BugPackage::bug_function = sub { # … Continue reading

Posted in Computer, DNS, Murmuring, Network, Programming | Tagged , , , , , | Leave a comment

Netflix 的 Chaos Monkey

Chaos Monkey 是 Netflix 丟出來的工具,這個工具的目的是希望建立超高可靠度的系統。方法則是沒事就亂關 AWS 上的 instance:「Chaos Monkey released into the wild」。 基本的想法是這樣: 在 AWS 上的系統容錯率要超高。 上班時間爛掉比凌晨三點被 call 起床好。 所以平常就放火測試容錯率到底夠不夠高,方法就是隨機關 instance。 照 Netflix 的說法,他們不僅在開發環境測試,也在正式環境測試。利用 Chaos Monkey 看看 failure 的結果是否如預期。 Netflix 甚至建議可以排成每個上班日都隨機跑一跑: The service has a configurable schedule that, by … Continue reading

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