タグ

ブックマーク / dsas.blog.klab.org (34)

  • WindowsでPython Scriptの起動用exeを用意する : DSAS開発者の部屋

    MercurialやTaskCoachといったPython製ツールをWindows上で使うとき、py2exeでビルドして配布されているパッケージを利用するとインストールはとても簡単なのですが、アプリ毎にpython25.dllといったdllやPythonモジュール群が大量にインストールされるのが欠点です。 普段からPythonを利用している人にとっては、distutilsを利用したインストール(easy_installやsetup.py install)の方がメモリ効率の面でも起動速度等の面でも有利な筈です。僕はできるだけこちらの方法を使っていて、起動速度・最小化解除のレスポンス共に向上することが体感できます。(プラシーボ効果かもしれませんが) ただし、Mercurialをeasy_installしたところ、hg.exeが生成されず、Pythonをインストールしたディレクトリの下のScri

    WindowsでPython Scriptの起動用exeを用意する : DSAS開発者の部屋
  • 最近のmemcached界隈の賑わいについてのメモ : DSAS開発者の部屋

    repcachedの開発をしている関係で、昨年あたりからmemcached界隈のウォッチを強化しています。 昨日のエントリでもちょっと書いたんですが、なぜかここ最近、にわかにmemcached界隈が賑やかになってきている感があります。具体的には、memcached互換の実装がいろいろと現れたり、新しいクライアントライブラリが登場したりなど。 そんなわけで、最近わたしが気になっている、memcached関連のあのプロダクトやこのプロダクトをささっとまとめてみたいと思います。 クライアントライブラリ (C) libmemcached Brian Akerさんによる、C言語用のライブラリ。 既存のC言語用のライブラリである、libmemcacheとapr_memcacheに続く、第3のC言語用ライブラリです。 Consistent Hashingも実装しているようです。 いままでベンチマークプロ

    最近のmemcached界隈の賑わいについてのメモ : DSAS開発者の部屋
  • memcached-1.2.4で追加されたコマンドのメモ : DSAS開発者の部屋

    なぜか最近になってまた動きが活発になってきた気がするmemcachedですが、ちょっと前(2007-12-06)にリリースされたmemcached 1.2.4からプロトコルコマンドが追加されました。 append prepend gets cas 今回は、これら新しく追加されたコマンドについて、軽く説明してみたいと思います。 なお、クライアントライブラリが新コマンドに対応していたりいなかったりするので、今回はクライアントライブラリを使用せず、直接memcachedにつないで、プロトコルをしゃべって動作を確認したいと思います。(memcachedプロトコルは、doc/protocol.txtに詳しい解説がありますのであわせて読むといいと思います) で、おしゃべるにはtelnetやncでもいいんですが、今回はsocatを使います。localhostの11211に繋ぎたい場合にこんな感じで実行す

    memcached-1.2.4で追加されたコマンドのメモ : DSAS開発者の部屋
  • mod_mod: Apache module を動的にコンパイルして実行する Apache module : DSAS開発者の部屋

    現在 WEBアプリケーションの開発言語といえばいわゆる Light Weight Langage が主流の様な気がしますが、C言語で WEBアプリケーションを書きた いと思った時、どのような方法があるでしょうか。一つはコンパイルした実行 オブジェクトを CGI として呼び出す方法、もう一つは apache module を書く という方法があると思います。 CGI の場合プロセス起動のオーバーヘッドがありますが apache module の 場合非常に高速です、にも関わらず apache module による WEB アプリケーショ ンの開発があまり流行っていないのはやはり、コード変更の度にコンパイルし なければならない事と、反映の際に apache を再起動しなければならない事が 原因ではないかと思います。 そこで、apache module っぽい C言語のコードをサーバー上で動的に

    mod_mod: Apache module を動的にコンパイルして実行する Apache module : DSAS開発者の部屋
    lizy
    lizy 2008/01/31
    肉G係
  • Ant とテキストエディタではじめる Android : DSAS開発者の部屋

    皆様、新年あけましておめでとうございます。今年もよろしくお願いいたします。 さて、The Open Handset Alliance が発表した Android SDK ですが、既に Eclipse + Eclipse Plugin を使用してお試しになられた方もいらっしゃるかと思 います。 私は通常の開発業務で Eclipse を使っているのですが、plugin を入れすぎたせ いか動作が重いので、もっと軽い環境で開発できたらと思ってました。という 訳で Emacsと か vi などのテキストエディタを使って Android のアプリケーション を開発できる方法をご紹介します。 今回ご紹介する方法は以下の環境で行いました。 Mac OS X 10.5 apache ant 1.7.0 Android SDK (android_sdk_darwin_m3-rc22a) java 1.5.0

    Ant とテキストエディタではじめる Android : DSAS開発者の部屋
  • Jabberサーバーをクラスタリングしてみました。 : DSAS開発者の部屋

    みなさん Jabber をご存じですか? Jabber はオープンな仕様のメッセン ジャーサービスのことで最近だと Google Talk で使用している方が多いと思 います。 KLab では 2001年ぐらいから、誰でも Jabber を使うことが出来る Jabber.JP というサービスを運用してい ます。まだ Jabber を使用したことがない方は是非こちらの「Jabber をはじめよう」 を ご覧になって Jabber を使ってみて下さい。 Jabber.JP は jabberd という実装を使用してい たのですが、冗長構成が難しいという問題がありました。 そこで先日、Jabber.JP では大規 模なメンテナンスを行い ejabberd という実装で分散、冗長化を行ってみました。ejabberd はその名の通り、Erlang で 実装された Jabber サーバーで、Mnesia

    Jabberサーバーをクラスタリングしてみました。 : DSAS開発者の部屋
  • DSAS開発者の部屋:KLab勉強会#3の資料を公開します

    11/2に開催した、第3回KLab勉強会の資料と音声を公開します。 『DSASのここんとこ - ネットワークブート編』 〜 安井 真伸 (KLab株式会社) 発表資料 (PDF, 302 KB) 音声 (MP3, 39592 KB) 『Erlang による高可用システムの構築』 〜 濱野 司 (KLab株式会社) 発表資料 (PDF, 148 KB) 音声 (MP3, 30,202 KB) たくさんの方にお越しいただきありがとうございました。 おかげさまで、懇親会も含め盛況のうちに終わり、とても楽しい時間を過ごすことができました。 このまま、第4回、第5回と続けていければいいなあと思っています。 勉強会の内容や参加募集など、決まり次第このブログでアナウンスしますので、今後も購読していただければと思います。

    DSAS開発者の部屋:KLab勉強会#3の資料を公開します
  • DSAS開発者の部屋:Windows用フリーウェア「HttpLogger」を公開します

    2013-12-24: お知らせ ソフトウェアの所作がプログラム開発時の意図とは異なるケースをこの間に何件かご報告頂いています。ソフトウェアは公開以来ご好評を頂いており、最新の環境へ追従すべく可能な限りの保守を継続してきましたが、現時点では新たに調査・改訂を行う目処が立っておりません。そのため、大変残念ですがソフトウェアの公開を一時的に停止させて頂きます。ご利用者の皆様におかれましては何卒宜しくご理解・ご了承下さいますようお願い致します。 2012-11-15: お知らせ 以下の問題に対応したテスト版パッチモジュールを公開します。 HttpLogger を有効にした状態で Windows 8 (32bit / 64bit) 初出の Internet Explorer 10 を起動するとエラーが発生する。 この版には先日パッチを公開した「Firefox 12 以降での動作不良に関する修

    DSAS開発者の部屋:Windows用フリーウェア「HttpLogger」を公開します
    lizy
    lizy 2007/11/05
    これは便利そう
  • DSAS開発者の部屋:特集記事『Linuxロードバランサ構築・運用ノウハウ』を公開します

    Linuxロードバランサ構築・運用ノウハウ』を公開します! これはWEB+DB PRESS Vol.37の特集記事としてDSASチームが執筆したもので、技術評論社様の許可を得て今回公開するはこびとなりました。 一口でいうと、「Linux+IPVS+keepalivedを使って、冗長構成(Active/Backup)のロードバランサを作るまで」の解説記事で、 サーバ負荷分散一般についてのはなし Linuxでロードバランサを作ってみる ロードバランサを冗長化 といった構成になっています。 みなさんがLinuxロードバランサを導入・構築・運用する際の一助になれば、DSASチームとしてもうれしい限りですので、是非、ご覧になってください! 第1章 サーバ負荷分散概論 特集のはじめに なぜサーバ負荷分散をするのか? サーバ負荷分散の実現方法 ロードバランサのいる構成 ロードバランサはなにを元に分散す

    DSAS開発者の部屋:特集記事『Linuxロードバランサ構築・運用ノウハウ』を公開します
    lizy
    lizy 2007/10/09
  • DSAS開発者の部屋:Win32 プログラムのデバッグTips (1)

    ■ はじめに ひとつのプログラムを完成させるまでには、多くの場合「デバッグ」という作業が必要です。 まったくバグのないプログラムを一気に書き上げるのは難しいことですから、 プログラミングの際には実行時のエラーを見つけやすくするための工夫が必要ですし、 実際にエラーが発生した場合にはできるだけ手際よく対処したいものです。 デバッグを行う上での最初の目標である「原因の特定」を効率的に行うための ツールや流儀はプラットフォームや使用言語により一様ではありませんが、 ここではネイティブな Windows プログラムをデバッグする上で役に立つ小技をいくつかとり上げてみたいと思います。 今回は、自作のプログラムの実行中にプロセスが異常終了する状況において、 問題箇所を手早く探すための方法のひとつをご紹介します。 記事では Microsoft Visual C++ を開発環境と想定しています。 どうやら

    DSAS開発者の部屋:Win32 プログラムのデバッグTips (1)
  • Erlang版 memcached でキャッシュデータの永続化をしてみました。 : DSAS開発者の部屋

    幾つかの改変を行った ememcached ver 0.3 をリリースします。 主な変更点は、 ディスク書き込みによるキャッシュの永続化 キャッシュデータをディスクに書き込むことで再起動してもキャッシュデータ が消えないように出来るようになりました。 キャッシュデータのガベージコレクション 以前のバージョンには Expire したデータが残り続けるという問題がありました。 autoconf/automake 化 ./configure && make でビルドできます。 ダウンロード: ememcached-0.3.tar.gz Mnesia はテーブル毎に3種類のデータの格納方法が選択できます。 ram_copies メモリに格納されます。ememcached-0.2 で使用していたタイプで高速ですが 再起動すると消えてしまいます。 disc_copies ram_copies 同様デー

    Erlang版 memcached でキャッシュデータの永続化をしてみました。 : DSAS開発者の部屋
  • Erlang で memcached を作ってみました。 : DSAS開発者の部屋

    先日、こちらの Erlang の世界ではmemcachedとか要らない を興味深く読ませて頂きました。 たしかにクライアント側も Erlang で書かれている場合、例えばキャッシュサー バーにアクセスを行う WEB アプリケーションも Erlang で書かれていれば Erlang のプロセス間通信を使用することで簡単にキャッシュサーバを実装する ことが出来そうです。しかし、WEB アプリケーションなど、全てのシステムを Erlang で書くにはまだ私にとって勇気が要る事なので TCP/IP で memcache プ ロトコルを喋る Erlang 版 memcached を作ってみました。 その名も ememcached です。 % ememcached.erl -module(ememcached). -export([start/0, ememcached/1, process_comm

    Erlang で memcached を作ってみました。 : DSAS開発者の部屋
  • Erlang で付箋Webアプリケーションを作ってみました。 : DSAS開発者の部屋

    インターネットを見ていて、そのときの感想とかページの内容に対して思っ たことなんかを簡単に書き留めておけると便利かなと思い、適当なWebのペー ジ上にブラウザで表示したまま付箋をつけられる WEB アプリケーションを、最近流 行の Erlang 作成してみました。 付箋 Web の実験デモサイトはこちらです。 http://husen.lab.klab.org/ 付箋Webの概要は 付箋のデータは専用の付箋Webサーバ上に保存される。 ブラウザー上ではAjaxで付箋Webサーバと通信する。 ブックマークレットを使って、任意のページで付箋を使えるようにする。 実際に作成しようとすると、他人のページに、ほかのサーバのデータを使って 重ね書きするので工夫が必要になります。最初に考えたのは、IFRAMEを使って 他人のページを表示する方法でしたが、これだけだと使いづらいので、ブック マークレットを

    Erlang で付箋Webアプリケーションを作ってみました。 : DSAS開発者の部屋
  • DSAS開発者の部屋:オープンソースを楽しむエンジニアの一日 〜 コードを楽しく読む工夫

    C言語で書かれたソースコードを読んでいるとき、関数ポインタから呼び出されている機能の実体がどこに書かれているのかを探すのに苦しんだ経験はありませんか? 私はあります、いっぱいあります!! そんなときはどうするかというと・・・ 手順1: まずは気分転換をする! 手順2: そして気合いを入れ直す! 手順3: さらに気力で読み砕く! 手順4: 最後に根性で発見する! これが、ごく一般的な作業手順(?)かと思います・・・(ごめんなさい嘘です) でもまあ、実際にここまで出来れば、そのプログラムの大まかな構成とか癖みたいなものはだいたい把握できているはずなので、他の関数ポインタについてもある程度当たりをつけて見つけだすことが出来るようにはなるかと思います。 ・・・・・が、、できれば気合いと根性を使わずに追えるなら追いたいのが人情ですよね。 straceやltraceを使えばシステムコールやライブラリコ

    DSAS開発者の部屋:オープンソースを楽しむエンジニアの一日 〜 コードを楽しく読む工夫
    lizy
    lizy 2007/05/26