Python ポケットリファレンス

Posted by Ken on 5th, 2009

Python pocket reference
Python ポケットリファレンス

昨日買い忘れた一冊を購入。

Pyinotifyなんてものがあった!

Posted by Ken on 24th, 2009

■Pyinotify
http://trac.dbzteam.org/pyinotify
こんな便利なものがあるじゃん!
今日はインストールだけしとくか。

sudo easy_install pyinotify
完了。

py-kqueueがインストール出来ない

Posted by Ken on 23rd, 2009

py-kqueueという便利そうなものを発見。

■py-kqueue – スコトプリゴニエフスク通信
http://d.hatena.ne.jp/perezvon/20080330/1206879201
ここにあるように、

sudo easy_install py-kqueue

で、インストール・・・出来ない!!
sys/event.hが無いんだって。

sudo aptitude install libevent-dev

これで、event.hはインストールされたはずだが同様のエラー。
kqueuemodule.c内の”sys/event.h”を”event.h”に変えてもエラー発生。

う~ん・・・。

ファイルの監視

Posted by Ken on 23rd, 2009

効率のよい、ファイルの監視はどうすべきなのだろうか?
特定のディレクトリ配下を毎回全スキャンしても、平気なくらいのファイル数しかないが、それでも0.5秒に一回スキャンするのはちょっと・・・と思いつつ、ファイルをハッシュで管理しても、変更があったか確認するために変更時刻は比較してるしなぁ。
変更時刻を得る処理は重たいのか?
この辺は・・・カーネル関係の本が必要?

ちょっと調べたらこんな感じ。
■ファイル更新の監視 どう書く?org
http://ja.doukaku.org/15/nested/#comment461
・・・って自分で書いたのと変わらない。
これでいいのかな?

.Net FrameworkにはFileSystemWatcherなるものがあるらしい。
■FileSystemWatcher クラス (System.IO)
http://msdn.microsoft.com/ja-jp/library/system.io.filesystemwatcher(VS.80).aspx

アセンブリ: System (system.dll 内)

なんて書いてあるけど、こいつはカーネルレベルで監視!?
どっちにしても.Netは関係ないんだけど :roll:

定期的に呼ぶ必要があるRPC

Posted by Ken on 21st, 2009

RPCで呼び出したシステムが動作してくれない。
と思ったら不具合なのか仕様なのかわからないけど、定期的に関数を呼ぶ必要があるようだ。
その関数と言うのはなんでもよくて、
def dummy(self):
pass

なんてのでもOK。
これってひどくないか?

RPCで呼びたいときに呼んでるのに、定期的に(例えば0.5秒間隔)関数を呼ばなければならないのか?
ちょっとソースを見てみたけど、どこが原因かわからず。
TCP関連のソースまで辿り着いてしまったので、この件はバージョンアップと供に解決すことを願い、後回し。

彼は・・・チュートリアルの作者!

Posted by Ken on 19th, 2009

Comet Daily » Blog Archive » Scalable Real-Time Web Architecture, Part 2: A Live Graph with Orbited, MorbidQ, and js.io
http://cometdaily.com/2008/10/10/scalable-real-time-web-architecture-part-2-a-live-graph-with-orbited-morbidq-and-jsio/
このチュートリアルを参考していたが、なぜかエラーが・・・。
仕組みが分からずチュートリアルをやっていたこともあり、不明点だらけのため、なかなか進まず。
仕方ないので、エラー箇所を特定すべく、ひとつひとつ追って行った。
追えばデバッグの仕方も自然と身につくものだ・・・初めはあんなにわけのわからないエラーログが、読めばいい場所がわかってくる。

で、結果的に追っていくと最後のJSON通知でエラーが発生しているらしい。
早速ググってみると同じ現象の人発見!
Stomp / IE6 fixes) so I’d – Orbited Discussion | Google グループ
http://groups.google.com/group/orbited-users/browse_thread/thread/03486da9596e9dd1/c561d4a26e8e7046?show_docid=c561d4a26e8e7046&pli=1

