Python入門者に贈る16の鍵

3月 7th, 2011 by

このエントリーは、Python入門者と、Python入門予備軍の方を対象としています。 どうしてPythonやるの? Pythonって覚えやすい言語なんです。といっても、それなりに使い.... Read more


Share and Enjoy

  • Facebook
  • Twitter
  • Delicious
  • LinkedIn
  • StumbleUpon
  • Add to favorites
  • Email
  • RSS

AmazonEC2 Tokyoリージョンオープン!

3月 5th, 2011 by

Pythonとは全く関係ないですが、AmazonEC2の東京リージョンがオープンしたので試してみました。作成したインスタンスはmicroです。1時間で0.02ドルなので、1ヶ月で1200円で運営できち.... Read more


Share and Enjoy

  • Facebook
  • Twitter
  • Delicious
  • LinkedIn
  • StumbleUpon
  • Add to favorites
  • Email
  • RSS

MacBookProでPythonを使ってうれしかったこと。

3月 4th, 2011 by

なんと、int型が64bitまで使えるんです。当たり前だけどうれしいです。 ::CODECOLORER_BLOCK_25:: windowsだと64bitCPU使っていてもこんな感じになります。Int.... Read more


Share and Enjoy

  • Facebook
  • Twitter
  • Delicious
  • LinkedIn
  • StumbleUpon
  • Add to favorites
  • Email
  • RSS

WordPress / Facebookのコメント表示プラグイン

3月 3rd, 2011 by

だまって↓インストールすれば、Facebookのコメントプラグインがすべての投稿とページにつくよ。動かなかったらごめん。 wp-facebook-comment .... Read more


Share and Enjoy

  • Facebook
  • Twitter
  • Delicious
  • LinkedIn
  • StumbleUpon
  • Add to favorites
  • Email
  • RSS

Memcachedで負荷が3分の1/GAE無料枠で1日200万PV

3月 1st, 2011 by

GAE/PythonのアプリにMemcached組み込んだら、CPU負荷が3分の1になった。

GAEは宇宙最強のデータセンタで動いてる。なら、負荷なんて気にしなくていい。お金さえあればね。ってことで、お金払いたくないので最適化しました。数行の変更で、性能3倍以上になっちゃいましたよ!!!!

最適化対象

ブログに埋め込むパーツです。シンプルですが、とあるまとめサイトに埋めたところ、1日数万リクエストがありました。Memcachedを使わなくても、1日50万PV程度は大丈夫だったのですが、最適化してみました。

スクリーンショット

スクリーンショット

Memcached導入による負荷の変化

赤い線がAPIが使ったCPU時間、青い線が全体のCPU時間です。Memcachedを組み込んだとたん、CPU使用量が3分の1になりました。特に、APIのCPU使用量は劇的に減っています。

無料利用分でどれだけつかえるの?

超過しそうなリソースはCPU時間とOutboundの転送量。それぞれ1リクエスト当たり10msと400byteです。

CPU無料枠
6.5時間/10ms = 234万PV

Outbound転送無料枠
1GB/400byte = 250万PV

これなら、1日200万PVは余裕ですね。

Memcached組み込み後のソースコード

※Memcachedを組み込む際には、元のデータの更新にあわせて、Memcachedのキャッシュをクリア(もしくは新しい値を上書き)すること。さもないと古いデータが表示され続けます。

データ読み取り処理(quickGet)
 Memcachedにデータがあるか確認します。あれば使います。なければ、DataStoreから取得しMemcachedに保存します。

データ書き換え処理(18行目)
 DataStoreに保存したデータと同じものをMemcachedに保存します。

Share and Enjoy

  • Facebook
  • Twitter
  • Delicious
  • LinkedIn
  • StumbleUpon
  • Add to favorites
  • Email
  • RSS

記事の末尾に「いい」「だめ」ボタンをつけました。

3月 1st, 2011 by

世間ではFacebookなどの「いいね」ボタンがすごく注目されていますが、敢えて、「いい」「だめ」ぼたんを自分で実装してみました。

