最近、Node.jsに興味があります。Node.jsを調べていると、I/O関係で、非同期I/O、ノンブロッキング、コールバック等、いろいろとキーワードがでてきて混乱してきます。 そこで、ブログに書いて整理しよう思います。間違いがあれば是非、指摘してください。 言葉の定義 ◇非同期呼び出し(Asynchronous Call)と同期呼び出し(Synchronous Call)の違い 同期呼び出し(Synchronous Call) 通常メソッドを呼び出すとメソッド内の処理が完了するまで、呼び出し元には戻ってこない。このようなメソッド呼び出しのこと。 非同期呼び出し(Asynchronous Call) メソッドを呼び出した瞬間に呼び出し元に処理が戻ってくるような呼び出しのこと。非同期で呼び出されたメソッドは、環境によって処理されるタイミングが変わる。 ◇マルチスレッド(multithread
2010-04-03 eventmachine Phat is my new Rails 2.3.5 application which runs 100% asynchronous, supporting many concurrent requests in a single Ruby process. This is a new breed of Rails application which uses a new mode of execution available in Ruby 1.9: single Thread, multiple Fiber. Existing modes of execution suck: Single thread harkens back to the days of Rails 1.x, where you started N mongrels
11. Crampdefmain res = {} joint = AsyncJobsJoint.newjoint.callback = Proc.new{ self.respond(res) } ticket4memcache = joint.take_ticket@@cache ||= EM::P::Memcache.connect'localhost', 11211@@cache.get(someKey.to_sym){|item| res[:memcache_response] = item if itemjoint.return_ticket ticket4memcache } ticket4gearman = joint.take_ticketgearman = EM::P::Gearman.connect‘localhost', 7003 task = gearman.cre
This site is experiencing technical difficulty. We are aware of the issue and are working as quick as possible to correct the issue. We apologize for any inconvenience this may have caused. To speak with an Oracle sales representative: 1.800.ORACLE1. To contact Oracle Corporate Headquarters from anywhere in the world: 1.650.506.7000. To get technical support in the United States: 1.800.633.0738.
はてなグループの終了日を2020年1月31日(金)に決定しました 以下のエントリの通り、今年末を目処にはてなグループを終了予定である旨をお知らせしておりました。 2019年末を目処に、はてなグループの提供を終了する予定です - はてなグループ日記 このたび、正式に終了日を決定いたしましたので、以下の通りご確認ください。 終了日: 2020年1月31日(金) エクスポート希望申請期限:2020年1月31日(金) 終了日以降は、はてなグループの閲覧および投稿は行えません。日記のエクスポートが必要な方は以下の記事にしたがって手続きをしてください。 はてなグループに投稿された日記データのエクスポートについて - はてなグループ日記 ご利用のみなさまにはご迷惑をおかけいたしますが、どうぞよろしくお願いいたします。 2020-06-25 追記 はてなグループ日記のエクスポートデータは2020年2月28
2010-01-27 eventmachine Ruby I gave a talk at Austin On Rails last night on using EventMachine, focused on maximizing concurrency when processing a message queue. There were a lot of questions, mostly revolving around the flow of execution within EventMachine code. To this point, there were two common stumbling points people seemed to have: Ruby developers are not used to treating blocks as true c
はてなグループの終了日を2020年1月31日(金)に決定しました 以下のエントリの通り、今年末を目処にはてなグループを終了予定である旨をお知らせしておりました。 2019年末を目処に、はてなグループの提供を終了する予定です - はてなグループ日記 このたび、正式に終了日を決定いたしましたので、以下の通りご確認ください。 終了日: 2020年1月31日(金) エクスポート希望申請期限:2020年1月31日(金) 終了日以降は、はてなグループの閲覧および投稿は行えません。日記のエクスポートが必要な方は以下の記事にしたがって手続きをしてください。 はてなグループに投稿された日記データのエクスポートについて - はてなグループ日記 ご利用のみなさまにはご迷惑をおかけいたしますが、どうぞよろしくお願いいたします。 2020-06-25 追記 はてなグループ日記のエクスポートデータは2020年2月28
はてなグループの終了日を2020年1月31日(金)に決定しました 以下のエントリの通り、今年末を目処にはてなグループを終了予定である旨をお知らせしておりました。 2019年末を目処に、はてなグループの提供を終了する予定です - はてなグループ日記 このたび、正式に終了日を決定いたしましたので、以下の通りご確認ください。 終了日: 2020年1月31日(金) エクスポート希望申請期限:2020年1月31日(金) 終了日以降は、はてなグループの閲覧および投稿は行えません。日記のエクスポートが必要な方は以下の記事にしたがって手続きをしてください。 はてなグループに投稿された日記データのエクスポートについて - はてなグループ日記 ご利用のみなさまにはご迷惑をおかけいたしますが、どうぞよろしくお願いいたします。 2020-06-25 追記 はてなグループ日記のエクスポートデータは2020年2月28
mala さんのまとめは、わかりやすいなぁと思いました。ただ、傍論なんですが、 既存のマルチスレッド/マルチプロセスのサーバーで、常にリクエスト処理待ちの待機しているプロセスがある状態の場合は(+その並列数でCPUのパフォーマンスが劣化しない場合は)、パフォーマンスが劣化することは無いので非同期処理を使う必要が無いでしょう。実際のところ「1秒あたりに来るリクエストの最大件数」というのは予測できないので、(long-pollやstreamingをしない)普通のアプリケーションにおいても非同期処理の導入はメリットになる(と、考えている)。 非同期アプリケーションサーバーの要件と必要性について - 金利0無利息キャッシング – キャッシングできます - subtech はちょっと気になった。私見では、非同期処理 (スレッド内での I/O 多重化) を行うべきか否か、は、クライアントとの TCP
PerlからPostgreSQLに非同期アクセスする方法 - iakioの日記 - postgresqlグループ を見てほぉぉと思って、IRC で話したりしながら適当に書いてみた。たぶんこんな感じ。動かしてないけど。 use DBD::Pg qw(:async); # send queries for my $dbh (@dbh_list) { $dbh->execute(...); } # and wait until all responses arrive my %pending = map { +($_->{pg_socket}, [ IO::Handle->new_from_fd($_->{pg_socket}), $_ ]) } @dbh_list; my $sel = IO::Select->new(); $sel->add($_->[0], 'r') for values
はてなグループの終了日を2020年1月31日(金)に決定しました 以下のエントリの通り、今年末を目処にはてなグループを終了予定である旨をお知らせしておりました。 2019年末を目処に、はてなグループの提供を終了する予定です - はてなグループ日記 このたび、正式に終了日を決定いたしましたので、以下の通りご確認ください。 終了日: 2020年1月31日(金) エクスポート希望申請期限:2020年1月31日(金) 終了日以降は、はてなグループの閲覧および投稿は行えません。日記のエクスポートが必要な方は以下の記事にしたがって手続きをしてください。 はてなグループに投稿された日記データのエクスポートについて - はてなグループ日記 ご利用のみなさまにはご迷惑をおかけいたしますが、どうぞよろしくお願いいたします。 2020-06-25 追記 はてなグループ日記のエクスポートデータは2020年2月28
otsuneさんのtumblr経由で、「MochiKit.Async.Deferredで非同期処理の同期処理を直感的に書く」を見たら、この辺この間のtwitterで書いたスレッドで実現するとどうなるか書いてみたくなったので書いてみる。このエントリと同じく、Flickrの写真をFFFFOUND!とtumblrにポストするスレッドを考えてみます。 まず、予めFlickrのpermalinkとmetadataを取得する「flickr.GetPermalinkThread」と「flickr.GetMetadataThread」、FFFFOUND!とtumblrにポストする「ffffound.PostFFFFOUNDThread」と「tumblr.PostTumblrThread」を作っておきます。これらのスレッドは、中でURLLoaderとか使ってリクエストを投げて、終わったらterminate
NAME POE::Component::MDBA::Backend::DBIC - DBIx::Class Backend SYNOPSIS use POE qw(Component::MDBA); POE::Component::MDBA->spawn( alias => $alias, backend => 'DBIC', backend_args => [ { schema => $schema1 }, { schema => $schema2 } ] ); # else where in your code... POE::Kernel->post($alias, 'execute', { args => [ ... list method arguments ... ] }); DESCRIPTION This module allows you simple access t
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く