さらに記事を読んでいくとpython-cjsonパッケージを使えと書いてある。
パッケージを使えとあるが、Python環境はここで閉じておきたいのでsetuptoolsを使う。
sudo easy_install python-cjson
これだけで解決した。
さらにコメントの主を見てみると・・・どこかで見覚えがあるMichael Carterさん。
チュートリアルの人だ!!
名前を覚えるつもりは無かったけど、何十回も見ていたページなだけあって、知らずと記憶に残ってたらしい。
これくらい追っていれば多少なりともなんか身に付くよね、と思った。

Django開発環境メモ

Posted by Ken on 7th, 2009

sudo aptitude install build-essential
sudo aptitude install python-dev

sudo easy_install twisted
sudo easy_install orbited
sudo easy_install morbid

[tutorial]How to: Django, Comet, Orbited, Stomp, MorbidQ, js.io | Thought Outflux | Anirudh Sanjeev
http://anirudhsanjeev.org/tutorialhow-to-django-comet-orbited-stomp-morbidq-jsio/

Comet Daily » Blog Archive » Scalable Real-Time Web Architecture, Part 2: A Live Graph with Orbited, MorbidQ, and js.io
http://cometdaily.com/2008/10/10/scalable-real-time-web-architecture-part-2-a-live-graph-with-orbited-morbidq-and-jsio/

ホームディレクトリにPythonの環境を整えてくれるvirtual pythonというものもあるのだが、Ubuntuの場合、site-packagesディレクトリではなく、dist-packagesという名前のせいで動作せず。
コードを書き換えるか、dist-packagesにシンボリックリンクを張れば解決出来そうだけど、ノートPC自体自分の環境なので今回はいいや。

Orbited

Posted by Ken on 17th, 2009

Orbited – Networking for the Web
http://orbited.org/
この情報、国内は少ない!

cometを使いたいのだが、ちょいとイレギュラーな使い方になりそうだ・・・。

LinuxでのPython2.6

Posted by Ken on 21st, 2009

今日は”おい〜!!”ってことがあったが、書けないので、書かず、Python2.6の話でも。

Ubuntu 8.10でPython2.6を使おうとすると何かと困る。
例えば、メニュー設定がうまく動かなかったり、dpkgの依存関係で怒られたり・・・と。
そんなわけで、Ubuntuの構成上は2.5を使い、Django関係は2.6を使うという状態になってる。

CentoOSでPython2.6 & mod_pythonを使おうとするとこれまた大変らしい。
パッケージ管理を行っているOSはパッケージで済ませたいところだが、そうも行かないらしい。
と言うわけで大変だったという話を聞いた。
SRPMを使えば依存関係をそれなりに維持しつつ出来るかもしれないが、テストする環境がないので、機会があれば。

Ubuntu 9.04ではPython2.6が搭載されてるということで楽しみだったりする。
・・・のだが、MacBookでいきなり動くとも思えないので、人柱の状況を見つつ、移行予定。

Ubuntuでメインメニューが開かない

Posted by Ken on 20th, 2009

Ubuntuのメニューを変更する”メインメニュー”が開かない。
原因はPython2.6にしたことだった。
意外とPythonがOSに関わっていることが多くてびっくり。

OSはPython2.5に戻し、Eclipseの設定だけPython2.6にしておこう。

Search


SUBSCRIBE

  • 最近のコメント

  • カテゴリー

  • タグ

    Amazon Android au BeagleBoard blog CMS Compiz Fusion Django DVD Google HT-03A iPhone ISMS Linux LUMIX LUMIX G1 MacBook MySQL Workbench OpenX Poken Python server Software Design SOY CMS TinyMCE Ubuntu Ubuntu 9.04 Vim VirtualBox WordPress wwwsqldesigner XenServer XMind しろいくも オトノハコ ハルフウェイ マンガ 岩岡 ヒサエ 帰省 広告 望遠鏡 桜井亜美 花粉症