タグ

ブックマーク / sfujiwara.hatenablog.com (5)

  • nginxでメソッドごとにリクエスト数制限を掛けたい - 酒日記 はてな支店

    アプリケーションでどうしても捌けない量のリクエストが一時的に押し寄せてしまう場合、アプリケーションサーバが死ぬのを避けるために GET は制限を掛けたいが、POST はリトライが面倒なのでなるべく通してあげたい、というような要求を nginx で処理できるかどうか。 実装として一番望ましいのは GET は 100 req/sec で制限 (超えたら503) POST は無制限 のようにメソッドごとに別々の制限を掛けることだったのですが、とりあえず HttpLimitReqModule を使うことで、メソッドごとに同一の上限を設定することはできました。 http { limit_req_zone $request_method zone=method:1m rate=100r/s; server { listen 80; location / { limit_req zone=method;

    nginxでメソッドごとにリクエスト数制限を掛けたい - 酒日記 はてな支店
    likk
    likk 2013/06/20
  • [perl] Perlで同じコードを違うバージョンのモジュールでベンチマークする - 酒日記 はてな支店

    複数バージョンのモジュールで同じコードを実行してBenchmark.pmで計測したい、というケースにこう書けばいいかな、という例。 普通にBenchmark.pmを使ってしまうと同一モジュールを違うバージョンで複数読み込むことができないため、 バージョンごとに子プロセスを fork 子プロセスで use lib して @INC を追加してから use 計測した結果をファイルに保存して親プロセスで集約、表示 という流れで書きます。 use strict; use Benchmark qw/ :all /; use File::Temp qw/ tempfile /; use Storable qw/ nstore retrieve /; # 計測したいコード my $code = sub { my $c = Cache::Redis->new; for ( 1 .. 10 ) { $c->s

    [perl] Perlで同じコードを違うバージョンのモジュールでベンチマークする - 酒日記 はてな支店
    likk
    likk 2013/04/02
    違うバージョンのモジュールでベンチマーク
  • Subversion で ASCII 以外のファイル名を追加させない方法 - 酒日記 はてな支店

    エクスプローラ上ではファイル名の全角半角が判別しづらいので、思わぬ全角混じりのファイル名がリポジトリに入ってしまうことがある。 これを pre-commit で検知して防ぐ。 以下のスクリプトを hooks 以下に置いておくと #!/usr/bin/perl # -*- coding:utf-8 -*- $ENV{LANG} = 'ja_JP.UTF-8'; use strict; my $SVNLOOK='/usr/bin/svnlook'; sub main { my ( $repos, $txn ) = @_; my @cmd = ( $SVNLOOK, 'diff', "-t$txn", $repos ); open my $pipe, '-|', @cmd or die $!; local $/ = undef; my $diff = <$pipe>; close $pipe;

    Subversion で ASCII 以外のファイル名を追加させない方法 - 酒日記 はてな支店
    likk
    likk 2007/11/23
    日本語ファイル名を登録させない
  • 昭和の写真ジェネレータの作り方 - 酒日記 はてな支店

    予想外に人気を博してしまった 昭和の写真ジェネレータ(仮) ですが、画像加工の方法を公開しておきます。 [追記] 以下のコードは説明用です。なお、実際に動いているコード(に限りなく近いもの) を CodeRepos に up しました。svnはこちらから 用意するもの。 Perl Imagerモジュール 元ネタの画像 モジュールを load して、画像を Imager オブジェクトに読み込みます。 use Imager; use Imager::Fill; use List::Util qw/ min max /; my $img = Imager->new; $img->read( file => "source.jpg" ); コントラストを落とします。 $img->filter( type => "contrast", intensity => 0.7 ); 少々ぼかします。(小さい

    昭和の写真ジェネレータの作り方 - 酒日記 はてな支店
  • WebService::FC2::SpamAPI released - 酒日記 はてな支店

    http://search.cpan.org/~fujiwara/WebService-FC2-SpamAPI-0.01/ 先週末にリリースされた、FC2 の spam blacklist API を使う Perl module. まだ誰も作ってなさそうだったので、作ってみました。 FC2ソーシャルスパム対策とは、日々送信されるスパムメール(※)や迷惑メール、その日見つけた不正・スパムサイトなどの情報をリストにして、その情報をユーザー同士で共有することによりスパム対策しようというサービスです。 http://seo.fc2.com/spam/

    WebService::FC2::SpamAPI released - 酒日記 はてな支店
    likk
    likk 2007/02/27
  • 1