The London Perl and Raku Workshop takes place on 26th Oct 2024. If your company depends on Perl, please consider sponsoring and/or attending.
![Gearman-XS-0.15](https://cdn-ak-scissors.b.st-hatena.com/image/square/c4a607b5430575638fd9a7f233e073d867af4bb7/height=288;version=1;width=512/https%3A%2F%2Fmetacpan.org%2Fstatic%2Fimages%2Fdots.png)
はてなグループの終了日を2020年1月31日(金)に決定しました 以下のエントリの通り、今年末を目処にはてなグループを終了予定である旨をお知らせしておりました。 2019年末を目処に、はてなグループの提供を終了する予定です - はてなグループ日記 このたび、正式に終了日を決定いたしましたので、以下の通りご確認ください。 終了日: 2020年1月31日(金) エクスポート希望申請期限:2020年1月31日(金) 終了日以降は、はてなグループの閲覧および投稿は行えません。日記のエクスポートが必要な方は以下の記事にしたがって手続きをしてください。 はてなグループに投稿された日記データのエクスポートについて - はてなグループ日記 ご利用のみなさまにはご迷惑をおかけいたしますが、どうぞよろしくお願いいたします。 2020-06-25 追記 はてなグループ日記のエクスポートデータは2020年2月28
サキとは彼女の自宅近く、湘南台駅前のスーパーマーケットで待ち合わせをした。彼女は自転車で後から追いつくと言い、僕は大きなコインパーキングへ車を停めた。煙草を一本吸ってからスーパーマーケットへ向かうと、ひっきりなしに主婦的な女性かおばあちゃんが入り口を出たり入ったりしていた。時刻は午後5時になる。時計から目を上げると、待たせちゃったわねと大して悪びれてない様子でサキが手ぶらでやってきた。 お礼に料理を作るとはいえ、サキの家には食材が十分足りていないらしく、こうしてスーパーマーケットに寄ることになった。サキは野菜コーナーから精肉コーナーまで、まるで優秀なカーナビに導かれるように無駄なく点検していった。欲しい食材があると、2秒間程度それらを凝視し、一度手に取ったじゃがいもやら豚肉やらを迷うことなく僕が持っているカゴに放り込んだ。最後にアルコール飲料が冷やされている棚の前へ行くと、私が飲むからとチ
daemonの起動 下記のようにdaemonとして起動します。 daemon起動オプションに関してですが、PODの記載は誤りで--daemonizeでは無く--daemonです。 $ sudo gearmand --daemon --pidfile=/var/log/gearmand.pid --debug=1 関数の登録 次にgearmanに実行させたい処理を予め登録し、さらにjob queを待ち受けるworkerを記述します。 #!/usr/bin/perl use strict; use warnings; use Data::Dump qw(dump); use Gearman::Worker; use Storable qw(thaw); use List::Util qw(sum); my $worker = Gearman::Worker->new; $worker->job
Blog Search when-present<#else>when-missing. (These only cover the last step of the expression; to cover the whole expression, use parenthesis: (myOptionalVar.foo)!myDefault, (myOptionalVar.foo)?? ---- ---- FTL stack trace ("~" means nesting-related): - Failed at: ${entry.path} [in template "__entry.ftlh" at line 3, column 25] - Reached through: #include "__entry.ftlh" [in template "entry.ftlh" at
Blog Search when-present<#else>when-missing. (These only cover the last step of the expression; to cover the whole expression, use parenthesis: (myOptionalVar.foo)!myDefault, (myOptionalVar.foo)?? ---- ---- FTL stack trace ("~" means nesting-related): - Failed at: ${entry.path} [in template "__entry.ftlh" at line 3, column 25] - Reached through: #include "__entry.ftlh" [in template "entry.ftlh" at
tokuhirom 2007-05-02 12:38:02 Gearman::Client::Async の正しい使い方。完全版。 >|perl| use strict; use warnings; use Gearman::Client::Async; use Storable qw/freeze/; use Carp; my $num = shift @ARGV || 200; my $client = Gearman::Client::Async->new(job_servers => ['127.0.0.1']); my @tasks; my $failed = 0; Danga::Socket->AddTimer( 0 => sub { for my $i ( 1 .. $num ) { my $task = Gearman
tokuhirom 2007-05-06 19:53:36 Asynchronous Gearman Taskset. >|perl| package Gearman::Taskset::Async; use strict; use warnings; use base qw(Gearman::Taskset); use Carp (); use Gearman::Client; use Gearman::Util; use Gearman::ResponseParser::Taskset; use fields qw/need_write need_handle_async/; { package Gearman::Client; sub new_async_task_set { my Gearman::Client $self = shift; my $t
GearmanとかNginxとか ひさびさにFemoを弄った。 サーバ周りを中心にいくつか改善 まず、以前FastCGIの環境で動かないと書いたText::VimColorをGearmanを使うようにしてみました。 Text::VimColorはText::Hatena(バージョン0.16)の中で使われています #Worker(worker.pl) my $worker = Gearman::Worker->new; $worker->job_servers(qw/127.0.0.1/); $worker->register_function( vimcolor_html => sub { my $g = shift; my $arg = Storable::thaw( $g->arg ); my %arg = map { $_ => $arg->{$_} } grep { $_ !~ /
前のエントリで、Gearman::Clientはtimeoutできないけど、Gearman::Client::Asyncはtimeoutできる。でもすぐに処理が戻ってこない!って書きました。 で、この処理すぐに戻ってこないという問題をもうちょっと調べたら、すぐではないけど処理が戻ってくることが確認できました。設定した秒数が短かすぎて勘違いしていたみたい>< ということで、結論としてはtimeoutさせたかったらGearman::Clientじゃなく、Gearman::Client::Asyncを使おうということですね。
最近Gearmanを使っていてわかったのですが、Gearmanでは64kbぐらい(ぐらいっていう曖昧な表現なのは、毎回そうとは限らないから)のデータをworkerに投げると、うまく処理できないようです。うまく処理できないというかデータが欠損してしまうようです。 なんでなのか調べてみると、Gearman::Utilのread_res_packet()という関数の下記の部分で、clientから投げられたデータを全て取得できていないというのがわかりました。 if ($len) { $rv = sysread($sock, $buf, $len); return $err->("short_body") unless $rv == $len; } この部分の$lenは、clientから投げられたデータ(パケット)のヘッダーから取得したもので、workerに送られてきたデータ長になります。で、$rv
はてなグループの終了日を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
Gearman で遊んでたら思いついたので書いておきます。ネタに近い。 複数台のマシンで同じコマンドを実行して結果を見たい、てなのを Gearman でやってみる。 worker: 自分の hostname を function 名として job server に登録。job の引数に受け取った文字列を shell に食わせて実行する client: worker の動いているマシンの hostname を function 名として、実行したい shell command を投げる てなかんじ。 あらかじめ job_server になるマシンは決めて gearmand を実行しておき、コマンドを実行したいマシンで worker.pl を起動。 $ perl worker.pl sola # 引数は job_server名 job_server: sola myhostname: sola
Blog Search when-present<#else>when-missing. (These only cover the last step of the expression; to cover the whole expression, use parenthesis: (myOptionalVar.foo)!myDefault, (myOptionalVar.foo)?? ---- ---- FTL stack trace ("~" means nesting-related): - Failed at: ${entry.path} [in template "__entry.ftlh" at line 3, column 25] - Reached through: #include "__entry.ftlh" [in template "entry.ftlh" at
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く