何ができるの?

個別記事に以下のソースを埋めてると「いい」「だめ」ボタンが表示されます。いいの数のランキングも見れます。
※site=の後ろのxxxxを自分を識別するコードに書き換えてください。英数で適当に・・

1
2
<script>window.onload = function(){ document.getElementById("like_dislike").src="http://like-or-dislike.appspot.com/?site=xxxx&title="+encodeURI(document.title)}</script>
<iframe id="like_dislike" style="border:none;background-color:#fff;width:180px;height:30px"></iframe>

このブログランキングは以下のアドレスで確認できます。
http://like-or-dislike.appspot.com/?site=001

何でつくったの?

なんでつくったんだろうね。理由あげるとすると、こんなところかな。

  • いいね、だけじゃなくて、だめボタンをつけたかったから。
  • 単に実装してみたかった
  • サイト内のランキングを表示したかった
  • 外部サービスに依存したくなかった
  • 改良予定

    OAuthでログインして、自分専用のコードを発行できるようにする予定です。

    ソースコード

    おやくそくのソースコードです。まだバージョン管理してません。明日、Githubに登録するよていです。

    Share and Enjoy

    • Facebook
    • Twitter
    • Delicious
    • LinkedIn
    • StumbleUpon
    • Add to favorites
    • Email
    • RSS

    【無料】GAE使ってみない?【無広告】

    2月 27th, 2011 by

    みなさん、Google App Engineって聞いたことありますか? あっ、それしってる。Google Docsとかでしょ?って思った方。惜しいけど違います。 Google App Engineとは.... Read more


    Share and Enjoy

    • Facebook
    • Twitter
    • Delicious
    • LinkedIn
    • StumbleUpon
    • Add to favorites
    • Email
    • RSS

    python-blog-systemを改良

    2月 27th, 2011 by

    今日はpython-blog-systemの改良を進めていました。といっても新機能を実装したというよりは、不具合修正やら、設定の外部化やら地味な作業が中心でした。 ソースコードはこちら https:/.... Read more


    Share and Enjoy

    • Facebook
    • Twitter
    • Delicious
    • LinkedIn
    • StumbleUpon
    • Add to favorites
    • Email
    • RSS

    python-blog-systemをgithubに登録

    2月 27th, 2011 by

    python-blog-systemのソースコードをgithubに登録しました。まだまだ完成度の低いブログシステムですが、参考にしていただければと思います。forkして改造したり、機能の改善点や、バグ.... Read more


    Share and Enjoy

    • Facebook
    • Twitter
    • Delicious
    • LinkedIn
    • StumbleUpon
    • Add to favorites
    • Email
    • RSS

    本日の予定

    2月 26th, 2011 by

    今日は、昼間にちょっとした事故があったのですが、落ち込んでいても仕方がないので勉強はじめます。しばらくGitの勉強をして、プロジェクトをGitHubに登録したあと、Pythonで何かやろうと思います。.... Read more


    Share and Enjoy

    • Facebook
    • Twitter
    • Delicious
    • LinkedIn
    • StumbleUpon
    • Add to favorites
    • Email
    • RSS

    gaecronの許可ユーザ数を80に変更

    2月 25th, 2011 by

    gaecronを運用しているのですが、残アカウント数が少なくなってきたにもかかわらず、リソースにかなりの余裕があるので、ユーザ数上限を50から80に増やしました。最もリソース使用率の高い、Inboun.... Read more


    Share and Enjoy

    • Facebook
    • Twitter
    • Delicious
    • LinkedIn
    • StumbleUpon
    • Add to favorites
    • Email
    • RSS

    MacBookPro注文しました

    2月 25th, 2011 by

    衝動買い・・ではないです。予定通りです。でたら買うつもりだったので。 ご注文された商品 数量 単価 商品合計 15インチ MacBook Pro 製品番号: Z0LZ iWork(プリインストール) .... Read more


    Share and Enjoy

    • Facebook
    • Twitter
    • Delicious
    • LinkedIn
    • StumbleUpon
    • Add to favorites
    • Email
    • RSS

    WordPress3.1にアップデート

    2月 24th, 2011 by

    このサイトはWordpressで運営しているのですが、先ほどWordpress3.1にアップデートいたしました。アップデートはボタン1つで終わるのですが、アップデート処理に約5分程度かかりました。閲覧.... Read more


    Share and Enjoy

    • Facebook
    • Twitter
    • Delicious
    • LinkedIn
    • StumbleUpon
    • Add to favorites
    • Email
    • RSS

    本日の作業予定

    2月 24th, 2011 by

    Gitについて軽く勉強してから、python-blog-systemのソースコードをGitHubに登録しようと思います。 .... Read more


    Share and Enjoy

    • Facebook
    • Twitter
    • Delicious
    • LinkedIn
    • StumbleUpon
    • Add to favorites
    • Email
    • RSS

    db.Modelに@Propertyを追加

    2月 24th, 2011 by

    PySNSの日記の投稿日時表記をUTCからJSTに変更しました。日時計算を複数回実装するのはDRYの原則に反するので、Modelにプロパティーを追加し、そのプロパティーの値を表示するように変更しました.... Read more


    Share and Enjoy

    • Facebook
    • Twitter
    • Delicious
    • LinkedIn
    • StumbleUpon
    • Add to favorites
    • Email
    • RSS

    hackme、Lv3は突破できた

    2月 23rd, 2011 by

    Lv3は突破できた。穴っぽいとこに穴はあって、普通に掘り進めば解けた感じ。まー、がんばればなんとかなるとおもう。 だけど、Lv4は怪しい所すら見当たらない。画面の配色変わったけど、これって特に意味ない.... Read more


    Share and Enjoy

    • Facebook
    • Twitter
    • Delicious
    • LinkedIn
    • StumbleUpon
    • Add to favorites
    • Email
    • RSS

    pySNSを微調整

    2月 23rd, 2011 by

    今日は、hakemeで遊んでしまい、pySNSの開発はほとんど進みませんでした。ユーザ数表示の追加と、全体のリファクタリングをしかできませんでした。 hackmeはLv2まで突破できました。エラーメッ.... Read more


    Share and Enjoy

    • Facebook
    • Twitter
    • Delicious
    • LinkedIn
    • StumbleUpon
    • Add to favorites
    • Email
    • RSS

    本日の実装結果

    2月 22nd, 2011 by

    今日はPySNSの実装を進めました。仮ではありますが、友達システムが動作するようになりました。 当初の予定 実装予定の機能 ・友達登録機能 ・日記への画像添付機能 ・プロフィール画面にプロフィール画像.... Read more


    Share and Enjoy

    • Facebook
    • Twitter
    • Delicious
    • LinkedIn
    • StumbleUpon
    • Add to favorites
    • Email
    • RSS

    GAE/Python デプロイ遅延中

    2月 21st, 2011 by

    先ほどからGAE/Python環境、デプロイがし辛い状況になっています。そのうち解消すると思うので、ローカルで出来る開発を進めます。 ::CODECOLORER_BLOCK_32:: .... Read more


    Share and Enjoy

    • Facebook
    • Twitter
    • Delicious
    • LinkedIn
    • StumbleUpon
    • Add to favorites
    • Email
    • RSS

    本日はPySNSに機能追加します

    2月 21st, 2011 by

    実装予定の機能 ・友達登録機能 ・日記への画像添付機能 ・プロフィール画面にプロフィール画像を表示 ・友達の日記表示機能 2時間ほどしか作業できなさそうなので、どこまで出来るかは疑問です。午後10時頃.... Read more


    Share and Enjoy

    • Facebook
    • Twitter
    • Delicious
    • LinkedIn
    • StumbleUpon
    • Add to favorites
    • Email
    • RSS

    Get Adobe Flash player