Ruby
問題 プロキシ環境下で、localhostに立てたElasticsearchに gem elasticsearchを用いて、Rubyプログラムから接続を試みると、 プロキシサーバーを通して外に接続しに行こうとする orz... バージョン Ruby 2.1.2p95 Elasticsearch 1.3.2 elasticsearch(gem) 1…
はじめに Matz's Ruby Interpreter(MRI)とRubiniusで排他制御したマルチスレッドプログラムを実行し、結果を比較します。 実行時間計測、CPUコア使用状況を見ていきます。 MRI排他制御なし MRI排他制御あり Rubinius排他制御なし Rubinius排他制御あり の4つ…
はじめに Matz's Ruby Interpreter(MRI)とRubiniusでマルチスレッドプログラムを実行し、結果を比較します。 実行時間計測、CPUコア使用状況を見ていきます。 複数回実行して、平均を取るなど真面目に検証はしていません。 準備 Rubyのバージョン $ ruby -v …
RubyのスレッドにはGiant VM lock (GVL) (Global Interpreter lock) が実装されており、同時に実行される ネイティブスレッドは常にひとつです。なので、スレッドセーフでないプログラムを実行しても、排他制御が効いているように見えます。 例えば次のコー…