タグ

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

  • 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
    t_43z
    t_43z 2013/05/31
    おめでとう!
  • 「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
  • Node.js 入門者向けチュートリアル テストもあるよ - hakobera's blog

    先月、学生向けの無料講義を開催している TechHUB.jp で Node.js の講義をやりました。 そこで利用した講義資料(正確には補足資料)を、最新の Express と mocha でも動くように修正したので、せっかくなのでブログでも周知しておきます。 Node.js で作るリアルタイム投票アプリ 実際はよくあるリアルタイムに結果が反映されるアンケートシステムなのですが、そのまま Heroku にデプロイできて、実際のアプリケーションっぽくて、テストまで網羅したチュートリアルがなかったので、書いてみました。 Node.js 入門する人の参考になれば良いなと思います。 以下のようなアンケートが作れます。 Node.js 入門について | rtvote

    Node.js 入門者向けチュートリアル テストもあるよ - hakobera's blog
  • 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
  • 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
  • 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
  • enchant.js ソースコード・リーディングを開催しました - hakobera's blog

    enchant.js ソースコード・リーディング - [PARTAKE] 私の適当なtwitterでのつぶやきにid:nakamura001さんが反応してくれたので、脊髄反射的に上記の勉強会を開催しました。 なにげに初勉強会主催で、人があつまるかな、と不安だったのですが、蓋を開けてみれば、9名の方が参加してくれて、とても熱い会になりました。前半が説明、後半がハッカソンでした。ハッカソンは盛り上がりすぎて、予定時間を2時間ほどオーバーするほど楽しかったです。 以下簡単にまとめます。 enchant.js 概要解説 拙作ですが、enchant.js の概要解説をしました。 enchant.js source reading View more presentations from hakobera id:namakura001 さんによる enchant.js ゲーム開発入門 以下のサンプルペ

    enchant.js ソースコード・リーディングを開催しました - hakobera's blog
  • JavaScriptゲーム製作勉強会を開催しました(舞台裏の話) - hakobera's blog

    先週 5/15(日) 大森の Nifty さんの会議室を使って、JavaScript ゲーム製作勉強会を開催しました。 勉強会に参加した場合なら、ここから内容について書くのですが、今回は主催者だったので、イベントを主催する時に工夫した点、苦労した点などについてまとめてみたいと思います。 資料は後ろの方に張っておきますので、資料だけ見たいという人はスキップしてください。 勉強会の内容、規模など 今回の勉強会は参加人数で言うと40名弱なので、中規模といったところでしょうか。 詳細や当日の Twitter のタイムラインなどは以下を参照してください。 募集ページ 当日のつぶやきのまとめ JavaScript ゲーム製作勉強会 Vol.1 - Togetter 開催者として工夫したこと・苦労したこと 募集ページ選び 告知の方法 講演してくれる人探し 会場探し 募集ページ選び 今回の勉強会は3月に予

    JavaScriptゲーム製作勉強会を開催しました(舞台裏の話) - hakobera's blog
  • Kinect を操作できる Node.js モジュールを作ってみた - hakobera's blog

    Kinect ハッカソン Vol.2 の時に仕上げ損なったやつを GW で時間があったので、完成させました。libfreenect のラッパーなので、ボーンは取れません。 hakobera/node-freenect · GitHub スクリーンショット (Kinect を WebSocket 経由でコントールしてるところ) 前に作った Kinect.js よりは速いのですが、正直、期待したほどの速度は出なかった(深度データのみ取得が MBA13 で 5-8 FPS) ので、実用性の面でお蔵入りしそうですが、全部 JavaScript で書けるのはやはり気持ち良いですね。 以下のようなコードが書けます。 var Freenect = require('freenect'); var kinect = new Freenect.Kinect(), ledOption = 0, prev =

    Kinect を操作できる Node.js モジュールを作ってみた - hakobera's blog
  • 東京Node学園 1時限目で LT してきました - hakobera's blog

    東京Node学園 1時限目で 「Kinect でテルミン」というお題でLT してきました。資料とソースコードは以下からどうぞ。細かい解説はまた別のエントリで。 資料 Kinect de-theremin View more presentations from hakobera ソースコード kinect-de-theremin (node.js アプリとprocessing による kinect アプリ) https://github.com/hakobera/kinect-de-theremin kinect.js https://github.com/hakobera/kinectjs 感想 大人数の前のLTは初めてでかなり緊張して、うまく喋れたか怪しいのですが、反応は上々だったようでホッとしています。ただ、5分で20枚はやはり無理ゲーでした。主催者の皆様、時間オーバーしてごめんなさ

    東京Node学園 1時限目で LT してきました - hakobera's blog
  • Mac で 「Kinectを使ってブラウザのWebGL内を動いてみた」 - hakobera's blog

    偉大なる元ネタ Kinectを使ってブラウザのWebGL内を動いてみた - 最高のコンピューティング環境とは? これがやりたくて、Kinect を買ったと言っても過言ではない。 準備 OpenNI OpenNI をインストールしておいてください。 homebrew な人はこちらのエントリーの手順で。 Mac で Kinnect & OpenNI - Scalaとlift のはずだった ・・・ MacPorts な人はこちらのエントリーの手順で。 OpenNIがMacに対応したようです。NITEも動きます。 - some comments node.js と Socket.IO node.js は安定版の v0.2.6 を利用します。node.js は nvm を使ってインストールするのがオススメです。 続・複数のバージョンの node.js をインストールする - Sarabande.jp

    Mac で 「Kinectを使ってブラウザのWebGL内を動いてみた」 - hakobera's blog
  • Web Socket テスト用の Chrome Extension を作ってみた - hakobera's blog

    node.js で Web Socket の実験をしていて、いちいちテスト用の HTML を作るのが面倒なので作ってみました。 Chrome Extension は初めて書いたので、「こんなソースで大丈夫か?」なのですが、とりあえず自分の目的である Web Socket の開発テストには使えているので良しとしています。 Chrome Web Store - Simple WebSocket Client ソースはこちら hakobera/Simple-WebSocket-Client · GitHub なお、お気づきの方もいるかも知れませんが、名前もデザインも Simple-Rest-Client のパクリ にインスパイアされています。 おまけ node.js で以下のようなコードを書くと、Simple-WebSocket-Client を利用してチャットができます。 var sys =

    Web Socket テスト用の Chrome Extension を作ってみた - hakobera's blog
  • インストールメモ node.js on Ubuntu 10.04 - hakobera's blog

    2011/02/11 追記 node.js は nvm で入れるのが主流になっていると思いますので、このエントリではなく,以下のエントリを参考にしてください。 続・複数のバージョンの node.js をインストールする - Sarabande.jp 以下、古い情報 node.js を $HOME/lib にインストールして、パッケージ管理 npm で node-websocket-server をインストールするまでのメモ。 依存パッケージのインストール sudo apt-get install g++ curl libssl-dev apache2-utils sudo apt-get install git-core node.js のインストール git経由。常に最新版が入る。 特定のバージョンをインストールしたい場合は、git clone のところで http://nodejs.o

    インストールメモ node.js on Ubuntu 10.04 - hakobera's blog
  • 1