Pick up the 9th-gen iPad with two years of AppleCare+ for only $298
Web アプリケーションのパフォーマンスにうるさいみなさんこんにちは。 Rails アプリのパフォーマンスプロファイリングだと、 rack-mini-profiler が有名で、それ以外だと New Relic とかを使って測定していくのが普通のようですが、物足りない部分があったので、自前でプロファイラ gem を作りました。 Rubygems: http://rubygems.org/gems/speed_gun / Github: https://github.com/rosylilly/speed_gun 詳細は Github の README なんかを見ていただくとして、基本的には rack-mini-profiler 的な情報収集が出来ると思ってもらって差し支えないです。 ちなみに計測画面はこんな感じ。 大きなスクリーンショットはこちら 小さくて何も見えないかも……とりあえず3セ
https://www.facebook.com/publications/514128035341603/ 1日500件、3,000ファイルに及ぶ本番アップ フロントエンドのコードは1050万行、内850万行がPHP 開発エンジニア1,000名とリリースエンジニア3名 QAやテスターは存在しない 自分でプロジェクトを選ぶ & 自己責任のカルチャーが強い。 1/3のファイルが一人のエンジニア、1/4が二人のエンジニアでメンテされている。 フロントエンドの本番コードベースは一つのものを共有 日常業務ではローカルのgitを利用。本番アップ可能になれば、中央のレポジトリにマージして、それからSubversion(過去の経緯で使っている。)にコミットする 同じエンジニアがコードをコミットする間隔は中央値で10時間 本番にプッシュする前に、担当エンジニア自身でのユニットテストを終え、同僚によるコード
継続的デリバリ/デプロイを実現する手法・ツールまとめ:DevOps時代の開発者のための構成管理入門(終)(1/2 ページ) バージョン管理や継続的インテグレーションとも密接に関わる継続的デリバリ/デプロイメントの概要や主なツール、経緯、実践事例を紹介。実践手法として「ブルーグリーン・デプロイメント」「Immutable Infrastructure」が注目だ。 完全に自動化されたリリースプロセスが必要となる「継続的デリバリ」とは いよいよ本連載「DevOps時代の開発者のための構成管理入門」も最終回となりました。今回のトピックは「継続的デリバリ」です。 継続的デリバリは、本連載で扱ってきたバージョン管理や継続的インテグレーションなどの単一のプラクティスではなく、それら一連のプラクティスを包含した、ソフトウェアデリバリ全体に対しての「考え方」「アプローチ」といえるものです。 「継続的デリバリ
http://www.joyent.com/developers/videos/billion-dollar-question-palo-alto 世界最大の小売業としてWalmartの数字はかなり驚くべき規模です。従業員数210万人。雇用主としては、米国国防総省、中国軍に次いで世界3番目。米国における食料品販売の40%を占め、毎月1.4億人が店舗を訪問してます。 昨日投稿した「Node.js: npmのクラウドファンディングとビジネスモデル」で少し触れたように、この巨大なWalmartが、本番サービスでどのようにNode.jsを利用できるのかを、同社のEran Hammerが紹介しています。 1) レガシーシステムと新しいシステムの統合 モバイルで新しいシステムを導入する場合、レガシーシステムを丸ごと入れ替えようとして失敗する企業も多いが、Walmartでは、Node.jsをレガシーシス
二段階認証サービスを提供している Authyが、Cloud Stackのインタビューで、どのように障害耐性のあるシステムを構築しているかを語っています。同社のOpen VPN二段階認証プラグインはオープンソースとして提供されてます。 authy.comとdashboard.authy.comはともにSinatraベース。どちらもAPIファーストのスタイルで、ユーザと同様にパブリックAPIを利用するかたちで構築している。 当初は、AWS上にNginx + Unicorn + PostgreSQL + アプリという構成であったが、障害耐性をつけるために、APIを用意して3層構造に変更。まず、NginxとHAProxyを実行するHTTP/webサーバレイヤ。SSLをなくして、HTTP接続のロードバランスを実現する。二層目は、Unicornを使ってSinatraアプリを実行するアプリレイヤ。そして
Fluentd というソフトウェアがある。日本国内ではそこそこ話題になってきたが、何ができるのか、何に使うと嬉しいのか、何に使えるのか、という点について詳細をよく知らないという人もおそらくまだ多いことでしょう。 なので、簡単にまとめる。 http://fluentd.org/ なお以下の個別項目ごとに書いていくが、その手前にまとめを置いておくので忙しい人はそれだけ読むとよい。インストールや設定については導入部分については日本語の記事はもう多くあるので、触れない。 概要 できること ログの収集 センサデータ等の収集 汎用データ処理プロセッサとして 頻出ユースケース ログの収集 データの集約 簡単なリアルタイム集計 ソフトウェアとしての特徴 コア プラグイン 安定性 性能 開発体制 コミュニティ ぶっちゃけどうなの? まとめ 現時点で、複数の場所に分散したデータや常に増え続けるデータの安全な転
バスの停留所に着き、旅館街を抜けると姿を現す積善館。 写真の手前に見える赤い橋・慶雲橋が「千と千尋の神隠し」のイメージソースになったと言われています。 積善館は山の斜面に建っていて、慶雲橋から見て本館・山荘・佳松亭の順になっています。 佳松亭の方にも入口があり、こちら側とはまた違う和風モダンな雰囲気で素敵です。 本館は、伝統的な和風建築と大正ロマンとが見事に混在していて、時代錯誤してしまいそうな雰囲気です。 山荘・佳松亭に宿泊している方でも、本館の見学は可能です。 本館入り口の右手には「元禄の間」という資料館があり、昔の帳場を再現して展示してあります。まるで時代劇のセットのようで、見ごたえ十分です。 山荘も国の登録文化財・群馬県近代化遺産に登録されていて、とても風情のある客室となっています。 日本最古の重みを体感したい方には本館、歴史とある程度の快適さを求める方には山荘、贅沢に寛ぎたい方に
このエントリはPHP Advent Calendar 2013 - Qiita [キータ]の1日目です。 PHPの開発に幅広く利用されるようになったVagrantですが、公開されているVagrantfileがGitHub上だけでも300件以上と色々とあるのでまとめておこうと思います。 Search · Vagrant php yandod/php5-nginx-vagrant-sample こちらは手前味噌ですが、自分が使っているVagrantfileです。素のPHPやPHPUnit、各種フレームワークの動作検証に使うためにPHP5.5とNginxを構築しています。 またデータベースとしてMySQLとPostgreSQLを両方セットアップしてあり、ImageMagickも入っているあたりも特徴かと思います。 10up/varying-vagrant-vagrants 通称、「VVV」と呼
Amazon EC2に新たなインスタンスを追加した時に、いちいち手作業でインスタンスにSSHで接続してごにょごにょするとか面倒ですよね。こういう時はコマンドでさくっとやってしまうのが簡単です。 いくつかアプローチがありますので、今回はそれを紹介しましょう。 knife bootstrapを使うたとえばAmazon Linuxのインスタンスを起動して、Chef Clientを導入し、指定したロールの状態にするためには、クライアント(自分の作業端末)から以下のように実行します。 knife bootstrap ec2-XXX-XXX-XXX-XXX.ap-southeast-1.compute.amazonaws.com \ --run-list 'role[web]' \ --environment development \ --no-host-key-verify \ --node-na
株式会社ラクーンホールディングスのエンジニア/デザイナーから技術情報をはじめ、世の中のためになることや社内のことなどを発信してます。 Rubyfluentdtd-agentlog はじめまして。開発チームの yuzuki です。 7/1に弊社の 決済サービスPaid(ペイド) のサーバー群へ ログ集約の改善を目的として導入した fluentd(td-agent) の導入手順などをまとめてみました。 ログ集約を改善する動機 弊社ではこれまで(今も大部分は) cron + rsync を使い、週次バッチでWebサーバー上のログファイルをファイルサーバーへ転送することで一応の集約をさせてきました。 (集約というよりはバックアップといった意味合いの方が強いかもしれません) サーバー台数が少なかった頃はこの仕組みでも特に大きな問題はなかったと思いますが、 サービスの成長にあわせて、サーバー台数が増え
ログが主食のかぜぶろです。ログがないと生きて行けません。 ログと言えばLog::Miminalですが、Minimalと言いつつも様々な拡張がなされており、好みの使い方にたどり着くまでに少し時間がかかるようになってしまったなと作者自身うすうす感じております。そこでLog::Minimalがもつ機能を分解し、アプリケーションの開発者にとって使いやすいログモジュール/メソッドを開発者自身で作りやすくしようという狙いのもと作ったのが、Log::StringFormatterです Log::StringFormatterはLog::Minimalの文字列の整形部分を切り出して単独のモジュールにしたものです。 使い方 use Log::StringFormatter; use Scalar::Util qw/dualvar/; stringf('foo') -> 'foo' stringf('%s b
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く