タグ

ブックマーク / hakobera.hatenablog.com (10)

  • Quipper の DevOps のお仕事と技術的課題 - hakobera's blog

    技術的課題を書くと、それを解決してくれるエンジニアが採用できるって話は当ですか?というのは冗談としても、今の技術的課題をブログにまとめて公開するノーガード戦法も良いかと思う。— Kazuyuki Honda (@hakobera) May 25, 2015 このツイートがそれなりに反応があったので、有言実行してみる。 最初に書いておくと、これはQuipperの採用のための記事です。Quipper では下記のようなお仕事技術的課題の解決に興味がある DevOps エンジニアを絶賛大募集しております。興味のある方は、Wantedlyの募集ページ から「話を聞きに行きたい」をクリックしてみてください。応募までは行かないけど、もっと詳しい聞いてみたいという方は私個人にでも良いのでご連絡ください。(Twitter で @hakobera にメンション or DM、または hakoberaアットg

    Quipper の DevOps のお仕事と技術的課題 - hakobera's blog
    muddydixon
    muddydixon 2015/06/08
    「ノーガード戦法」熱い
  • Github Issues を利用したリリースマネージャのお仕事 - hakobera's blog

    最近、Quipper という会社で「リリースマネージャ」という名前のお仕事をしています。開発以外の仕事は久しぶりだったので大変でしたが、最終的にそれなり上手く行った方法を振り返りとしてブログに書いておくことにします。 経緯 自分のチームとは別のチームが開発しているサービスのリリースが迫っている中、それまで開発者の1人がリリース管理っぽいことをやっていたのですが、さすがに開発と管理の二足のわらじが辛くなってきたとのことで、急遽サポート的に自分が「リリースマネージャ」という役割りで参加することになりました。 コンセプト コンセプトは「使用するツールを増やさない」です。 管理のために新しいツールを増やすと、その使い方を教えるなど新たなタスクが発生してしまいます。タスクを減らすためにタスクが増えるなんてナンセンスです。 ということでQuipper では普段の開発に Github を利用しているので

    Github Issues を利用したリリースマネージャのお仕事 - hakobera's blog
    muddydixon
    muddydixon 2013/10/23
    “人間は基本シングルコア、シングルタスクです。開発したい欲求はグッとこらえましょう。 特に開発者がリリースマネージャの場合に陥りやすいので注意。”
  • Node.js の Heroku 環境におけるパフォーマンス - hakobera's blog

    Heroku で Node.js を動かしても絶対的なパフォーマンスは得られないのだけれど、最近仕事で Node.js on Heroku をやっているので、実際にどれくらいのパフォーマンスがでるのか測ってみました。 今回調べたのは、主に3点。 2X Dyno (CPUとメモリが2倍のDyno。ただし、コア数は4のまま)を使うと速くなるのか? Cluster に効果はあるのか? Dyno 数はどれくらいが良いのか? ベンチマークは Node.js v0.10.9 を対象とし、全て siege のベンチマーク機能の結果です。ベンチマーク対象のコードは、Node.js 家トップページに載っている例のHTTP サーバで、AWS の us-east-1 リージョンの EC2 m1.large インスタンスで実行した結果です。 $ siege -b 60S -c 100 http://server

    Node.js の Heroku 環境におけるパフォーマンス - hakobera's blog
    muddydixon
    muddydixon 2013/05/31
    最後のが・・・またQuipperか・・・
  • 「Node.jsは静的コンテンツには向いていない」のか? - hakobera's blog

    この記事は東京Node学園祭2012 アドベントカレンダーの8日目の記事です。 この記事を書こうと思った理由 Node.jsに関するWeb上の記事を読んでいると、「Node.jsは静的コンテンツに弱い」とだけ書いてある記事をよく見かけます。有名なところだと、LinkedInのNode.jsのパフォーマンスに関する10個のTipsの3番目のTipsに"Don't use Node.js for static assets"とばっちり書いてあります。 確かにCDNやNginxに比べれば、Node.jsは静的コンテンツの扱いが遅いとは思います。しかし、それは LinkedIn くらいの超大規模なトラフィックがある場合には問題になるとは思いますが、小〜中規模なサイトでもNginxは必須なほど遅いのでしょうか?512MBしかメモリのないVPSNginxとNode.jsを入れてやりくりすることがホン

    「Node.jsは静的コンテンツには向いていない」のか? - hakobera's blog
    muddydixon
    muddydixon 2012/10/23
    これは素晴らしい記事だ!stしらなかった。
  • Tuppari - WebSocket on Your Cloud - - hakobera's blog

    Tuppari とは 東京Node学園 6時限目で発表した Node.js で作られた Pusher クローンです。 簡単に言うと WebSocket を利用した大規模 Broadcast に特化したサービスです。 インフラとしては Amazon Web Services (以降、AWS)上で動かすことに最適化されていますが、AWS以外でも動かすことは可能です。つまり、クラウド上に自分自身の Pusher を構築することが可能になります。 現時点では Pusher の機能には追いついていませんが、今後も鋭意開発を進めていくので、是非使ってみてください。 あと、WebSocket を使うので、IE9 以下では動きません。 8/15 追記: v0.2.0 から IE もサポートしました。 詳細は以下の記事を参照して下さい。 Tuppari コミュニティ始めました & IE に対応しました -

    Tuppari - WebSocket on Your Cloud - - hakobera's blog
  • mocha と Jenkins で Node.js の CI 環境を構築する - hakobera's blog

    最近、mocha をつかってテストを書くのが楽しくなってきました。でも、テストの数が増えてくるとローカルでの実行だけでなく、CI 環境が欲しくなりますよね。github にあげられるようなプロジェクトだったら、Travis CI も良いですが、実際に仕事で使うとなると、既存の Jenkins と組み合わせてやる必要ができてきたので、実際にやってみました。 基的な手順は以下の通りです。 mocha でテスト結果を TAP 形式でファイルに出力する 出力したファイルを Jenkins の TAP Plugin に読み込ませる 簡単ですね。 実際にやってみた というわけで、以下のような最小構成で試してみます。 myapp |- lib | |- calc.js | |- test | |- calc.test.js | |- package.jsonここには書いていませんが、実際は git

    mocha と Jenkins で Node.js の CI 環境を構築する - hakobera's blog
  • Heroku で package.json で指定した任意のバージョンの Node.js を 動かす方法 - hakobera's blog

    2012/8/7 追記 Heroku が公式で package.json での Node.js/NPM のバージョン指定に対応したので、現在は以下の方法は必要ありません。普通に package.json の engines に利用したいバージョンを書けばOKです。 以下の情報は古いです。 日、開催された Heroku JP Meetup #3 で話してきた内容です。 内容としては去年の12月の東京Node学園3時限目のLTの進化版で、package.json の engines の指定を変えることで、Node.js のバージョンを切り替えられる公式の versions ブランチの利用法について解説しています。 Run Multi Version of Node.js on Heroku View more presentations from Kazuyuki Honda heroku/

    Heroku で package.json で指定した任意のバージョンの Node.js を 動かす方法 - hakobera's blog
  • tail.io - 標準入力をブラウザで tail -f できる htmlcat のクローンを Node.js + Socket.IO で作った - hakobera's blog

    標準入力をブラウザで tail -f できる htmlcat というのを書いた - NaN days - subtech この記事をみて便利そうだったのですが、Perl 詳しくなくて動かし方がよくわからなかったので、勉強がてらに Node.js + Socket.IO でクローンを作ってみました。npm モジュールとして登録してあるので、以下の方法でインストールできます。 $ npm install tail.io -gコマンドラインツールなのでグローバルインストールしてください。これで tailio というコマンドが使えるようになります。 (追記) Socket.IO のデバッグログを標準で出力しないようにしました。また、--port オプションでポート番号を明示的に指定することもできるようにしてみました。既にインストールした人は npm update tail.io -g でアップデー

    tail.io - 標準入力をブラウザで tail -f できる htmlcat のクローンを Node.js + Socket.IO で作った - hakobera's blog
    muddydixon
    muddydixon 2012/01/23
    は、速い・・・つくろうと思ってたのに・・・
  • Node.js と Titanium で SlideShare リモコンを作ってみた - hakobera's blog

    2012/1/11 に開催した 「Node塾 講義その5 Node.js × Titanium」の発表用に SlideConcert というアプリを作って、実際にそれを利用して発表してきました。 個人的にLTをする時に便利だなと思うを機能を実装してみました。 スライド発表時は結構歩きまわるたちなのでスライドを操作できるリモコンが欲しい 発表前に「今日のスライドです」と URL をハッシュタグ付きでつぶやくことが多いのでこれを簡単にしたい スライドの内容を手元で確認したい スライドの進行を見ている人で共有したい(進行も含めてスライド共有したい) 聞いている人の感想をリアルタイムで知りたい 言葉で説明するのも難しいので、実際の動作は以下の動画でご確認ください。 サーバは Node.js 、クライアントは Titanium という組み合わせで、構想1時間、実装がアイコンの作成なども含めて年末年始

    Node.js と Titanium で SlideShare リモコンを作ってみた - hakobera's blog
  • Node.js の Cluster のベンチマークをとってみた - hakobera's blog

    Node.js v0.6 から新規標準モジュールとして導入された Cluster のベンチマークを取ってみました。 測定環境 Server CPU: AMD PhenomII X6 1090T (6コア) MEM: DDR3 16GB (4GB*4) Client MacBook Pro 15 (Early 2011) CPU: Intel Core i7 2.0GHz (4コア) MEM: DDR3 8GB (4GB*2) Network 1GigabitEther (同一セグメント) テスト方法 テストスクリプト cluster-bench.js var cluster = require('cluster'); var http = require('http'); var numCPUs = parseInt(process.argv[2], 10); if (cluster.is

    Node.js の Cluster のベンチマークをとってみた - hakobera's blog
  • 1