タグ

Perlに関するmatsutakegohan1のブックマーク (101)

  • perldelta - perl v5.9.5 更新情報

    perldelta - perl v5.9.5 更新情報 perldelta - what is new for perl v5.9.5 名前 NAME perldelta - perl v5.9.5 更新情報 perldelta - what is new for perl v5.9.5 説明 DESCRIPTION このドキュメントでは開発リリース 5.9.4 と 5.9.5 の間での変更点を 説明します. 5.8.0 から 5.9.4 までの変更点は perl590delta, perl591delta, perl592delta, perl593delta そして perl594delta を 参照してください. This document describes differences between the 5.9.4 and the 5.9.5 development rel

  • HTML::StripScriptsでXSS対策をする - Kentaro Kuribayashi's blog

    先日公開した「はて☆すたアンケート」にて、アンケートの説明文をはてな記法で書けるよう、機能追加を行った。その際、Template::Plugin::Hatenaを用いた。これは、はてな記法パーサであるText::Hatena(正確には、そのヴァージョン0.16以下)を、Template::Toolkitのプラグインとして使えるようにしたものである。 はてな記法は、それ自体で全ての文書構造を表現できる、あるいは、はてなダイアリのシステム自体は、はてな記法のみしか許容しないというものではなく、たとえば画像を貼る際には、普通にimg要素を書く必要があるし、また、その他の要素についても、記法が用意されていないものについては、「はてなダイアリーのヘルプ - はてなダイアリー利用可能タグ」に掲載されているものに限り、自分でタグを書くことができる。これは自由度を高める反面で、XSSを誘発し得る潜在的なリ

    HTML::StripScriptsでXSS対策をする - Kentaro Kuribayashi's blog
  • mixi Engineers’ Blog » OpenSSLの暗号文をJava/Perl/Rubyで開く

    秘密鍵やプライベートな情報などを秘匿するためにパスワードでデータを暗号化・復号したい場合があります。このとき、暗号化と復号するアプリケーションが同じであれば簡単ですが、例えばCで暗号化してJavaPerlRubyで復号するといった風に異なるプラットフォームで暗号データをやりとりする場合には、いくつか気 をつけなければいけないポイントがあります。 OpenSSLによる暗号化 OpenSSLはWebサーバのSSL/TLSサポートに利用されますが、その他にも付属しているopensslコマンドから基的な暗号アルゴリズムを利用できます。次のような簡単なコマンドで、パスワードを使ってデータを暗号化したり復号したりすることができます: $ echo 'Hello World!' | openssl enc -e -aes-128-cbc > cipher.txt enter aes-128-cbc

    mixi Engineers’ Blog » OpenSSLの暗号文をJava/Perl/Rubyで開く
    matsutakegohan1
    matsutakegohan1 2008/06/30
    あと、ここから重要なオチなんですが、PBKDF1はけっこう前から新規開発するアプリケーションでの採用を推奨されていません。現在は代わりにPBKDF2の採用が推奨されています。
  • ithreads でスレッドプール - naoyaのはてなダイアリー

    マルチスレッドなサーバー実装を色々模索していて、Perlithreads で遊ぶ。ithreads は Linux の pthread にリンクさせた perl なら一応 NPTL で動いてくれるので、pthread アプリケーションの設計を試すのにも良い。 試しににやってみたのは、たとえば mod_perl とかで重い SQL でブロックするのが嫌なときとかにそれを別プロセスに丸投げしてやる、その丸投げされる側のサーバー実装。(やりたいことだけに関して言うと、TheSchwartz に似てる) クライアントとサーバーの IPC は UNIX ドメインソケット メッセージングのプロトコルは JSON サーバーはクライアントからのリクエストをバッファリングしたら、SQL を実行する前にクライアントとの接続を切断 この時点でクライアントは制御が戻る サーバーは内部ではフロントエンド /

    ithreads でスレッドプール - naoyaのはてなダイアリー
  • livedoor Techブログ : nowaのサーバ構成

    こんにちはスエヒロです。 今回は弊社が提供しているブログサービス「nowa」(ノワ http://nowa.jp)の仕組みをサーバ構成を中心に紹介したいと思います。 nowaでは一般的なブログサービス要素とSNS要素の機能を実装しています。弊社には先行して提供している「livedoor Blog」、「フレパ」といった大規模なサービスがありますので、そちらの開発・運用で問題になった点などを参考にしつつ開発を進めています。具体的にはアクセスによる負荷への対策、データベースの分散化、画像のストレージング、冗長性、スケーラビリティといった点になります。 - ポータル(nowa.jp)、CMS(cms.nowa.jp) のサーバ構成 ポータルページ(nowa.jp)とCMSページ(cms.nowa.jp)は、静的なファイルのリクエストを捌く+動的なコンテンツへのリクエストをプロキシするフロントサーバ

  • gearman [Gearman Job Server]

    What is Gearman? Gearman provides a generic application framework to farm out work to other machines or processes that are better suited to do the work. It allows you to do work in parallel, to load balance processing, and to call functions between languages. It can be used in a variety of applications, from high-availability web sites to the transport of database replication events. In other word

  • Kazuho@Cybozu Labs: ウェブサービスのためのMutex - KeyedMutex

    « キャッシュシステムの Thundering Herd 問題 | メイン | DBI::Printf - A Yet Another Prepared Statement » 2007年09月27日 ウェブサービスのためのMutex - KeyedMutex 昨日、以下のように書いたのですが、両者のうち2番目のアプローチを実現する Perl モジュール KeyedMutex を作成しました。 サーバにおける Thundering Herd 問題は良く知られていると思いますが、類似の現象はキャッシュシステムでも発生することがあります。 (中略) 対策としては、以下の2種類の手段があります。 バックエンドへの同一リクエストを束ねるような仕組みを実装する エクスパイヤ以前の残存時間が一定以下となった段階で、キャッシュエントリのアップデートを開始する これらの手法には、それぞれメリットとデメリッ

  • [Testing][Perl]Test::WWW::SeleniumでPerlからSelenium RCを操作する

    Selenium IDEを使うとhtmlの各種プログラミング言語用のテストコードも出力してくれます。 Perlの場合はTest::WWW::Seleniumモジュールを利用します。 前記事「Selenium RCとSelenium IDEでWEBアプリのUIテストを簡単自動化」の操作で出力されるPerlコードは以下のようになります。 Selenium IDEによって出力されるコード use strict; use warnings; use Time::HiRes qw(sleep); use Test::WWW::Selenium; use Test::More "no_plan"; use Test::Exception; my $sel = Test::WWW::Selenium->new( host => "localhost", port => 4444, browser =>

  • 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

  • DSAS開発者の部屋:携帯ゲートウェイのIPアドレス帯更新を効率的に確認する方法

    携帯電話各キャリアは、そのゲートウェイのIPアドレス帯域を公開しています。 DoCoMo au SoftBank WILLCOM 携帯ブラウザからのアクセスの場合、このIPアドレスがソースアドレスとなるので、アクセス制御や判別のために使っている方は多いのではないかと思います。 今回は、このIPアドレス帯の更新を効率的に確認する方法についてのお話です。 更新されたかどうかの確認だけならアンテナ系のWebサービスを使えばよいのですが、それだけだと、 どのIPアドレス帯が追加・削除されたのかわかりづらい。 IPアドレス帯のコピペが面倒くさい。 といった不満点があります。 そこでNet::CIDR::MobileJPというPerlのモジュールの出番です。(作者はモバイルファクトリという会社の方のようです) このモジュールには与えたIPアドレスが携帯かどうかを判別する機能があるのですが、次のようにす

    DSAS開発者の部屋:携帯ゲートウェイのIPアドレス帯更新を効率的に確認する方法
  • ゆーすけべー日記

    サキとは彼女の自宅近く、湘南台駅前のスーパーマーケットで待ち合わせをした。彼女は自転車で後から追いつくと言い、僕は大きなコインパーキングへ車を停めた。煙草を一吸ってからスーパーマーケットへ向かうと、ひっきりなしに主婦的な女性かおばあちゃんが入り口を出たり入ったりしていた。時刻は午後5時になる。時計から目を上げると、待たせちゃったわねと大して悪びれてない様子でサキが手ぶらでやってきた。 お礼に料理を作るとはいえ、サキの家には材が十分足りていないらしく、こうしてスーパーマーケットに寄ることになった。サキは野菜コーナーから精肉コーナーまで、まるで優秀なカーナビに導かれるように無駄なく点検していった。欲しい材があると、2秒間程度それらを凝視し、一度手に取ったじゃがいもやら豚肉やらを迷うことなく僕が持っているカゴに放り込んだ。最後にアルコール飲料が冷やされている棚の前へ行くと、私が飲むからとチ

    ゆーすけべー日記
  • Part1 正しいPerl/CGIの書き方:ITpro

    Shibuya Perl Mongers 2代目リーダーにして,ppencodeの作者。広島市立大学卒業後,大企業向けmod_perl製品の開発に従事。2005年よりサイボウズ・ラボ株式会社に入社。LL Ringに参戦。Namazu for Win32,Plagger,Ajajaのコミッターでもある。 CGIといえばPerl。そんな風にいわれていた時期もありました。レンタル・サーバーのCGIで手軽にPerlが使えたこともあり,ちょっとした掲示板のスクリプトやアクセス・カウンタなど,CGIプログラムの多くがPerlで書かれていました。このためPerlが爆発的に普及したのです。Perlは日のインターネット黎明期を支えたプログラミング言語として,広くその名が知られています。 その半面,Perlで書かれたプログラムの保守性に悩む声も聞かれるようになりました。事実,Perlのプログラミング経験が少

    Part1 正しいPerl/CGIの書き方:ITpro
    matsutakegohan1
    matsutakegohan1 2008/06/30
    とてつもなく分かりやすい。
  • perl - 配列をハッシュキーとして扱う : 404 Blog Not Found

    2007年10月24日20:00 カテゴリLightweight Languages perl - 配列をハッシュキーとして扱う コメント欄にも「教科書解」がなかったので。 Perl勉強中 - YoshioriのBlog #!/usr/bin/perl use strict; use warnings; my @array = qw/1 2 3/; my @array2 = qw/1 2 3/; my %hash; $hash{@array} = 'foo'; # ちょっと変更 print $hash{ @array2 }; # foo みたいなこと出来ないのかな? 教科書解は、こちら。 $hash{ join($;, @array) } = 'foo'; これは、 $hash{1,2,3} = 'foo'; $hash{qw/1 2 3/} = 'foo'; という、配列リテラルをキーに

    perl - 配列をハッシュキーとして扱う : 404 Blog Not Found
  • Perlで始めるFacebookアプリケーション:CodeZine

    はじめに Facebookは米国の代表的なソーシャルネットワークサービスで、開発者向けのプラットフォームも用意されています。今回は、Facebook用のアプリケーションの作り方について簡単に解説します。 FacebookからはPHPで書かれたサンプルアプリケーションが提供されていますが、今回はPerlを利用したいと思います。対象読者 Webアプリケーションに興味のある方。必要な環境 Perl 5.8以上が動作する環境を推奨します。主なPerlモジュールには、以下を使用しました。WWW::Facebook::APIJSON::Any Facebook用アプリケーション作成の基礎Facebook Developers Facebook Developersという、Facebookの開発者向けページがあります。ここでは主に3つの技術が提供されています。Interface (API)Query (

  • TAKESAKO @ Yet another Cybozu Labs: [訂正] Webプログラミング実力アップ Part1 正しいPerl/CGIの書き方:ITpro

    2007/11/14 追記: Module-Starter-1.470 のバージョンアップによって、下記不具合は解消されました。 記事中の手順で問題なく module-starter が使えるようになっています。 以前、日経ソフトウエア2007.03(1月24日発売)に書いた特集記事が Webプログラミング実力アップ Part1 正しいPerl/CGIの書き方:ITpro ──Webプログラミング初心者からの脱出の手引き としてITpro上で公開されましたが、その間にCPANモジュールのModule-Starterのバージョンアップがあって、module-starterが動作しない例がありました。 ■ 問題点 module-starter を実行すると Unknown placeholder in Makefile.PL というエラーが出る。 http://b.hatena.ne.jp/k

  • Prog/Perl - 普通的生活工作室

    共用メモリー † プロセス間でデータの受け渡しなどを行う方法の一つです。 use IPC::SysV qw(IPC_CREAT); # MEMID の取得 $MEMID = shmget($KEY, $MEMSIZE, IPC_CREAT | 0644); unless (defined $MEMID) { print "MEMID error $!"); exit(1); } # 書き込み unless(shmwrite($MEMID, "TEST DATA", 0, 9)) { &logwrt("shrwrite error $!"); exit(1); } # 読み込み undef $DATA; unless(shmread($MEMID, $DATA, 0, 9)) { &logwrt("shrread error $!"); exit(1); } undef $DATA は必要な

  • 404 Blog Not Found:perl - Module::Compile で Self::Compile

    2007年11月04日16:30 カテゴリLightweight Languages perl - Module::Compile で Self::Compile PERL HACKS(日語版) [英語版] こういうものこそ、Module::Compile self-0.11なるものを触ってみた - Unknown::Programming なんとまあ悲惨な結果になりました。他かだか1000ループでコレではちょっと使い物にならないかなぁ・・・。#!/usr/local/bin/perl use strict; use warnings; use Foo; my $f = Foo->new(); $f->foo("bar"); print $f->foo; Foo.pm package Foo; use strict; use warnings; sub new { bless {}, s

    404 Blog Not Found:perl - Module::Compile で Self::Compile
  • CodeRepos::Share – Trac

    mobirc これなに? ケータイからIRCのログみたりとか発言したりするための server。要するに keitairc みたいなもの。 特徴 IRC をケータイ端末からみれます パケレスフィルタアリマス mIRC のカラーコードに対応 プラガブルです(Plagger 的な意味で) SoftBank でも簡単ログインできます ドコモでもイカした見た目になります 全体的に見た目がイケてます Twitter 対応 notice, public, join, leave などの各ステータスに応じて、スタイルシートをあてられます iso-2022-jp のみならず utf-8 を使えます。その他の大抵の文字コードにも対応してます。 なんで keitairc つかわないの? keitairc は1ファイルでまとまっていて気軽に設置できるのがいいところです。 しかし、その一方1ファイルにいろいろつま

  • 404 Blog Not Found:perl - Dir::Tree つうのを書いてみた

    2007年11月07日23:00 カテゴリLightweight Languages perl - Dir::Tree つうのを書いてみた そんなあなたに、こんなモジュールを書いてみた。 tree コマンドが便利 - IT戦記 もっと直感的に(あまり考えずに)、探せるコマンドはないのかなあと思って tree コマンドを使ってみた。使い方は、こんな感じ。 % perl -Ilib -MDir::Tree -e 'print Dir::Tree->new(shift)->tree_cmd(1)' . |-- Changes |-- MANIFEST |-- Makefile.PL |-- README |-- lib | |-- Dir | | |-- #Tree.pm# | | |-- Tree.pm |-- t | |-- 00-load.t | |-- boilerplate.t | |

    404 Blog Not Found:perl - Dir::Tree つうのを書いてみた
  • Encode::JP::Mobile 0.07 - Bulknews::Subtech - subtech

    はてなグループの終了日を2020年1月31日(金)に決定しました 以下のエントリの通り、今年末を目処にはてなグループを終了予定である旨をお知らせしておりました。 2019年末を目処に、はてなグループの提供を終了する予定です - はてなグループ日記 このたび、正式に終了日を決定いたしましたので、以下の通りご確認ください。 終了日: 2020年1月31日(金) エクスポート希望申請期限:2020年1月31日(金) 終了日以降は、はてなグループの閲覧および投稿は行えません。日記のエクスポートが必要な方は以下の記事にしたがって手続きをしてください。 はてなグループに投稿された日記データのエクスポートについて - はてなグループ日記 ご利用のみなさまにはご迷惑をおかけいたしますが、どうぞよろしくお願いいたします。 2020-06-25 追記 はてなグループ日記のエクスポートデータは2020年2月28

    Encode::JP::Mobile 0.07 - Bulknews::Subtech - subtech