You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert
Asynchronous I/O in Windows for Unix Programmers Ryan Dahl 2011-04-26 This document was an attempt at understanding how best to port Node.js to Windows. The result of the port was the library libuv, which (among other things) provides a unified interface for asynchronous networking on the three big operating systems: Linux, OSX, and Windows. This document assumes you are familiar with how non-bloc
輪読資料: Staring into the abyss an evaluation of concurrency control with one t...Sho Nakazono
Repeated dispatch with AnyEvent 例えば、AnyEvent::DBIで Q4Mを使って、*常に*なんらかのイベントをqueue_wait()する状態にしたいとする。するとexec()が終わったらまた同じexec()を呼ぶ事になるので、例えばこんなコードを書くかもしれない。 use strict; use AnyEvent::DBI; my $sql = "SELECT .... FROM queue_table WHERE queue_wait('queue_table', 10)"; my $dispatch; $dispatch = sub { $dbh->exec( $sql, sub { # 返ってきた値でなんかする $dispatch->(); }); }; $dispatch->(); # まぁ他の事してるプログラムで使うだろうから、本来はいらな
さて、前エントリでJSocketというのを作ったと書いたのですが、これは実はjavascriptで動くtwitter streamクライアントを作るならばmultipart/mixedを使うべきというのを読んで、レスポンスがpollではなくてストリーミングできるというのを知って、リクエストもやりたいよというふうに思ったのがきっかけでした。 まず、XHRでできないかを試してみたのですが、xhr.send(data)を一回読んでしまうと少なくともjavascript側ではリクエストは完了したと思ってしまって、再度xhr.send(data)しても反応はありませんでした。 そこでJSocketの登場です。JSocketを使うとhttpリクエストを断続的に送信することができます。やったですね。 で、Plack::Server::Coroを使って試しにリアルタイムチャットを作ってみました。どうぞお試
はてなグループの終了日を2020年1月31日(金)に決定しました 以下のエントリの通り、今年末を目処にはてなグループを終了予定である旨をお知らせしておりました。 2019年末を目処に、はてなグループの提供を終了する予定です - はてなグループ日記 このたび、正式に終了日を決定いたしましたので、以下の通りご確認ください。 終了日: 2020年1月31日(金) エクスポート希望申請期限:2020年1月31日(金) 終了日以降は、はてなグループの閲覧および投稿は行えません。日記のエクスポートが必要な方は以下の記事にしたがって手続きをしてください。 はてなグループに投稿された日記データのエクスポートについて - はてなグループ日記 ご利用のみなさまにはご迷惑をおかけいたしますが、どうぞよろしくお願いいたします。 2020-06-25 追記 はてなグループ日記のエクスポートデータは2020年2月28
Today, we are open sourcing the non-blocking web server and the tools that power FriendFeed under the name Tornado Web Server. We are really excited to open source this project as a part of Facebook's open source initiative, and we hope it will be useful to others building real-time web services. Check out the announcement on the Facebook Developer Blog. You can download Tornado at tornadoweb.org.
http://subtech.g.hatena.ne.jp/mala/20090616/1245148239 イベントフレンドリーにするために、プロトコル丸ごとその言語で実装するのは馬鹿げてると思う。 プロトコルのパースとか、言語に依存しない処理は共有ライブラリにやらせるほうが良い(速いし)。 ブロックが発生する処理の扱い柔軟に選択できるのが良いライブラリ(及びそのバインディング)ではないかと思う。 というのは全面的に同意です。そして、これらすべての条件に合致しているのが libdrizzle です。 Coro::Mysqlの実装を見る限りlibmysqlclientのsocketが、たまたま比較的容易に差し替えられるようになっているので、ああいう実装が出来るだけで、行儀が良いハックではない(予期しない弊害が起こりうる)と認識してます。 中身を詳細にはみてないけど、Coro::Mysql
Strict Standards: Declaration of Walker_Page::start_lvl() should be compatible with Walker::start_lvl(&$output) in /home/sites/heteml/users/m/e/t/metaphor/web/masuda/blog/wp-includes/classes.php on line 576 Strict Standards: Declaration of Walker_Page::end_lvl() should be compatible with Walker::end_lvl(&$output) in /home/sites/heteml/users/m/e/t/metaphor/web/masuda/blog/wp-includes/classes.php on
はてなグループの終了日を2020年1月31日(金)に決定しました 以下のエントリの通り、今年末を目処にはてなグループを終了予定である旨をお知らせしておりました。 2019年末を目処に、はてなグループの提供を終了する予定です - はてなグループ日記 このたび、正式に終了日を決定いたしましたので、以下の通りご確認ください。 終了日: 2020年1月31日(金) エクスポート希望申請期限:2020年1月31日(金) 終了日以降は、はてなグループの閲覧および投稿は行えません。日記のエクスポートが必要な方は以下の記事にしたがって手続きをしてください。 はてなグループに投稿された日記データのエクスポートについて - はてなグループ日記 ご利用のみなさまにはご迷惑をおかけいたしますが、どうぞよろしくお願いいたします。 2020-06-25 追記 はてなグループ日記のエクスポートデータは2020年2月28
CoroでFlickrにアクセスする もうずいぶん前からCoroを使いたくて使いたくてしょうがなかったのだが、やっときたよ。Flickr APIを叩いて、非同期I/OしながらCoroで写真の情報をダウンロードするよ! まず某sukebeさん作のWebService::Simpleを使ってみるよ(本当に使ったコードは違うフレームワーク用にいろいろついてたので、あまり利便性とか考えずに説明用のコードだけ書きだします) package MyFlickrModel; use strict; use WebService::Simple; my $webservice = WebService::Simple->new( \%必要な引数 ); # 写真のIDを渡すとinfo, context, sizes, permsを全部ひっぱってくる sub find_photo { my $class =
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
« サーバシグニチャは隠さないのが当たり前 | メイン | swifty-0.02 と Perl バインディング » 2007年09月10日 Perl から MySQL に非同期アクセスする方法 mod_perl のプロセス内でやるのに POE でイベントループ回せ、ということ? もうちょいkwsk! > b:id:kazuhooku naoyaグループ - naoyaの日記 - 非同期SQLサーバ エントリ全体の趣旨はさておき、ソケット通信を非同期化するためにまた別のソケット通信を行うという使用例に違和感を覚えたのですが、回避策としてブクマコメントで提示した POE::Component::EasyDBI も内部で fork (&プロセス間通信) してるんですね。変なコメントしてごめんなさい忘れてください。って、それだけではなんなので... ここから本題。 私はそういうケースに遭遇したこ
継続を使ってSjaxをAjaxに簡単に変換する方法 http://d.hatena.ne.jp/llamerada/20070220/1171984586 を見て。こんなのはどうだろう。 ユーザーからの入力や、非同期のHTTPリクエストなんかを、具体化されてないオブジェクトとして捉えて、それらを受け取った関数側が遅延オブジェクトを具体化するためのリクエストを投げて再試行する。ネストが深くならないですむ、同期処理で書く場合との変更点が少ない、あるいは完全に差異を無くすことができる。 alert(args)のコメントを外せば、引数が具体化されていく様子が分かるはず。 Function.prototype.receive_lazy = function(){ var orig = this; return function(){ var thisObj = this; var me = argu
※追記:あまりにも記事タイトルが適当すぎて我ながら日本語でおkと思ったのでタイトルを変えました。 http://labs.cybozu.co.jp/blog/kazuho/archives/2006/12/oo-settimeout.php http://blog.livedoor.jp/dankogai/archives/50714622.html このネタはmalaさんが1年半前に通過した地点なのである程度常識の部類かと思ってました。 でもdankogaiがわざわざやるってことは知らない人も多そうだし、malaさんが同じネタをまたやるようにも思えないので、ついでにLDRに現在使われてるFunction.prototype.laterとかを紹介してみる。 Function.prototype.later = function(ms){ var self = this; return fu
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く