タグ

mrubyに関するdelegateのブックマーク (9)

  • HTTP/2へのmruby活用やこれからのTLS設定と大量証明書設定の効率化について - 人間とウェブの未来

    Webサービス事業者として僕が先行して調査したり研究・開発している技術の中で、Webサーバ設定におけるHTTP/2とそのmruby活用についてや、PFS(Perfect Foward Secrecy)を考慮したTLS設定と大量証明書設定の効率化について、社内のインフラエンジニア向けに技術共有を行いました。 内容としては、まずはざっくりと知ってもらう事を目的に、細かい要素技術について深く立ち入り過ぎない程度に、今後弊社でのWebサービスのインフラ技術周りのアーキテクチャを考える上で必要になりそうな事を中心にお話しましたので、少し汎用性に欠けるかもしれません。 特に技術的に見せられないような話ではないので、参考程度に公開しておきます。どこかで喋って欲しいみたいな依頼は随時受け付けておりますので、お気軽にお問い合わせ下さい。 以下の二立てです。 HTTP/2とmrubyの活用 HTTP/2時代

    HTTP/2へのmruby活用やこれからのTLS設定と大量証明書設定の効率化について - 人間とウェブの未来
  • ngx_mrubyがnginxのTCPロードバランシング機能に対応しました - 人間とウェブの未来

    nginxのv1.9あたりからOSS版でも使えるTCPロードバランシング機能をmrubyでプログラマブルに制御できるようにngx_mrubyでもサポートしました。 github.com これで、HTTPやHTTP/2だけでなくTCPのロードバランシングでもmrubyによって通信をプログラマブルに制御できるようになったわけです。 nginxのTCPロードバランシング機能は、nginx内部ではstreamモジュールとして、httpモジュールとは別で実装しているため、ngx_mrubyでも一から実装し直す必要がありました。 ということで少し面倒だなぁと思っていたのですが、ちょうど、僕の最近やりたい事としてTCPのロードバランサをもう少しプログラマブルに書きたいというのがあって、色々とTCPロードバランサを探したり、既存のソフトウェアで設定を試行錯誤するよりも、自分でnginxのTCPロードバラン

    ngx_mrubyがnginxのTCPロードバランシング機能に対応しました - 人間とウェブの未来
  • ngx_mrubyのTCPロードバランシングを使ってFluentdのTCP通信とグラフ画像へのHTTP通信を動的に集約する - 人間とウェブの未来

    昨日、ngx_mrubyのTCPロードバランシング機能に対応した記事を書きました。 hb.matsumoto-r.jp というのも、実は以下に説明するようなFluetnd+Norika+GrowthForecastを利用したスケールアウト型のシステムを簡単に作りたかったからです。 ということで、まずはプロトタイプ設計みたいなものをフワっと考えてみました。 実現したい事 まずやりたいこととして、 1000台以上のサーバ群からのFluentdによるTCPデータをそれぞれの転送元サーバに紐づく任意のバックエンドサーバに振り分けたい 転送元サーバ群はそれほど増減しない バックエンドサーバをスケールアウト型に増やす場合に、転送元サーバの設定は変更したくない 転送されたログは転送先サーバ内でグラフ化されるので、任意のHTTPクライアントによって取得したい転送元サーバのグラフ画像を適切なバックエンド(F

    ngx_mrubyのTCPロードバランシングを使ってFluentdのTCP通信とグラフ画像へのHTTP通信を動的に集約する - 人間とウェブの未来
  • 200万 Webサイトを支える ロリポップ!と mruby

    200万以上のWebサイトを支えるインフラで、リソース制御として使われている mod_mruby の採用事例を紹介します。

    200万 Webサイトを支える ロリポップ!と mruby
  • mruby組み込み活用テクニック(1) ―― mrubyのビルド・ツールRakeを知る

    組み込み分野向けのRuby処理系(実装)であるmrubyeMbeddable Ruby)は,オープン・ソースなので,自前でビルドする必要がある.当初のmrubyはビルドにGNU makeを用いていたが,2012年の秋ごろからはRakeというビルド・ツールを用いるようになり,組み込みソフトウェア開発に必要なクロス・コンパイル環境も充実してきた.連載では,機器に組み込むことを目的とした際に必要となる,mruby のビルド環境について解説する.(筆者) ●mrubyのビルド・ツールの変遷  mrubyは,2012年4月20日に公開された若いソフトウェアです.しかし,オープン・ソース開発の気流に乗り,めまぐるしく進化しました.ビルドするためのツールも,当初はGNU makeでしたし,一時期はCMakeの採用が検討されたこともありました.そして,2012年の秋ごろからはRakeが採用され,現在に

  • mrubyのVMざっくり解説 - mirichiの日記

    なんとなく、mrubyのVMの基的なところを書いておこうと思ったので。誰かの参考になれば。 大きな仕様的なところは、 ・32bit固定長のバイトコードを解釈して動作する。 ・レジスタをスタックに確保するタイプのレジスタマシンである。従って、スタックの任意の位置をレジスタ番号で指定して直接読み書き可能。 ・メソッドやブロックなどの単位でバイトコードがirep構造体にまとめられている。 みたいな感じ。 スタックの使い方 スタックトップがレジスタのR0となり、以下、R1、R2・・・と名前が付けられる。スタックの型はmrb_valueの配列であり、つまりmrubyオブジェクトが詰まっている。irepのコードを呼び出すとき、スタックの上から順に以下のような情報を積んでから呼ばれる。 (引数が2個あった場合の例) R0 |self | R1 |argument1| R2 |argument2| R3

    mrubyのVMざっくり解説 - mirichiの日記
  • mrubyを読む準備 - けいぞうのメモ帳

    mrubyコードリーディングが楽しいので準備から考えたこと、調べたことを纏めていきたいと思います。 まず、準備とmrubyの周囲についてを纏めてみました。 きっかけ 大学が春休みになった("14/3/1時点~)。あと、OSSだった。 プログラミングできないのがつらいから出来る人のコードを読みたかった。 こういう記事を書いたら後戻りできなくなるかなと思った。(続けるために) 呟く mruby コードリーディングな記事。ないな。ないか。— keizo (@keizo_bookman) March 6, 2014 するとね @keizo_bookman こんなのどうでしょう? http://t.co/XgaoOKZUU0— Yukihiro Matsumoto (@yukihiro_matz) March 6, 2014 @keizo_bookman このような記事もありますね。残念ながら止まっ

    mrubyを読む準備 - けいぞうのメモ帳
  • mruby 安定版 v1.0.0について軽量Rubyフォーラムの中の人に聴いてきた

    Ruby東京プレゼンテーション2014に登壇していたら、同じく登壇していたMatzがいきなり「mruby 安定版 v1.0.0をさっきリリースした」とさらっと言ってました。聞いてないwww なにがなんだかさっぱり分からないので、会場に居た軽量Rubyフォーラムの中の人に話を聞いてきました。 引っ越し準備でゆっくり書いているヒマがないので、箇条書きで失礼します。 v1.0.0とはなにか? 2014/01/10版をただフォークしたもの。開発版から変更点なし。 なにをもって安定版としているのか make testが通ってるモノが安定版。 個別のmrbgemsをインストールして、make testをテストを実行。 テストはどうやってやっているの? make testと、コンパイル条件変更して、Windows, Linux, OSXでテストを実行。 誰がリリースしているの? 軽量Rubyフォーラムが

    mruby 安定版 v1.0.0について軽量Rubyフォーラムの中の人に聴いてきた
  • mrubyのGC解説まとめ - GC Advent Calendar - I am Cruby!

    Garbage Collection Advent Calendarの25日目の記事です。 ついに、か、完走したぞ!!うぉぉー。はあ、つかれた。もう来年はいいです。 ということで今日の分のスライドもあわせて、まとめてこの記事にはりつけておきます。 (あーあ、はてなダイアリーにslideboom埋め込めないのか…) mrubyのTri-color incremental mark & sweep GC 解説 その1 mrubyのTri-color incremental mark & sweep GC その2 mrubyのTri-color incremental mark & sweep GC その3 しかし、スライドのアニメーションとGCの解説って相性いいですねえ。 Impressでpptを吐いているのですが、それなりにslideboom上でも動いてびっくりしています。ツイートする

  • 1