タグ

ブックマーク / blog.matsumoto-r.jp (14)

  • chmodやchownのreferenceオプションを知った時は目から鱗だった話

    人間とウェブの未来(旧) 「ウェブの歴史は人類の歴史の繰り返し」という観点から色々勉強しています。2014年までの人間とウェブの未来の旧ブログです。 元々ホスティング会社で働いていたので、その特性上ownerやpermissionを色々と弄る事が多く、数年前の社会人時代にchmodやchownをもっと楽に使えないかなぁと調べた時に目から鱗だったのがchmodやchownのreferenceオプションでした。 今回は単にreferenceオプション楽ですよね、という記事なのでご存知の方は退屈な記事だと思いますが、まわりに聞いてみた所意外と知られていなかったりしたので、ブログエントリにしておこうと思います。 referenceオプションを使うと、任意のファイルを指定することで、変更対象のownerやpermissionを指定したファイルと同じ設定にすることができます。 例えば、/bin/pin

    chmodやchownのreferenceオプションを知った時は目から鱗だった話
  • 人間とウェブの未来 - mod_mrubyとngx_mrubyのv1.0.0をリリースしました+振り返りまとめ

    人間とウェブの未来(旧) 「ウェブの歴史は人類の歴史の繰り返し」という観点から色々勉強しています。2014年までの人間とウェブの未来の旧ブログです。 先ほど、mod_mrubyとngx_mrubyのそれぞれv1.0.0をリリースしました。 2012年の4月のmrubyのソースコード公開を機に開発をはじめ、今振り返ると色々な事がありながらも2年間続けて研究・開発を行い、ようやくここまで辿り着く事ができました。 mod_mrubyとngx_mrubyを実装していく中で、Matzさんをはじめmrubyに関わるすごいプログラマの皆さんと出会い、多くの事を教えていただきながらここまでやってくることができました。もし、彼らと出会うことがなければここまで続ける事はできなかっただろうと思います。 mrubyに関わりながら研究・開発し、その成果物をOSSとして公開しながらやってきたことで、恐縮ながらも産学両

    人間とウェブの未来 - mod_mrubyとngx_mrubyのv1.0.0をリリースしました+振り返りまとめ
    heavenshell
    heavenshell 2014/05/21
    素晴らしいなぁ。| 「mattnさんはオヤジギャグを言う事を日々継続されていました」www
  • mrubyでHTTP/2のサーバとクライアントを書く

    人間とウェブの未来(旧) 「ウェブの歴史は人類の歴史の繰り返し」という観点から色々勉強しています。2014年までの人間とウェブの未来の旧ブログです。 以前のエントリ「mrubyでSPDYやHTTP2通信」で、mrubyを使ってHTTP/2通信を行うクライアントを作りましたが、機能が最低限でした。 そこで、今回はmrubyで簡単なHTTP/2のサーバを動かせるようにしてみました。 mruby-http2の導入 mrubyでHTTP/2を動かすには、mrubybuild_config.rbにmruby-http2の行を追加してrakeするだけで簡単に導入できます。 [program lang=’ruby’ escaped=’true’] MRuby::Build.new do ¦conf¦ # ... (snip) ... conf.gem :github => 'matsumoto-r/m

    mrubyでHTTP/2のサーバとクライアントを書く
  • 人間とウェブの未来 - 2013年に取り組んだ研究まとめ

    2013年ももうすぐ終わってしまいますね。今日も非常に寒く、年の終わりを肌で感じております。 とりあえずの区切りということで、2013年に取り組んできた研究を簡単にまとめておこうと思います。 はじめに まずは、今年取り組んだ研究の各内容の最終成果の論文を紹介します。全てPDFで読めるようにしています。 [IPSJ 論文誌]大規模共有型Webバーチャルホスティング基盤のセキュリティと運用技術の改善 [IEICE 論文誌]スレッド単位で権限分離を行うWebサーバのアクセス制御アーキテクチャ mod_mruby: スクリプト言語で高速かつ省メモリに拡張可能なWebサーバの機能拡張支援機構 リクエスト単位でコンピュータリソースを分離可能なWebサーバのリソース制御アーキテクチャ これらの内容に関しては他にも幾つか論文は書いたのですが、最終的な成果としては各内容が上記の論文としてまとまりました。 で

    人間とウェブの未来 - 2013年に取り組んだ研究まとめ
  • 「コンテナ型仮想化の情報交換会@東京」で発表してきた

    人間とウェブの未来(旧) 「ウェブの歴史は人類の歴史の繰り返し」という観点から色々勉強しています。2014年までの人間とウェブの未来の旧ブログです。 ということで、先日「コンテナ型仮想化の情報交換会@東京」に参加して発表もしてきました。元々、主催者の加藤さんは僕が尊敬するエンジニアの1人でもあり、何かお手伝いできると良いなと思っていて、発表のお誘いを受けた時はとてもうれしく思いました。また、今回はTwitter上ではそれなりにお話している人達にも沢山あえるということで、バーチャルな世界から初めて東京に出ていくという意味で恥ずかしくもワクワクするような勉強会でした。発表個々の感想はこれから続くであろう参加者の皆様の参加エントリに期待して、このエントリには勉強会全体の感想を書き綴ろうと思います。 @matsumotory さんの周囲をペパボの面々 がぐるっと取り囲んでいる — ito hiro

    「コンテナ型仮想化の情報交換会@東京」で発表してきた
  • 大規模共有型Webバーチャルホスティング基盤のセキュリティと運用技術の改善について書いた論文公開

    人間とウェブの未来(旧) 「ウェブの歴史は人類の歴史の繰り返し」という観点から色々勉強しています。2014年までの人間とウェブの未来の旧ブログです。 @jj1bdxさんに「このような運用論文を誰でも読める形で」「情報処理学会や信学会の論文誌掲載論文は、論文誌に掲載された後であれば、著者がWeb上で公開するのに制限はない」という情報を頂き、別に公開しない理由もないので、大規模共有型Webバーチャルホスティング基盤のセキュリティと運用技術の改善という内容で書いた論文を公開したいと思います。 僕が会社にいた時、ApacheのVirtualHost環境でレンサバを構築するというのは既にセキュリティ・運用性・パフォーマンスにおいて色々と問題がある事は10年以上前から分かっており、別の方法で共有環境を構築していました。 ある時、VirtualHostで共有環境を真面目に組むとどうなるか、という議論を元

    大規模共有型Webバーチャルホスティング基盤のセキュリティと運用技術の改善について書いた論文公開
  • ApacheのVirtualHostによる高集積Webホスティングでsymlink問題を根本解決する方法について考えた

    人間とウェブの未来(旧) 「ウェブの歴史は人類の歴史の繰り返し」という観点から色々勉強しています。2014年までの人間とウェブの未来の旧ブログです。 最近、各所でApacheのVirtualHostを利用した高集積ホスティングのセキュリティに関するインシデントが起きています。僕自身、自分の専門の一つがWebサーバのセキュリティなので、他人事には思えず、毎日各所の経過情報を眺めています。また、数社からApacheのセキュリティに関してもいくつか質問を受けたりしており、公に話せるような内容はこのブログでも公開していきたいと思います。 ということで、ApacheのVirtualHostによる高集積Webホスティングにおけるsymlink問題を根解決するにはどうしたら良いのかを考えました。まずは、静的コンテンツも動的コンテンツのようにファイルのユーザ権限で処理する方法から紹介します。その後、ホス

    ApacheのVirtualHostによる高集積Webホスティングでsymlink問題を根本解決する方法について考えた
  • P2Pファイル共有ネットワークを利用したフラッシュクラウド耐性のある協調型負荷分散手法

    人間とウェブの未来(旧) 「ウェブの歴史は人類の歴史の繰り返し」という観点から色々勉強しています。2014年までの人間とウェブの未来の旧ブログです。 「P2Pファイル共有ネットワークを利用したフラッシュクラウド耐性のある協調型負荷分散手法」という内容で、COMPSACという国際会議で代理で発表してきました。(去年の国際会議では僕が色々あって、代理で先生に発表してもらったような形ですね) 今回は、著者の方が色々あって発表できないので、共著者の僕が代理で発表してきました。著者や先生と相談した結果、面白い内容なので公開しようということになり、僕のブログが一番手っ取り早いので、ここで紹介します。 研究の概要 研究の概要としては以下になります。 世界のインターネット人口は年々増加を続けており,現在約22億人に達して いる.また新興国の発展に伴い,今後その数はさらに増加することが見込まれ る.このよう

    P2Pファイル共有ネットワークを利用したフラッシュクラウド耐性のある協調型負荷分散手法
    heavenshell
    heavenshell 2013/07/24
    面白い! 協調サーバの負荷状況とかも見て優先ノードの決定とかやってるのかな。
  • mod_mrubyを使ってRaspberry Piを4台でWebサーバクラスタを組んでみた

    人間とウェブの未来(旧) 「ウェブの歴史は人類の歴史の繰り返し」という観点から色々勉強しています。2014年までの人間とウェブの未来の旧ブログです。 そろそろRaspberry Piセットの日経BPムックが皆さんの所に届いていることでしょう。 僕も何台かRaspberry Piは持っていて、以前mod_mrubyをRaspberry Piで動かしてLチカしたりしていたのですが、今回はmod_mrubyとRaspberry Piを4台使ってでクラスターを組んで見ました。 まずはラック作りから まずは、Raspberry Piのラックを作りました。Raspberry Piのラックやケースをググると色々と出てくるのですが、なんとなく今回はそこら辺にあるものを使ってラックを作ってみました。Raspberry Piラックは以下の様になります。 上から見ると、以下のような感じです。適当にニトリのキッチ

    mod_mrubyを使ってRaspberry Piを4台でWebサーバクラスタを組んでみた
  • Apache 2.4系でのモダンなアクセス制御の書き方

    人間とウェブの未来(旧) 「ウェブの歴史は人類の歴史の繰り返し」という観点から色々勉強しています。2014年までの人間とウェブの未来の旧ブログです。 これまでのApache2.2系以前でのアクセス制御の書き方は賛否両論でした。僕はあまり好きじゃありませんでした。 過去のアクセス制御に関しては、以下の記事がとてもわかりやすくまとめられていると思います。 こせきの技術日記 – Apacheのアクセス制御をちゃんと理解する。 ここで、以下のように言及されています。 こんなバッドノウハウ、当はどうでもいいと思う。Apache 3.0では、かっこいいDSL(VCL)で書けるようにする構想があるらしいのでがんばってほしい。 ということで、2.4系ではDSLとはいかないまでも、Require*というディレクティブを使ったモダンな書き方ができるようになったので、それを2.2系以前のアクセス制御の記述と比

    Apache 2.4系でのモダンなアクセス制御の書き方
  • 互いにNAT配下のマシンでも簡単にP2P通信でファイル同期できるツールsyncigaを作ってみた

    人間とウェブの未来(旧) 「ウェブの歴史は人類の歴史の繰り返し」という観点から色々勉強しています。2014年までの人間とウェブの未来の旧ブログです。 P2PやNAT Traversal、その周辺要素や、実はそれらに多く絡んでいるXMPPの勉強がてら、色々読んでいてもいまいちイメージがつかめないということで、とりあえずXMPPの拡張仕様であるjingleの仕組みを使って、互いにNAT配下のサーバでも簡単にP2Pでファイル同期できるツールを作ってみました。現状はFedoraやCentOSの64bitLinuxでのみ動作確認しています。 synciga(しんきーが)という名前で呼ぶことにします。 syncigaにできる事 syncigaによってできることは、サーバマシンやクライアントがNAT配下に位置していても、そのマシン上でsyncigaを立ち上げておけば、別の場所にいるNAT配下のマシンか

    互いにNAT配下のマシンでも簡単にP2P通信でファイル同期できるツールsyncigaを作ってみた
  • ApacheとNginxの性能比較でevent_mpmの本気を見た

    はい、これは僕がいつも良く見るApacheとNginxの性能差に見えます。大体、ApacheはNginxの75%程度の性能に落ち着きます。数十バイトの静的コンテンツに対するリクエスト処理はNginxの得意分野だと思っていたので、大体こんなものです。 そこで、真面目にevent_mpmのチューニングを行ってみました。で、幾度となくベンチを試した結果導き出した、静的コンテンツに対する同時接続数100程度に対して最高のパフォーマンスを示すevent_mpmの設定は以下のようになりました。 [program lang=’apache’ escaped=’true’] StartServers 4 MinSpareThreads 4 MaxSpareThreads 4 ThreadsPerChild 2 MaxRequestWorkers 2 MaxConnectionsPerChild 0 [/p

    ApacheとNginxの性能比較でevent_mpmの本気を見た
  • Apacheがトラフィックを監視して勝手にtweetしてみた(mod_mruby + iij/mruby)

    人間とウェブの未来(旧) 「ウェブの歴史は人類の歴史の繰り返し」という観点から色々勉強しています。2014年までの人間とウェブの未来の旧ブログです。 少し前に、IIJさんによってmrubyの拡張ライブラリが公開されました。個人的にも待ちに待った公開だったので、これを使ってmod_mrubyで試しに何かしてみようと思い、エントリ名みたいな事をやってみました。 やったこととしては、 mod_mrubyiij/mrubyの拡張ライブラリ版に対応 mod_mrubyでトラフィックを監視して閾値を超えたらtweetする機能を実装 です。 mod_mrubyiij/mrubyの拡張ライブラリ版に対応 以下のように、Githubからmod_mrubyをダウンロードしてmakeすれば、iij/mruby拡張ライブラリ版のmod_mrubyがビルドされます。 make extend インストールは今まで

    Apacheがトラフィックを監視して勝手にtweetしてみた(mod_mruby + iij/mruby)
  • Apache 2.4.1のスループット評価(旧ApacheとNginxとのベンチマーク比較)

    人間とウェブの未来(旧) 「ウェブの歴史は人類の歴史の繰り返し」という観点から色々勉強しています。2014年までの人間とウェブの未来の旧ブログです。 久々のApache HTTP Server 2.4.1という安定版がリリースされたので、早速ベンチマーク評価を行う。今回はevent_mpmのExperimentがとれて、晴れてデフォルトMPMになったのでそれを使ってみたい。 日一(ひょっとすると世界一)早いApache 2.4.1 event_mpmのレビューを意識してみた。 はじめに 個人的にも、event_mpmが採用されたことに最も注目している。event_mpmは非同期型のIO処理をしていて、nginxに近いアーキテクチャをとっている。厳密には、nginxの非同期と比べた場合、nginxは徹底的にノンブロッキング(accept4を使う等)してworkerスレッドで次々と並列処理し

    Apache 2.4.1のスループット評価(旧ApacheとNginxとのベンチマーク比較)
  • 1