タグ

ブックマーク / tech.feedforce.jp (10)

  • Go で Mackerel の delayed_job plugin を作った | feedforce Engineers' blog

    増田です。椅子を新調したら腰痛が始まりました。でも元気です。 さて、少し前に GoMackerel の delayed_job plugin を作りました。 masutaka/mackerel-plugin-delayed-job-count なぜ作ったか? 最近、私が関わっているソーシャルPLUSで、新しいサービスを作り始めました。今までは Zabbix で監視していたのですが、今回も採用すると Zabbix を稼働させるサーバや(Zabbix のための)ある意味特殊スキルが必要で、導入すべきか悩んでいました。そういった事情から、今回は Mackerel を採用したのが事の発端です。 このサービスでは delayed_job が動いています。delayed_job の監視は大きく 2 つが必要です。 プロセス数の監視 Job Queue の監視 1 については Ruby で書いた

    Go で Mackerel の delayed_job plugin を作った | feedforce Engineers' blog
    Kiske
    Kiske 2016/09/28
  • はじめましてChef | feedforce Engineers' blog

    国内販売のアナウンスやSoftware Designで特集が組まれるなど注目が高まっているChef。ですが用語が多いといった「とっつきにくさ」もあるように思います。 そこで今回は「とりあえず使ってみたい」「メリットを知りたい」という方向けにChefを紹介したいと思います。 Chefとは ChefはRubyで実装されたサーバー構成管理ツールです。管理対象であるファイル、ユーザー、パッケージ、サービス等をどのように構成するかは、Rubyによる言語内DSLで記述します。 つまりコードを書いて実行することでサーバーの構成管理ができるわけです。 What is Chef? - Opscode Open Source Wiki やってみよう Chefには大きく分けて 管理対象サーバーのローカル環境で実行するスタンドアロン版 中央のサーバーで設定内容などを管理するクライアントサーバ版 の2つがあります。

    はじめましてChef | feedforce Engineers' blog
  • ZABBIX 1.8でサーバ監視 | feedforce Engineers' blog

    一時期はサーバの死活監視・リソースチェックといえばNagios + Cacti/MRTGでしたが、最近はZABBIXが割と話題に上ることも多いので、昨年末に1.8がリリースされたこともあり、筆者自宅での事例を交えつつご紹介したいと思います。 ZABBIXとは? Nagiosでのリソース監視/死活監視、Cactiなどでの視覚化をワンパッケージで。 1.6は監視のための負荷が結構あったが、1.8で改善された印象。 ホストの死活監視。 リソース監視。 サービスの死活監視。 プロセスの死活監視・同時実行数の監視など。 HTTPベースでのWebサイト死活監視。 SNMP以外に、各ホストで実行するZABBIXエージェントでのポーリングが可能。 任意のトリガーに対するアクションで、ZABBIXエージェントに任意のコマンドを実行させることが可能。 ネットワークが回復したらデーモンを再起動。 監視対象が落ち

    ZABBIX 1.8でサーバ監視 | feedforce Engineers' blog
    Kiske
    Kiske 2010/02/15
  • Twitter の Streaming API について | feedforce Engineers' blog

    先日社内でおこなった勉強会で Twitter の Streaming API について紹介しましたので、以下にそのスライドを貼っておきます。 Streaming API はつい最近正式版となりました。ただ、全公開ステータスを取得できる firehose や Retweet に限定したステータスを取得できる retweet などのメソッドは、まだ特定のアプリケーションアカウントでしか利用できません。 しかし、Streaming API はコネクションをひとつ張れば切断されるまでリアルタイムにデータを取得することができます。従来の REST API では定期的にリクエストを投げてデータを取得する必要がありましたので、その分のコストが削減できます。 ですので、これから Twitter のデータを取得して新しいアプリケーションを構築しようとする場合は、Streaming API の利用を考慮に入れ

    Twitter の Streaming API について | feedforce Engineers' blog
  • rvmの紹介 | feedforce Engineers' blog

    複数のRubyをインストールし、切り替えて使用できるツール rvm(Ruby Version Manager) の紹介を行いました。 rvmとは Ruby Version Manager の略 複数のRubyをインストールして管理し、切り替えて使う仕組み。 MRI(Matz's Ruby Implementation), JRuby, Rubinius, REE(Ruby Enterprise Edition), MacRubyに対応しています。 2009年夏に登場しました。 ほとんどシェル関数で実装されています。 ご注意 この記事の内容は2009年12月4日時点のものです。執筆時点で、rvmは活発に開発が進められているため、最新の状態とは挙動が異なる可能性があります。 用途(例) 広く使われるライブラリを、異なるruby実装でテストしたい。 使用しているRubyが異なる古いプロダクトを保

    rvmの紹介 | feedforce Engineers' blog
    Kiske
    Kiske 2009/12/14
  • OpenID認証2.0〜概論 | feedforce Engineers' blog

    OpenID認証2.0の"概論"についての発表資料です 仕様の詳細部分については説明を省略しています XRI周辺についての説明も省略しています(力量不足につき) 仕様を把握しきれてはいないため、誤りが多く含まれている可能性があります 以下は、実際の発表で使用したスライドのPDFです。 - 発表資料(PDF) -- 1.1MB はじめに OpenID認証とは 特徴 「オープン」 「秘密情報の保護」 「分散的」 「HTTP」 「拡張」 用語 プロトコル概観 開始(Initiation) 正規化(Normarization) 発見(Discovery) 関連づけ(Association) 認証要求 エンドユーザーの認可 承認/却下 照合 実例 OP-Local Identifierで始める OP Identifierで始める HTMLのURLで始める 自前のYadis IDで始める セキュリティ

    OpenID認証2.0〜概論 | feedforce Engineers' blog
    Kiske
    Kiske 2008/02/26
  • 負荷分散講習会 Apache編 | feedforce Engineers' blog

    ゴール 負荷分散のいくつかの方法に関して理解する mod_proxy_balancerによる負荷分散クラスタが構築できる 基礎知識編 基的な資料 主にクラスタによる負荷分散の資料。 - Apache モジュール mod_proxy_balancer - mod_proxy_balancerで中?大規模サーバー運用するときの勘所 - cyano あと社外秘資料。 負荷分散? 複数台のサーバにアクセスを分散して、個々のサーバにかかる負荷を減らし、全体的に処理できるアクセスを増やすこと。 以下のようなアプローチがある。 DNSラウンドロビン DNSでひとつのホスト名に複数のIPアドレスを割り当てる方法 シンプル しかしダウンしているホストにもアクセスが振り分けされてしまう 冗長化と併用でなんとかなるかな? 機能ごとにホストを分割 ウェブサーバとDBサーバの分割(基過ぎるが一応これも負荷分散)

    負荷分散講習会 Apache編 | feedforce Engineers' blog
    Kiske
    Kiske 2007/09/04
  • iptables講習会 | feedforce Engineers' blog

    ゴール 基的なフィルタリングの設定ができる 基的なNATの設定ができる Linuxによる簡単なファイアウォールの設定ができればそれでよい。 この講習会はごく初歩的な内容と運用上のちょっとした注意事項にフォーカスして行う。 すばらしい参考資料 iptablesチュートリアル 分かりやすくて読みやすい。 これを小一時間かけて熟読すればこの講習会は不要という説も。 iptables概説 これを使ってIPフィルタリングとNATを行うことができる。 実のところLinuxカーネルに実装されているNetfilterというパケット処理フレームワークの制御ツール。 2.2系列以前ではipchains,ipfwadmといったツールが同じ目的で使われていた。 用語 テーブル 各テーブルは用途別のルールの集まり。 - nat - filter - mangle とりあえずnatとfilterが分かればいい。

    iptables講習会 | feedforce Engineers' blog
  • MySQL4.0系→MySQL5.0系 | feedforce Engineers' blog

    MySQLのバージョンアップ MySQL 4.0 までは、3.X から 4.0 に upgrade しても、なんの影響もなくそのまま古いデータ(/var/lib/mysql)を使えました。 ダンプ→リストア不要、「ALTER TABLE」も不要。 4.1 以上にupgradeするときは、日語キャラクターセットを使っている場合、注意しなくてはならない点が複数存在します。 4.0→5.0 追加機能 詳細: http://lists.mysql.com/mysql-ja/262 http://www.klab.org/media/mysql/ - ストアドプロシージャ、ストアドファンクションを実装 - トリガーを実装 - ビューを実装 - サーバサイドカーソル機能を実装 - 情報スキーマを実装 - XA 分散・トランザクションの実装 - HEAP(MEMORY) テーブルのインデックスに、BT

    MySQL4.0系→MySQL5.0系 | feedforce Engineers' blog
    Kiske
    Kiske 2007/06/06
  • memcached | feedforce Engineers' blog

    何? オブジェクトをメモリにキャッシュするデーモン。 動的ページを持つウェブアプリケーションの裏側で動くデータベースへの負荷を軽減させることを目的にデザインされている。 - 公式サイト memcached: a distributed memory object caching system 特徴 オブジェクトをメモリ上にキャッシュ 複数ホスト間でキャッシュ共有可能(リモートからキャッシュにアクセス可能) 各言語用のインタフェースライブラリがそろってます 実績豊富 よくある用途 セッションストア DBへのクエリ結果のキャッシュ アプリケーションレベルのオブジェクト共有(静的インスタンス) セッションストア 複数サーバ間のセッション情報共有 DBを使う方法と比べて負荷がかからなくてうれしい セッションストアとしての問題点 レプリケーションの仕組みがない。 ので、アプリケーションの性質によって

    memcached | feedforce Engineers' blog
  • 1