人間とウェブの未来

「ウェブの歴史は人類の歴史の繰り返し」という観点から色々勉強しています。

trusterd の検索結果:

mrubyでHTTP/2の画像変換サーバを作った

…た。ベースはもちろんtrusterdです。なんていったってmrubyのHTTP/2サーバですからね!! 最近また開発を再開しておりまして、昔はh2oやnghttp2のベンチマークに一緒に比較対象として入れてもらったりしていたのですが、しばらく離れているうちに皆さん先へ先へと行ってしまわれたので、また追いつけるようにセッセと勉強しながら実装しだしております。 github.com その他、trusterdについてはこの辺とか、 qiita.com この辺を見ていただくと良いかと…

h2o_mruby v0.0.1をリリースしてみた

…たWebサーバであるTrusterdを書き始めた頃にも似た感覚を得たので、やっぱり設計って重要ですね。 workerスレッドの初期化時のフック等もちゃんと用意されていたので、mrubyインタプリタをスレッド単位で起こせるため、mrubyのマルチスレッド問題もmruby per threadにより問題なく実装できました。 ということで、もう少し弄った後に、ちゃんと独立したモジュールとしての実装の仕方(H2Oを再ビルドしなくて良いような)が分かれば、随時以下のh2o_mrubyリ…

Dockerエキスパート養成読本の献本を頂きました

…サンプルでは、僕が開発しているHTTP/2サーバであるTrusterdをサンプルに紹介して頂いています。 @takipone さんありがとうございます!また、HTTP/2クライアントをDockerで手軽に使う方法も書かれているので、そういう点でも色々と便利な情報が沢山ありました。 さらには、Trusterdって普通に書くと校正機能とかで勝手にTrustedに書き換えれたりして困っちゃうのですが、それももれなくTrusterdと書かれていたので校正力の高さにも感服でございます!

ngx_mrubyを使った簡単な画像変換サーバを数分で実装してみた

…mruby、さらにはtrusterdの良さですねぇ。 ngx_mruby + mruby-mrmagickを使う mruby-mrmagickを使ったのは、パッと見た感じREADMEが書かれていて手っ取り早く試せそうだったからです。今ではmruby-gdなどもあって、今後色々と増えていくでしょう。 以下設定の手順です。 1. build_config.rbに以下のリンク設定を追記 conf.gem :github => 'kjunichi/mruby-mrmagick' この…

Trusterd HTTP/2 Webサーバにリバースプロキシ機能を実装しました

タイトルの通り、trusterdにリバースプロキシ機能を実装しました。 trusterd/trusterd trusterd/trusterd · GitHub これで、フロントをHTTP/2で受けつつ、バックエンドに既存のHTTP/1.xサーバを置いてリバースプロキシすることで、HTTP/1.xのコンテンツを活用することができます。 また、設定はRubyで書けるので、ちょっと工夫すると、 とあるホスト名へのアクセスはバックエンドのApache+phpにリバースプロキシ ただ…

Trusterd HTTP/2 Webサーバのmrubyによる設定と機能拡張について

trusterd HTTP/2 Web Serverは、設定や機能の拡張をRuby(mruby)で容易に実装できるという特徴を持つミドルウェアです。 また、別のアプリケーションにtrusterdのサーバ機能やクライアント機能を組み込めるという特徴も持っていますが、これについては以前記事で紹介しました。 C言語のアプリにmruby経由でtrusterdのHTTP/2サーバ機能を5分で組み込む方法 - 人間とウェブの未来 C言語のアプリにmruby経由でtrusterdのHTTP…

trusterdのHTTP/2クライアント機能をCアプリに組み込んでみよう

前回の記事では、trusterdのHTTP/2サーバ機能をCアプリに組み込む方法を紹介しました。 C言語のアプリにmruby経由でtrusterdのHTTP/2サーバ機能を5分で組み込む方法 - 人間とウェブの未来 C言語のアプリにmruby経由でtrusterdのHTTP/2サーバ機能を5分で組み込む方法 - 人間とウェブの未来 本記事では、HTTP/2クライアント機能を組み込んでみましょう。 mrubyとmruby-http2のビルド及びMakefile作成 これらは、前…

C言語のアプリにmruby経由でtrusterdのHTTP/2サーバ機能を5分で組み込む方法

…日は僕が開発しているTrusterd HTTP/2 Webサーバの一つの特徴である、「HTTP/2機能のアプリ組込み」の方法を紹介したいと思います。 Cをちょっと書けるレベルの人でも5分でCアプリにHTTP/2機能を組み込んで、自分のHTTP/2サーバを実装できます。 mrubyをGitHubからcloneしてビルド まずはmrubyをGitHubからダウンロードしましょう。 git clone https://github.com/mruby/mruby.git cd mr…

ngx_mruby経由でtrusterdをnginxに組み込んでnginxの情報をHTTP/2で裏から取得してみた

trusterdはHTTP/2クライアントとサーバ両方の機能を持っており、それらの機能は全てモジュールとして取り外し可能な設計にしています。 そのため、HTTP/2クライアント・サーバ機能をmrubyモジュールとして取り外して、他のアプリケーションにmruby経由で組み込めば、簡単にtrusterdのHTTP/2機能を利用することができます。 今回は、遊びとちょっとの真面目さで、ngx_mruby経由でnginxにtrusterdのHTTP/2サーバ機能を組込み、nginx起…

Trusterd HTTP/2 Webサーバで複数のサーバを簡単に立ち上げる方法

Trusterdの設定はRubyでプログラマブルに定義することができます。 それを利用することにより、一つの設定ファイルで、例えば複数のサーバを様々なパラメータで起動させることも当然できます。 今回は、HTTP/2サーバのTLS有りと無しのサーバをそれぞれ一気に起動させてみましょう。 設定は以下のように書きます。 SERVER_NAME = "Trusterd" SERVER_VERSION = "0.0.1" SERVER_DESCRIPTION = "#{SERVER_N…

Trusterd HTTP/2 WebサーバのTLS接続時の性能を改善

…ghttpdと比べてtrusterdのTLS利用時の性能が遅かったため改善しました。 server 6 bytes 4K bytes h2o 227865 78333 nghttpd 226716 80673 trusterd 62362 44020 ref: https://gist.github.com/tatsuhiro-t/5f3b170414582ac58091#tls-with-flow-control 主に原因としては以下が考えられます。 TLS record …

2015年の抱負 - 福岡で過去最高のエンジニア生活がはじまる

…改善していくことや、Trusterd HTTP/2 Webサーバを開発していくことで、自分の技術的チャレンジと運用を考慮したWebサーバがどういものになり得るかを考えながら、自分の運用エンジニアとしての開発力の底上げをしていきたいと思っています。 また、2014年は日本OSS奨励賞を頂いたり、山下記念研究賞やRubyPrize2014の最終ノミネートにも選ばれた事を誇りに、これらの賞に恥じないように日々技術を学んでいきたいと思います。 人間とウェブの未来 - フクオカRuby…

mod_mrubyとngx_mrubyの次の一手となる新しいソフトウェア

…して生まれたのが、 Trusterd HTTP/2 Web Server です。 一からHTTP/2 Webサーバを実装するにあたって、コアの設計段階からRubyで全ての設定がかけること、及び、それによって性能を劣化させないようにする事を重視しながら設計・実装しました。 また、mod_mrubyやngx_mrubyを実装することで、Apacheやnginxの内部実装やデータ構造をある程度知っていたので、それらを取り込みつつ、自分のApacheモジュールやnginxモジュールの…