タグ

ブックマーク / mixiengineer.hatenablog.com (4)

  • systemdを本番運用してわかったこと - mixi engineer blog

    こんにちは、運用部 アプリ運用グループの清水です。モンスト仲間募集中です。 以前、Fedora 8からFedora 17への移行のお話を書きました。Fedora 17ではsystemdがデフォルトで使われています。そのsystemd番環境で運用して1年以上が経ち、様々な経験をしてきました。systemdの環境で知っておくと役に立つと思われることについていくつか紹介したいと思います。 まずは、systemdの概要について簡単に紹介します。 systemdの概要と歴史 systemdは、従来のSysVinit/Upstartに代わるもので、Linuxサーバの起動時に初期設定やサービス起動をおこなうことにとどまらず、プロセスやリソースなど様々な管理をおこなうデーモンです。 Fedora 14の頃(2010年11月リリース)にTechnology Previewとして提供され、Fedora 1

    systemdを本番運用してわかったこと - mixi engineer blog
    Akaza
    Akaza 2013/12/11
    RHEL Fedora systemd / そういえばmixiはFedoraサーバだったから、systemdには一日の長があるのか
  • mixi Engineers’ Blog » Lua on Tyrant: DBサーバにLLを組み込む

    遅めの夏休みで那須塩原に行ってきたmikioです。牧場でアルパカに触ってきたのですが、めちゃかわいかったです。さて今回は、Tokyo Tyrant(TT)にスクリプト言語Luaの処理系を組み込んで使う方法について解説します。 つか、Luaって何? Lua(公式サイトによると「るーあ(LOO-ah)」と発音)という言語の名前は聞いたことがあっても、数あるマイナー言語のひとつと思って特に気にかけていない人も多いと思います。私もそうでした。しかし、今では、C言語使いの第2言語・第3言語として使うにはとても有望な言語だと思っています。 Luaに関する日語の情報はまだ多くはないのですが、以下のサイトを順に読むとだいたいの雰囲気が掴めると思います。 Lua で組んでみる Lua 5.1 リファレンスマニュアル Luaは言語仕様が小さいので、とても習得しやすいです。上記のリファレンスマニュアルだけ読め

    mixi Engineers’ Blog » Lua on Tyrant: DBサーバにLLを組み込む
  • bayonでソフトクラスタリング - mixi engineer blog

    先日ようやくドラクエ9をクリアしたのですが、切ない話が多くて、たまに泣きそうになってしまったfujisawaです。以前ご紹介したデータクラスタリングツールbayonにいくつか機能追加を行いましたので、その中から以下の2つをご紹介させていただきます。 入力データ中の特徴的なキーを自動的に特定して、クラスタリングの精度を向上させる 事前に行ったクラスタリング結果を使用して、各ドキュメントに関連するクラスタを特定する 入力データから特徴的な要素を特定 bayonでは入力データとして、各ドキュメントに対し、その特徴を表すキーとポイントを指定する必要があります。例えば以下の例では、最近べたメニューの名前とその回数を、各ユーザの特徴として指定しています。 fujisawa 卵かけご飯 4 みそ汁 6 ソーメン 3 kimura ステーキ 8 みそ汁 7 寿司 4 ... ここで、実は「みそ汁」は多く

    bayonでソフトクラスタリング - mixi engineer blog
  • 3行でできる超お手軽全文検索 - mixi engineer blog

    梅雨。部屋干しした洗濯物による異臭騒ぎに苦しむmikioです。今回は、Tokyo Cabinetのテーブルデータベースで超お手軽に全文検索をする方法について説明します。 使い方 テーブルデータベースについてまずおさらいしておきましょう。PerlRubyのハッシュのようにコラム名とその値を関連づけた構造を、主キーを識別子として保存するデータベースです。例えばRubyからデータを保存するに以下のように行います。データベースであることをほとんど意識させないというのが素敵ポイントです。APIはCでもPerlでもRubyでもほとんど同じなので、言語にかかわらず同じようにレコードを操作できます。 require 'tokyocabinet' include TokyoCabinet # データベースを開く tdb = TDB::new tdb.open("casket", TDB::OWRITER

    3行でできる超お手軽全文検索 - mixi engineer blog
  • 1