昨日、「リクエスト単位でコンピュータリソースを分離可能なWebサーバのリソース制御アーキテクチャ」という新しい研究内容を情報処理学会のインターネットと運用技術(IOT)研究会で発表してきました。
(4)リクエスト単位で仮想的にコンピュータリソースを分離するWebサーバのリソース制御アーキテクチャ◎松本亮介,岡部寿男(京都大学) #ipsjiot pic.twitter.com/NhfLL1mgtZ
— Naoto MATSUMOTO (@naoto_matsumoto) September 27, 2013
この研究会は、研究者だけでなくエンジニアの皆さんにとっても面白い内容が沢山聞くことのできる研究会なので、学術系問わず参加されることをおすすめします。
今回の研究内容としては、Webサーバソフトウェアでできるこれまでのリソース制御手法が閾値処理をベースとしていたり、設定記述の自由度が低くて最近のWebサービスの大規模・複雑化に追いついていない事を考慮して新しいリソース制御アーキテクチャを考えました。
特徴としては、
- 管理者がDSL(mruby)で柔軟にリソース制御ルールを記述できる
- ルールを元にリクエスト単位でリソースを分離して、分離範囲内で継続的に処理を行える
になります。WebサーバのセッションQoSといったところでしょうか。
#ipsjiot うーんと、従来はWEBサーバの使うリソースの総量規制しかできなかったし、超えたら強制切断とかサービスが止まる。個々のリクエストごとにリソース制御できるようにしまて、高負荷状況でもサービスを停めずに捌き続けることができる。って研究らしい。
— 齊藤明紀 (@a_saitoh) September 27, 2013
#ipsjiot Q:これにDDOSが着たらどうなる?Q:リソース制御が効く前にアップアップになってしまうとおもう。Q:ユーザに対してリソースを切り替えられる?A: ユーザがわかればそれに対して製油魚できるDSLになっている。Q:公開予定は?A OSS化の予定
— 齊藤明紀 (@a_saitoh) September 27, 2013
萌えたぜ!京大の実装!
— Naoto MATSUMOTO (@naoto_matsumoto) September 27, 2013
また、実装のベースはlibcgroupとmod_mrubyを使っています。この点の詳細に関しては、来週10月5日のコンテナ勉強会でもこの内容で発表するので、そこでエンジニア向けに実装やサンプルを追加で紹介したいと考えています。興味のある方は是非いらして下さい。
今日は、研究会で発表した予稿とスライドを公開したいと思います。
- 予稿.pdf
- スライド