タグ

perlに関するhoneybeのブックマーク (35)

  • GitHub - motemen/Teto: nicovideo stream player

    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

    GitHub - motemen/Teto: nicovideo stream player
  • linuxで httpd が使ってるメモリ総量を調べる話 - kazuhoのメモ置き場

    Perl等のLLでウェブアプリケーションサーバを書いていると、普通はマルチプロセスモデル (apache なら prefork とか) で運用することになると思う。で、それらがどれだけメモリを使っているか、っていうのはチューニングにおいて重要になってきたりする (んじゃないかと思う) けど、そもそもメモリの総使用量をどうやって測定するのか。 20:20追記: PSSを使ってワンライナーで測定するのが簡単 (コメント欄参照)。kosakiさんありがとうございます。 $ sudo perl -le 'for my $p (@ARGV) { open my $fh, "< /proc/$p/smaps" or die $!; map { /^Pss:\s*(\d+)/i and $s += $1 } <$fh> } print $s' `pgrep plackup` 914325以下は初回投稿時

    linuxで httpd が使ってるメモリ総量を調べる話 - kazuhoのメモ置き場
    honeybe
    honeybe 2009/12/24
    めも。ワンライナー参考になるなぁ。
  • 初心者にもお勧めのスクリプト言語“Perl”向け統合開発環境「Padre」NOT SUPPORTED

  • TheSchwartz / Gearman のワーカープロセス管理WorkerManager - stanaka's blog

    概要 Perlの非同期処理システムとしてTheSchwartz / Gearmanを非常に便利に使っているのですが、いい感じにワーカープロセスを管理したかったので、WorkerManagerなるものを作ってみました。作ったのは実は1年以上前なのですが、ようやくの公開です。 基は、Apacheのpreforkモデルを踏襲しています。特徴は、 子プロセスを複数起動させて、ジョブを並列実行 一定回数のジョブを実行したら、子プロセスを再作成 クラスを定義するのみでジョブを実行 TheSchwartz / Gearmanの切り替えを最低限の変更で実現 ワーカープロセスの安全な停止(プロセス停止の際に、実行中のジョブの終了後に終了) ジョブの実行時のタイムスタンプをジョブ投入からの遅延をログに保存 というあたりです。preforkモデルなので、あまりモダンな設計ではないですが、gdbでのデバッグの容

    TheSchwartz / Gearman のワーカープロセス管理WorkerManager - stanaka's blog
  • Perl で Excel を Parse する - はちゅにっき

    PerlExcel を Parse するときのお約束といえば Spreadsheet-ParseExcel http://search.cpan.org/~jmcnamara/Spreadsheet-ParseExcel-0.54/lib/Spreadsheet/ParseExcel.pm ですよね! というわけで、今回の話題は PerlExcel を Parse する方法について。 ただし、Excel にはイタリア語とか、フランス語とか、日語とか。。。 とにかくイロイロな国の文字が入力されているという、稀によくある状況を想定しています。 が、ハングル文字とかキリル文字とか、アジア圏の文字全部に対応できているかは謎です。 アジアってすごいよね。。。言語的意味で。 ちなみに日語のみの Excel では、以下のモジュールを使うと便利だそうです。 Spreadsheet-Pars

    Perl で Excel を Parse する - はちゅにっき
  • Ajax - AWS Caching Proxy w/ Authentication Support : 404 Blog Not Found

    2009年06月26日06:00 カテゴリLightweight Languages Ajax - AWS Caching Proxy w/ Authentication Support ありがとう、たださん。 Amazon API認証のPROXYを書いたよ(AmazonAPI認証導入はOSSに対する挑戦だよなぁ(4)) - ただのにっき(2009-06-19) ご提案いただいている アプリ --(ASIN)→ PROXY --(ASIN+秘密キー)→ Amazon の方法でしたら、ライセンス上問題となりませんので、対応につきご検討いただけますと幸いです。 ニヤリ。 というわけで、私も書きました。 Synopsis すごくRESTful。とっても簡単。ASINが4534045220とすると、 XML //api.dan.co.jp/asin/4534045220.xml YAML //a

    Ajax - AWS Caching Proxy w/ Authentication Support : 404 Blog Not Found
  • naoyaのはてなダイアリー - Perl の話をまとめた

    use strict がどうのこうのという話があって、そういえば昔自分もそんなこと書いたなあと思っていろいろ自分の書いた Perl の話を見返してて、せっかくだから拙作のまとめでも作っておくかと思いました。とりあえず文章量がそれなりにあって、まとまりのあるものだけを見繕ってみます。 今見ると、当時の理解が不十分で微妙なところもあったりしますが、そのあたりはご愛嬌。 いま読んでもまだ陳腐化はしてなさそうな話 お薦めの Perl をいくつか紹介 : NDO::Weblog Perlおすすめの書籍や情報。今ならここにPerl救命病棟とWEB+DB PRESS総集編を入れるかな。 Perlプログラマのレベル10 - Perlプログラミング救命病棟より - naoyaのはてなダイアリー Perlプログラマのレベル10。なんか他言語にも飛び火した。 Perl の変数に関するちょっとした誤解と、動的な

    naoyaのはてなダイアリー - Perl の話をまとめた
  • local::libを使った非rootでのCPAN環境構築 - hide-k.net#blog

    miyagawaさんが紹介されていたlocal::libを使って非rootでのCPAN環境を作ってみました。平たく言えばさくらインターネットのレンタルサーバで一般ユーザーでCPAN環境を作ってみました。 とはいえ、多くは先人たちの otsune's FreeBSD memo :: ユーザー領域にCPANをインストールする方法 さくらインターネットでCPAN - Charsbar::Note と大差ありません。 まずはlocal::libのアーカイブを取得・解凍します。最新のバージョンは1.003001です。 wget http://search.cpan.org/CPAN/authors/id/A/AP/APEIRON/local-lib-1.003001.tar.gz tar xzvf local-lib-1.003001.tar.gz cd local-lib-1.003001 ots

    honeybe
    honeybe 2009/03/10
  • さくらインターネットサーバでのCPAN導入を完全に手順化して見た - Perl入門ゼミ

    Perl › 環境構築 (この記事の内容は古くなっています、現在はcpanmを使ってモジュールをローカルにインストールするのが簡単でしょう。cpanmによるローカル環境構築を見てください。) otsuneさんのところでさくらインターネットのレンタルサーバでCPANを使用する方法が紹介されているのですが、一部手作業が発生するので、すべてコピペで実行できるように手順化してみました。 さくらインターネットサーバcpan導入手順 # ライブラリのためのディレクトリの作成 mkdir -p ~/local # CPANの設定ファイルを作成 echo no | cpan # cpanコマンドの設定ファイルMyConfig.pmの書き換え # ( __END__の行まで一気にコピーして実行してください。とまった場合はEnter ) perl - ~/.cpan/CPAN/MyConfig.pm > ~/

    さくらインターネットサーバでのCPAN導入を完全に手順化して見た - Perl入門ゼミ
    honeybe
    honeybe 2009/03/10
  • CPANモジュールをスクリプト一発で依存解決しつつrpm化する - とあるはてな社員の日記

    少し前にmizzyさんに そういえば、まっさらなサーバを30分で番投入できるようにする で stanaka さんが「CPANの依存関係を解析してrpm化する手製スクリプトで、CPANモジュールのrpm化が、ほぼ自動化されています」と書いてるんだけど、これって公開してくれないのかなー。 HowToRpmizeCpanModules - mizzy.org - Trac と突かれたので、githubで公開してみます。 http://github.com/stanaka/cpan-dependency/tree/master 突かれたついでにmizzyさんに軽く動作確認してもらったところ、それなりに動いているようです。また、はてなでは、このスクリプトを利用して、日々それなりの数のCPANモジュールのrpm化を行っていますので、だいたいうまく動くのではないかと思います。 CentOSやFedor

    CPANモジュールをスクリプト一発で依存解決しつつrpm化する - とあるはてな社員の日記
    honeybe
    honeybe 2009/02/21
  • Perl使いのためのRTMPサーバ実装·Kamaitachi MOONGIFT

    サーバサイドのプラグラミング言語には慣れていても、クライアントサイドで動く言語には不慣れな方が多い。昔で言えばJavaScriptだが最近では随分ライブラリが増えてきた。その次としてActionScriptはどうだろう。 サンプルのチャットクライアント ActionScriptは無償で開発ができるが、なかなか手出しがしづらい。とは言え最近では動画を中心にインタラクティブなサイトが増え、そろそろ触れないといけなくなっている。いや、そんなことはない。RTMPプロトコルに対応したサービスならPerlでも実装できるのだ。 今回紹介するオープンソース・ソフトウェアはKamaitachi、PerlによるRTMPサーバだ。 RTMPと言えば、Flash Media Serverで使われているプロトコルだ。同種のソフトウェアとしてRubyIZUMIが知られている。ストリーミングを流したり、インタラクティブ

    Perl使いのためのRTMPサーバ実装·Kamaitachi MOONGIFT
  • Lux IOのPerlバインディングを作成した - Kentaro Kuribayashi's blog

    id:mogwaingさんが開発されているYet AnotherなDBMであるところのLux IOを使ってみたくなったので、Perlから使えるようバインディングを書いてみました。初XSな上にC/C++もろくに書いたことがないのでわかんないところだらけですが、なんか一応動くようになったっぽいので、GitHubに上げておきました。 kentaro's perl-lux-io at master — GitHub ご覧になればわかる通り、なんかせっかくC++ライブラリを触るのに、関数をベタベタ書いてラップしてるだけで、なんともダサい感じ。typemapをうまく使えばいい感じになるということだったのだけど、Lux::IO::Btreeみたいなコロンつきの型や、Lux::IO::*以下にあるstructやenumをどうtypemapすればいいのかわからなかったので、こんな感じに。 以下、あれこれ試行

    Lux IOのPerlバインディングを作成した - Kentaro Kuribayashi's blog
  • Vanilla と Strawberry の違い(Perl Win32)

    あまり日語でVanilla Perl について説明している文を見たことがないので、誤解がないようにここで解説。 世間では CPAN が簡単に使える Perl として Strawberry Perl が有名である。しかし、gcc が同時にインストールされるため CPAN が使いやすいPerl という意味では、Vanilla Perl も Strawberry Perl も同じである。 Vanilla Perl はWin32版のCPANモジュールの問題の検証やカスタマイズ用Perlを作るためのPerlである。実験用のPerlともいえる。含まれているモジュールも必要最低限である。エンドユーザー向けではない。 Strawberry Perl はUNIXで Perl を使い慣れた人たちのためのWindowsperl である。便利なモジュールを追加してエンドユーザー向けにカスタマイズしたVani

    honeybe
    honeybe 2008/12/15
  • Higher-Order Perl

    by Mark Jason Dominus Order Higher-Order Perl online from Powell's Books Download full text here There are three versions available. You have your choice of structure or presentation, but not both. License reminder Higher-Order Perl is copyright ©2005 by Elsevier Inc. Unauthorized reproduction or distribution is absolutely forbidden. You may download the book for your personal use, but you may not

  • tokuhirom blog

    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

  • Mojolicious 入門 - モダンなPerl入門

    LL温泉2008用の資料です。 最近でたばかりのフレームワークである Mojolicious をつかってみましょう。 インストール すごいかんたんです。 # Mojo をダウンロード % wget http://mojolicious.org/Mojo-latest.tar.gz # 解凍 % tar xzvf Mojo-latest.tar.gz % cd Mojo # Makefile 生成 % perl Makefile.PL # make する % make # テストスィーツをうごかしてみる % make test # インストール % sudo make install # うまくいったか確認 % mojolicious daemon Server available at http://127.0.0.1:3000. アクセスしたら、こんな画面がでます http://gyaz

  • Perl スクリプトで遅い場所を特定する方法 - Devel::Profiler / Devel::NYTProf

    仕事で書いてる Sledge アプリがあるのですが、先日負荷テストを行った結果びっくりすることに現行アプリの10倍遅いことが判明してしまいました・・・orz Sledge フレームワーク自身が重くないことは今までの経験でわかってるのですが、どうにもソースを見直しているだけでは原因が特定できない・・・そんな活躍するのがプロファイラです。プロファイラの御陰で遅いヶ所を特定することができ、無事に想定するパフォーマンスを得ることができました。この内容に関してはまた別エントリにて。 さて、プロファイラを使うとプログラム実行時の各種情報を収集し、性能解析を行うことが可能です。プロファイラについてもう少し詳しくしるには 性能解析 - Wikipedia あたりを読むと良いでしょう。 プロファイラ(英: Profiler)は性能解析ツールであり、プログラム実行時の各種情報を収集する。特に、関数呼び出しの

  • Perl 最速伝説k - Yokohama.pm Teck Talk #1

    と言う事で、連結する変数が多くなると途中から join が最速になる。"$a$b$c" のような形式は最適化されて $a . $b . $c となるようだがやはり数に関わらず最も遅いので使わない。 続・スカラーの文字連結 http://www.ibm.com/developerworks/jp/linux/library/l-optperl/ より 他にも色々拡張してみた。 #!/usr/bin/perl use strict; use warnings; use Benchmark qw(:all); my $limit = 100; my $sets = { concat1 => sub { my $string = 'abcdefghijklmnopqrstuvwxyz'; my $concat = ''; for (1..$limit) { $concat .= $string;

    honeybe
    honeybe 2008/08/28
  • Perlプログラマのためのgdb入門(at Shibuya.pm #9 LT) - とあるはてな社員の日記

    先日のShibuya.pm #9のLightening Talkで「gdbでXS on mod_perlをデバッグ」という話をしてきました。XSを使い出すと、従来のPerl的デバッグだけでは不十分なのでgdbをうまく使って、効率的にデバッグしましょう、という話です。実は、はてな社内では1年近く前に勉強で話したネタだったのですが、ようやく公開することができました。 Shibuya.pmでは5分という枠があったのでショートver.でしたが、ここでは制限はないので、来のロングバージョンの資料をアップします。ちょっと公開できない情報が混っていたので、xxxで隠していますが、ご了承ください。 ちなみに、Rubyとかでも似た感じでデバッグできると思うので、そちらの人も参考にしてください。長いよ!という人は、最後の「これは設定しておけ的gdb初期化マクロ」だけでもどうぞ。かなり便利です。 (資料公開が

    Perlプログラマのためのgdb入門(at Shibuya.pm #9 LT) - とあるはてな社員の日記
    honeybe
    honeybe 2008/07/02
  • cohtan blog: TheSchwartzを使って重たい処理を非同期に行い、手元はサクサクに

    2008年6月25日 TheSchwartzを使って重たい処理を非同期に行い、手元はサクサクに 昨日id:rytich経由でGearmanやTheSchwartzというキーワードを知りました。 調べてみるとこれがなんだかとても面白そうで、実装に必要なCPANモジュールも完備されてるので何かやってみようと思い、出来たのはWWW::YourFileHostを使った非同期なダウンローダーです。 codecheck.inに置いてます これを使うと、こんな感じになります。 URLを指定してキューを追加して終了。軽くてサクサク(client.pl) キューに登録されたURLを元にコンテンツをゲット。重たいけどきっちりこなす(worker.pl) これの何がうれしいかというと、コンテンツをゲットする部分を待たずに、 どんどんゲットしたいURLを投げつける事が出来る事にあります。 通常はコンテンツをゲット