タグ

2009年6月25日のブックマーク (17件)

  • Pylons の setup.py

    pylons の setup.py の記述方法がよく分かっていなかったですが、以下の文章を読むと少しわかった気になりました。 「Python モジュールの配布」 > 簡単な例 Python モジュールの配布 > ソースコードを配布する setuptools 「Python モジュールの配布」 > 簡単な例によると、setup.py に from distutils.core import setup setup(name='foo', version='1.0', py_modules=['foo'], ) のように書いて、 python setup.py sdist と実行すると、foo-1.0.tar.gz というアーカイブファイルが生成されるそうです。 なんだか pylons プロジェクトで自動生成されるsetup.py もdistutils の仕様にのっとっていそうですが、気になる

    Pylons の setup.py
  • Google Code Archive - Long-term storage for Google Code Project Hosting.

    Code Archive Skip to content Google About Google Privacy Terms

    koko1000ban
    koko1000ban 2009/06/25
    GoogleWaveをpythonで実装してみました
  • 手っ取り早く知りたい人のためのSQLAlchemy 0.4 - Pylons 日本語 - PythonWeb

    ※この文書は、 [SQLAlchemy 0.4 for people in a hurry] の v.29 を翻訳したものです。 これは、 Pylons >= 0.9.6 と SQLAlchemy >= 0.4 のための SQLAlchemy 0.4 バージョンの記事です。もしまだ SQLAlchemy 0.3 を使用しているなら、[SQLAlchemy 0.3 for people in a hurry] を見てください。このバージョンは、 SAContext や pylons.database を使用しません。その両方とも廃止されました。 これは、他のコンポーネントを使い始めるための Pylons のクイックガイドのひとつです。それは Pylons 0.9.6rc2 (2007年8月) 現在、 PylonsとSQLAlchemy を使用するお勧めの方法を述べます。これは Pylons

  • Pyhon2.5でSQLObjectを使ってみる - seraphyの日記

    Web2.0的システム構築―より進化したシステムの考え方をちょっと流し読んでたら、PythonでのO/R MappingとしてSQLObject — SQLObject 3.5.0 documentationの、ものすごい簡単な紹介があったので興味をひかれたので試してみる。 当にものすごく簡単に紹介していて、ついでに「SQLObjectを使ったようなコードはJavaのような重量級言語では実現できないに違いない、これがスクリプト言語の醍醐味だ」みたいなことが書かれていて、ちょうど、寝る前に試すには良い規模かなー、なんて思ってしまった。 実際には、予定よりも5時間もオーバーして、朝になってしまった。orz とりあえず、基的な使いかたは分かった気がするので、いろいろ不足する部分もあるが、ここで一区切りつけたい。 用意するもの Python2.5 SQLite3が同梱されているから SQLOb

    Pyhon2.5でSQLObjectを使ってみる - seraphyの日記
  • SQLAlchemyを試す — nagosui.org

    デフォルトで、TurboGears 1.0ではORMとしてSQLObjectが、テンプレートシステムとしてKidが採用されており、TurboGears 2.0ではORMとしてSQLAlchemyが、テンプレートシステムとしてGenshiが採用される予定です。 SQLObjectとSQLAlchemyにしろ、KidとGenshiにしろ、どちらを使うか・どちらを学習すべきかという議論は後を絶ちませんが、まずはこう理解することが大切なのではないかと思います。 どちらを選択するのかはケースバイケースなので、一概に、そして明確に、「こちらがよい」とは誰も断言できない重要なのは両者の違いを把握し、自分のスキルや作成するアプリケーションの要件を鑑みながら適切な選択をすること とはいえ、私のような知識も経験も目的もないようなダメダメ人間には、そもそも違いがよくわからないので大変です。ということで

  • OTN Japan - 今だからデータ・アクセスを真剣に考える! 第2回

    前回の「データベースことはじめ(前編)」では、システムの論理的な階層の中でドメイン層をどの様に実装するかということで、PoEAAのアーキテクチャパターンを元に見てみました。今回は、パーシステンス層のアーキテクチャパターン+αを見ていきます。 まずパーシステンス層を見る前に、今回の話題とは直接ではないですが、間接的に関わってくる層のサービス層に関して少し触れておきたいと思います。サービス層は、ドメイン層配下のビジネスロジックをユーザインタフェース層やアプリケーション層から利用するためのインタフェースとして機能します。一般的にトランザクションロジックやセキュリティロジック、ドメインロジックのワークフロー等のドメインロジックとは直接関係ないロジックを含むのみで、大きなドメインロジックを含むことは好ましくないとされる層です。 では、パーシステンス層です。ここまで、役割的には、データアクセスの実装を

    koko1000ban
    koko1000ban 2009/06/25
    すっごいわかりやすい
  • The TurboGears Documentation — TurboGears 2.4.3 documentation

    TurboGears is a Python web framework based on the ObjectDispatch paradigm, it is meant to make possible to write both small and concise applications in Minimal mode or complex application in Full Stack mode.

  • Slowloris HTTP DoS

    Slowloris HTTP DoSCCCCCCCCCCOOCCOOOOO888@8@8888OOOOCCOOO888888888@@@@@@@@@8@8@@@@888OOCooocccc:::: CCCCCCCCCCCCCCCOO888@888888OOOCCCOOOO888888888888@88888@@@@@@@888@8OOCCoococc::: CCCCCCCCCCCCCCOO88@@888888OOOOOOOOOO8888888O88888888O8O8OOO8888@88@@8OOCOOOCoc:: CCCCooooooCCCO88@@8@88@888OOOOOOO88888888888OOOOOOOOOOCCCCCOOOO888@8888OOOCc:::: CooCoCoooCCCO8@88@8888888OOO888888888888888888OOOOCCCooooo

  • どさにっき

    2009年6月24日(水) ■ slowloris _ 最近話題になってる Apache その他に対する DoS 攻撃ツール slowloris。中途半端なリクエストヘッダを送って、宙ぶらりんのままの HTTP セッションを大量に生成させてサーバ側のリソースをパンクさせる、という理屈らしい。消化しきれない中途半端なリクエストを Apache がおうとしてるのが原因ってことだから、ちゃんと消化できる状態になるのを待ってから Apache にわせるようにしてやればこの攻撃にも耐えられるよね、きっと。 _ ということで試してみた。 AcceptFilter。FreeBSD で AcceptFilter http httpready と設定すると、accf_http(9) を利用してカーネルレベルで HTTP リクエストをバッファリングして、リクエスト全体を受信完了するまで apache にリ

    koko1000ban
    koko1000ban 2009/06/25
    accf_httpの有効化を忘れずに
  • DBD::Pg でリクエスト並列化 - kazuhoのメモ置き場

    PerlからPostgreSQLに非同期アクセスする方法 - iakioの日記 - postgresqlグループ を見てほぉぉと思って、IRC で話したりしながら適当に書いてみた。たぶんこんな感じ。動かしてないけど。 use DBD::Pg qw(:async); # send queries for my $dbh (@dbh_list) { $dbh->execute(...); } # and wait until all responses arrive my %pending = map { +($_->{pg_socket}, [ IO::Handle->new_from_fd($_->{pg_socket}), $_ ]) } @dbh_list; my $sel = IO::Select->new(); $sel->add($_->[0], 'r') for values

    DBD::Pg でリクエスト並列化 - kazuhoのメモ置き場
  • ML や Haskell でよく見る ' (プライム) 記号がうらやましかった件について - (new Hatena).blog()

    数学でよく使われる記号だと思うんですが、ML系のプログラムとか論文を読んでいると、1重引用符が識別子の後に付けられているのをよく見かけます。 ある関数の変種とか、ある変数に基づいて一時変数を作る時などに、いちいち新しい名前を考えなくて済むので便利なんですよね。 でも Scheme や Lisp では、この記号は quote の省略形という特別な意味を持っているので、使いたくても使えません。 で、何か良い案は無いものかとずっと思っていたんですが、ついに思い付きました。 チルダです。 (define (map~ f l) (cond ((null? l) l) ((f (car l)) => (lambda (x) (cons x (map~ f (cdr l))))) (else (let* ((t (cdr l)) (t~ (map~ f t))) (if (eq? t t~) l (co

    ML や Haskell でよく見る ' (プライム) 記号がうらやましかった件について - (new Hatena).blog()
  • https://www.pylot.org/

  • Firefox3.5RCにしたらvimp/ldrize_cooperation.jsでエラーが出ていたのでなんとかした « ふぃふmemo

    Firefox3.5 RCがリリースされているのでそろそろ移行準備をしようと思って入れてみました。 そしたら、vimpのldrize_cooperation.jsがエラーを吐いて動きません。 Googleの検索結果でjk叩くとこんなメッセージがでます。 Processing keypress event: TypeError: this.LDRize.getSiteinfo is not a function で、結論から言うとFirefox 3.0.2の時に動かなくなったときと同じ方法で対処したらエラーは出なくなりました。 Firefox に凹まされた件 - KBDAHOLIC - やぬすさんとこ 上記エントリーを参考(というかそのままですけど)にした、現時点でCodeReposのtrunkに上がっているものに当てるパッチはこんな感じになります。 PLAIN TEXT TEXT: --

  • yebo blog: iPhone 3GSはAppleが言う以上に高速かも

    2009/06/25 iPhone 3GSはAppleが言う以上に高速かも 携帯広告と統計分析のMedialetsという会社が JavaScriptパフォーマンステスト SunSpider v0.9 を使って、iPhone 3G、Palm Pre、Android G1 と iPhone 3GS を比較したところ、iPhone 3GS は iPhone 3G の 3倍ほど高速という結果が出たそうだ。この手のベンチマーク結果は眉唾だったり体感速度に結びつかないものが多いので、参考くらいに思っておくべきだろう。ただ、びっくりしたのは、ベースラインに使われている2GHz Core 2 Duo のMacBookiPhone 3GS には12倍しか開きが無いという点だ。数年後には、ノートPC並の速度が得られるようになるということだろう。ますます欲しくなるな、iPhone 3GS。 投稿者 zub

    koko1000ban
    koko1000ban 2009/06/25
    欲しくなってきた
  • zshでsudoや|を無視して履歴から補完 @ 7bit

    zshでhistory-beginning-search-backwardをCtrl-Pなどに割り当て、入力したところまでマッチするように履歴から補完するように設定している方は多いと思います。 しかし、プロンプト先頭からカーソル位置までが検索対象となってしまうため、先にsudoを入れたり、パイプの途中から補完するといったことはできません。 そこで、現在のプロンプト入力からいくつか指定のパターンを除外した上で補完できるようなzleのウィジェットを書いてみました。 履歴に sudo apt-get update make make install ldconfig less があったとして、普通は sudo m(補完)としても何も補完されませんが、この設定を用いるとsudo make install => sudo makeのように補完してくれます。 sudo (補完)(補完に必要な文字列を何

  • ReadMe (Libera Memory)

    Libera Memory Mac OS X はディスクアクセス時に生成される IO バッファをメモリ内にキャッシュとして保持し続けます。再度ディスクアクセスが発生した時にそのバッファキャッシュを使うことで処理を速くする仕組みになっています。この仕組みを Unified Buffer Cache(UBC)といいます。 アクセスがなければ古いバッファキャッシュから消えていきます。普通に OS を使う程度であれば、UBC は快適さを提供してくれます。しかし、たとえば巨大なファイルを多量に次から次へと処理し続けるような状況では、再利用されることのない不要なバッファキャッシュがどんどん溜まり、物理メモリの空き容量が圧迫されてシステムのパフォーマンスが低下してしまうことがあります。 技術には必ず「落としどころ」があります。それが優れた技術であるならなおさらです。UBC もすべての状況でその利点を発揮

  • MySQL::Sandbox (2) - 日向夏特殊応援部隊

    MySQL::Sandbox - Yet Another Hackadelic の続きです。 make_replication_sandbox でレプリ環境をサクっと作る レプリ環境もサクっと作れます。前と同じバイナリがあるとしたら、 $ make_replication_sandbox /home/zigorou/tmp/mysql-5.0.82-linux-i686-glibc23.tar.gz executing "clear" on slave 1 executing "clear" on slave 2 executing "clear" on master installing and starting master installing slave 1 installing slave 2 starting slave 1 . sandbox server started s

    MySQL::Sandbox (2) - 日向夏特殊応援部隊