タグ

2009年12月25日のブックマーク (21件)

  • Tokyo (Cabinet|Tyrant)でインデックスを張る

    最近Tokyo Cabinet(正確にはTokyo Tyrant経由でTokyo Cabinet)のテーブルデータベースを使っているんですが、どうも検索が遅いなぁと思ったらインデックスを張り忘れてて、Tokyo (Cabinet|Tyrant)でどうやってインデックスを張るのかを調べたので、そのまとめです。 実際にTCのテーブルデータベースでインデックスをどう張るのかというと、foo.tctってDBのnameってカラムにインデックスを張るとすると % tctmgr setindex foo.tct name ってやればOK。実際には張るインデックスのタイプが選べますが、その辺はドキュメントに載っていますのでそちらをご覧ください。 PerlモジュールのTokyoCabinetを使って張る場合は、 my $tdb = TokyoCabinet::TDB->new; $tdb->open("fo

  • スピンロック - Wikipedia

    この項目では、計算機科学におけるスピンロックについて説明しています。核磁気共鳴におけるスピンロックについては「交差分極」をご覧ください。 スピンロック(英: spin lock, spinlock)[1]とは、計算機科学におけるロックの一種で、スレッドがロックを獲得できるまで単純にループ(スピン)して定期的にロックをチェックしながら待つ方式。スレッドはその間有益な仕事を何もせずに動作し続けるため、これは一種のビジーウェイト状態を発生させる。獲得されたスピンロックは明示的に解放するまでそのまま確保されるが、実装によってはスレッドがブロック(スリープ)したときに自動的に解放される場合もある。 スレッドが短時間だけブロックされるならば、スピンロックは効率的であり[2]、オペレーティングシステムのプロセススケジューリングのオーバーヘッドを防ぐことにもなる。このため、スピンロックはカーネル内でよく使

  • http://1978th.net/tech/promenade.cgi?id=68

  • http://1978th.net/tech/promenade.cgi?id=39

  • munin で困ったときは munin-node-configure してみる - trial and error

    munin いじってると、たまに動かなくなったり、プラグイン追加したかったのに、なんかできなかったり、いろいろ予想外の事態にはまることがあったりします... まあ、munin とっても便利なんですが... で、いろいろ調べてみると munin-node-configure なんてものあったんですね。 これが、かなり便利そうなツールなのでメモ。 まずは、--suggest プラグインが動かない、どのプラグインが使えるのかわからない、とか言った時は、これを実行すれば解決するかも。 手動ですでにプラグインをロードさせた状態 (/etc/munin/plugins に symlink がある状態) だとだめなので、一度消しましょう。   # munin-node-configure -suggest Plugin | Used | Suggestions ------ | ---- | -----

    kamipo
    kamipo 2009/12/25
  • Simple Gimmick » Blog Archive » monitでプロセスを監視する (2) 設定ファイル

    前回に引き続いて、monitについて。今回は設定ファイルの書き方である。 設定ファイル概要 monitの設定ファイルの中には、大きく分けて3つの区分がある。1つはデーモンとしての動作やメール送信先など、全体に共通の設定、2つめは、外部設定を読み込むための設定、3つめは監視対象ごとの設定である。 全体の設定として最低限必要と思われるものは以下である。 ディレクティブ 機能

  • Stray Penguin - Linux Memo (monit)

    設定例: from: monit@host1.hoge.cxm subject: $SERVICE $ACTION on $HOST message: Action:$ACTION taken because $DESCRIPTION Date: $DATE Host: $HOST Event: $EVENT ヘッダ区分や message: 直後のスペースは除き、文内のスペース、タブ、改行などは記述の通りに送信される。 set alert ディレクティブ 上記にも絡むが、どういう時にだけ報告メールを送るかというデフォルトセッティングを規定しておくことができる。この設定をしない場合、MONIT 自体の終了や起動、再起動の時にも報告が来る。これを陶しいと思うのは筆者だけだろうか。レポートするイベントを下記のように明示しておけばそれをやめさせることができる。 オフィシャルドキュメントでも m

  • いますぐ実践! Linuxシステム管理

    「いますぐ実践! Linux システム管理」はこちらです。 メルマガの解除、バックナンバーなども、以下からどうぞ。 https://www.usupi.org/sysad/ (まぐまぐ ID:149633) その他、作者に関するページは、概ね以下にございます。 https://www.usupi.org/kuri/ (まぐまぐ ID:126454) http://usupi.seesaa.net/ (栗日記ブログ) https://twitter.com/kuriking/ (twitter) https://facebook.com/kuriking3 (facebook) https://jp.pinterest.com/kuriking/pinterest) https://www.instagram.com/kuri_king_/ (instagram) [バックナンバーのトップへ

  • いますぐ実践! Linuxシステム管理

    「いますぐ実践! Linux システム管理」はこちらです。 メルマガの解除、バックナンバーなども、以下からどうぞ。 https://www.usupi.org/sysad/ (まぐまぐ ID:149633) その他、作者に関するページは、概ね以下にございます。 https://www.usupi.org/kuri/ (まぐまぐ ID:126454) http://usupi.seesaa.net/ (栗日記ブログ) https://twitter.com/kuriking/ (twitter) https://facebook.com/kuriking3 (facebook) https://jp.pinterest.com/kuriking/pinterest) https://www.instagram.com/kuri_king_/ (instagram) [バックナンバーのトップへ

  • lsattrとchattrコマンド | ブーログ

    これらはLinuxカーネル2.6で追加されたコマンド、従来のlsとchmodに対応というより拡張するext2 固有なフラグ。 lsattrコマンドを実行すると、現在のフラグを表示する。フラグには”acdijsuADST”などの種類がある。主なものの意味は以下のとおり。 a : ファイルの追加書き込みのみ許可する。(append) c : ファイルを圧縮してディスクに保存する。アプリレベルは影響を受けない。(compress) d : dumpでバックアップの候補にしない。(dump) i : ファイルの変更を許可しない。削除もリネームもできない。このファイルへのリンクも作成できない。(immutable) s : ファイルの削除後、ブロックをゼロクリアする。(secure?) A : ファイルがアクセスされたとき、atimeを更新しない。 D : ディレクトリが変更されたとき、

  • 『[Linux] 削除できないファイルの作り方』

    サーバーを管理していると、削除や変更されたくないファイルやディレクトリというものが出てきたりします。 権限や所有者を適切にコントロールすることでそれらを対応させることもできますが、Linuxの場合はrootユーザーは何でもありの特権を持っていますし、優れたユーザー管理の機構がLinuxには存在するわけでもないため、管理が煩雑になったり、それだけではうまくコントロールしきれないケースも出てきたりします。 ここで紹介する、Linux上の特殊な権限を操作するchattrコマンドを使えば、削除や変更ができないファイルや追記のみ許可するファイルなどを作り出すことができます。 なお、chattrコマンドはext2またはext3のファイルシステム上での属性変更を可能とするものです。 まずは、削除できないファイルにするために、権限を変更してみましょう。 # touch foo.txt # chattr +

    『[Linux] 削除できないファイルの作り方』
  • Manpage of INOTIFY

    Section: Linux Programmer's Manual (7) Updated: 2008-05-15 Index JM Home Page roff page 名前 inotify - ファイルシステムイベントを監視する 説明 inotify API はファイルシステムイベントを監視するための機構を提供する。 inotify は個々のファイルやディレクトリを監視するのに使える。 ディレクトリを監視する場合、inotify はディレクトリ自身と ディレクトリ内のファイルのイベントを返す。 以下のシステムコールがこの API と共に使用される。 inotify_init(2), inotify_add_watch(2), inotify_rm_watch(2), read(2), close(2). inotify_init(2) は inotify インスタンスを作成し、in

  • いますぐ実践! Linuxシステム管理

    「いますぐ実践! Linux システム管理」はこちらです。 メルマガの解除、バックナンバーなども、以下からどうぞ。 https://www.usupi.org/sysad/ (まぐまぐ ID:149633) その他、作者に関するページは、概ね以下にございます。 https://www.usupi.org/kuri/ (まぐまぐ ID:126454) http://usupi.seesaa.net/ (栗日記ブログ) https://twitter.com/kuriking/ (twitter) https://facebook.com/kuriking3 (facebook) https://jp.pinterest.com/kuriking/pinterest) https://www.instagram.com/kuri_king_/ (instagram) [バックナンバーのトップへ

  • Twitterの公式RT、非公式RT、QTの違いを分かりやすく図で描いてみた - 聴く耳を持たない(片方しか)

    <追記 2012/03/06 ここから> 追記(2012/03/06) 2012年3月にTwitterの仕様が変更されました。 下記では「TweenのQT」と、「非公式RT」「QT」とはタイムラインでの見え方が違う……と書いてありますが、2012年3月現在ではどちらも同じようにタイムラインでは表示されています。 <追記ここまで> 先日、Twitterで公式にRetweet機能が一部のユーザー向けに公開されました。現在は言語を英語にしないと利用できませんが、今後はいずれ全ユーザーが利用できるでしょう。一方でこれまでのRetweetをQTと言い換える専用ソフト(クライアント)も出ています。 こうした動きの中で機能が複雑になり、それぞれの違いが分からない・分かりにくいといった意見をよく見かけます。……ですので、ちょっと整理も兼ねてそれぞれの機能の特徴をまとめてみました。 はじめに 以降、区別のた

    Twitterの公式RT、非公式RT、QTの違いを分かりやすく図で描いてみた - 聴く耳を持たない(片方しか)
  • rdiff-backup をもう少し使いこなす - いますぐ実践! Linuxシステム管理 / Vol.155

    「いますぐ実践! Linux システム管理」はこちらです。 メルマガの解除、バックナンバーなども、以下からどうぞ。 https://www.usupi.org/sysad/ (まぐまぐ ID:149633) その他、作者に関するページは、概ね以下にございます。 https://www.usupi.org/kuri/ (まぐまぐ ID:126454) http://usupi.seesaa.net/ (栗日記ブログ) https://twitter.com/kuriking/ (twitter) https://facebook.com/kuriking3 (facebook) https://jp.pinterest.com/kuriking/pinterest) https://www.instagram.com/kuri_king_/ (instagram) [バックナンバーのトップへ

  • いますぐ実践! Linuxシステム管理

    「いますぐ実践! Linux システム管理」はこちらです。 メルマガの解除、バックナンバーなども、以下からどうぞ。 https://www.usupi.org/sysad/ (まぐまぐ ID:149633) その他、作者に関するページは、概ね以下にございます。 https://www.usupi.org/kuri/ (まぐまぐ ID:126454) http://usupi.seesaa.net/ (栗日記ブログ) https://twitter.com/kuriking/ (twitter) https://facebook.com/kuriking3 (facebook) https://jp.pinterest.com/kuriking/pinterest) https://www.instagram.com/kuri_king_/ (instagram) [バックナンバーのトップへ

  • A simple chat server in AnyEvent - unknownplace.org

    Node.js でつくってるやつ をみて同じくらいで書けそうだなと思ったので試しに AnyEvent で書き直してみた。 #!/usr/bin/perl use strict; use warnings; use AnyEvent::Socket; use AnyEvent::Handle; my @clients; tcp_server undef, 7000, sub { my ($fh) = @_ or die $!; my $h = AnyEvent::Handle->new( fh => $fh ); my $leave = sub { my $client = delete $clients[ fileno($fh) ]; for my $c (grep { defined } @clients) { $c->{handle}->push_write("$client->{na

  • Module::Requires で依存モジュールをきっちりチェック - JPerl Advent Calendar 2009

    今月の advent calendar だけで通算27日分もの記事を書いている Yappo ですみなさんお元気ですか? なんだか hacker track が人手不足なので今日ネタを書くために昨日思いついたモジュールを CPAN にアップロードした上で二度目の参戦をします。 http://github.com/yappo/p5-Module-Requires まえおき みなさんがコードを書く上で依存モジュールの管理に悩む。なんてのは誰しもが通る道だと思います。 もうすでに Makefile.PL の中に依存モジュールを書けば、依存モジュールを全部入れてくれるので悩む事は無いと思います。 さらには、テストケースで必要な依存モジュールのチェックなども Test::Requires が登場した事により、気楽にテストする事も出来ます。 だがしかし、プラガブルなモジュールなどが含まれるディストリビュ

    kamipo
    kamipo 2009/12/25
  • JavaのGC頻度に惑わされた年末年始の苦いメモリ

    JavaのGC頻度に惑わされた年末年始の苦いメモリ:現場から学ぶWebアプリ開発のトラブルハック(9)(1/3 ページ) 連載は、現場でのエンジニアの経験から得られた、APサーバをベースとしたWebアプリ開発における注意点やノウハウについて解説するハック集である。現在起きているトラブルの解決や、今後の開発の参考として大いに活用していただきたい。(編集部) Java言語を利用するようになって、システムを開発するうえで楽になった要素は何かというアンケートがあったとき、読者の皆さんならどのように回答するだろうか。私は迷わず、「メモリ管理」と回答する。 同時に、Javaを利用してシステム開発を行う際に、注意していること、悩まされたことは何かとアンケートがあれば、「GC(ガベージ・コレクション)」と回答するだろう。 多くのシステム開発の現場では、いまこの瞬間も、JavaのGCの挙動に悩まされ、GC

    JavaのGC頻度に惑わされた年末年始の苦いメモリ
  • 肥え続けるTomcatと胃を痛めるトラブルハッカー (1/3) - @IT

    肥え続けるTomcatと胃を痛めるトラブルハッカー:現場から学ぶWebアプリ開発のトラブルハック(8)(1/3 ページ) 連載は、現場でのエンジニアの経験から得られた、APサーバをベースとしたWebアプリ開発における注意点やノウハウについて解説するハック集である。現在起きているトラブルの解決や、今後の開発の参考として大いに活用していただきたい。(編集部) メモリリークと聞いて、良いイメージを思い浮かべる開発者は少ないだろう。経験したことのある人にとっては、思い出したくない過去の記憶がよみがえるかもしれない。もしかしたら、その単語を聞くだけで胃が痛くなる人もいるかもしれない。筆者もかつてはその1人であった。 前々回の記事では、WebサーバとTomcatの間の接続において、スレッド数の不整合により発生したトラブル事例を、前回はTomcatとDBサーバの間のトラブル事例を紹介した。今回もTom

    肥え続けるTomcatと胃を痛めるトラブルハッカー (1/3) - @IT
  • Manpage of SIGNAL

    Section: Linux Programmer's Manual (7) Updated: 2008-08-21 Index JM Home Page roff page 名前 signal - 使用可能なシグナルの一覧 説明 Linux は POSIX 信頼シグナル (reliable signal; 以後 "標準シグナル"と表記) と POSIX リアルタイムシグナルの両方に対応している。 シグナル処理方法 シグナルはそれぞれ現在の「処理方法 (disposition)」を保持しており、 この処理方法によりシグナルが配送された際にプロセスが どのような振舞いをするかが決まる。 後述の表の "動作" の欄のエントリは各シグナルのデフォルトの 処理方法を示しており、以下のような意味を持つ。 Term デフォルトの動作はプロセス終了。 Ign デフォルトの動作はこのシグナルの無視。 Co