タグ

ブックマーク / yosuke-furukawa.hatenablog.com (30)

  • Go弱の会でgo vs node.jsのパフォーマンスベンチを取った話をしてきた。 #gojaku - from scratch

    Go弱の会に行ってきました。今回はnitrous.ioの話、revelの話、Dartの話がありました。 僕も少しだけしゃべったので、その話を含めてやったことをまとめます。 僕が話した内容 Go弱っぽく、Webアプリを作成し、そのベンチマークを取ってみました。 作ったアプリ angularjs と goweb(RestFul server) と mgo (mongo driver) でツイッターっぽいアプリを作ってみました。 Goweb製(heroku) : http://goweb-angular.herokuapp.com/app/#/ githubはここでアップしてます。 GitHub : https://github.com/yosuke-furukawa/goweb-sample ちなみに比較対象のkoa製の方もherokuにアップされてます。 Koa製 (heroku): htt

    Go弱の会でgo vs node.jsのパフォーマンスベンチを取った話をしてきた。 #gojaku - from scratch
    yuiseki
    yuiseki 2014/02/12
  • koa入門(ミドルウェアの書き方) - from scratch

    Koaのmiddleware作成方法 さて、先日 koa入門 という入門記事を書いてみました。今回はそれにともなってKoaのミドルウェアの作り方を中心に説明します。 また、 koa-livereload というKoaのミドルウェアも公開してみました。それについても説明します。 Expressのミドルウェアの書き方: Expressのミドルウェアの書き方をまずはおさらい。 app.use(function (req, res, next){ // requestとresponseとnextを持つ関数を受け取る。 // 適当に/_chkに来たら、OKを返すミドルウェアを作る。 if (req.url === "/_chk") { console.log("OK"); res.send(200, "OK"); } // next()を呼び出すと次のミドルウェアを呼ぶ。 next(); }); K

    koa入門(ミドルウェアの書き方) - from scratch
  • EventEmitterの代わりにEventEmitter2を使う - from scratch

    このエントリをNode.js Advent Calendarにするか迷いましたが、Advent Calendarとしてはちょっとマニアックだったので、没になった方もアップします。ブログエントリの大掃除中です。 Node.jsを使うならEventEmitterを知っとくべし、という記事とかありますが、EventEmitter使ってるといくつか疑問に当たりますよね。 EventEmitterおさらい EventEmitterの基的な機能をおさらいしておくと、EventEmitterというのは、イベントという単位で処理を行えるようにするためのモジュールで、イベントの受発信を行うことで非同期プログラミングを行いやすくするもの。 emitでイベントを発行 onで発行したイベントを受信 removeListenerでイベントを消すことができる onceで一回だけイベントを受信することができる で、こ

    EventEmitterの代わりにEventEmitter2を使う - from scratch
    yuiseki
    yuiseki 2013/12/29
  • koa入門 - from scratch

    さて、2013年12月19日にkoaというフレームワークの0.1.0がリリースされ、Hackers Newsに乗り、それが話題になっています。 これまでNode.jsのWeb Application Frameworkとして最もメジャーなのはExpressだと思いますが、Expressの作者であるTJを筆頭にExpressチームがKoaを積極的にエンハンスし始めているため、今後のNode.jsのフレームワーク勢力図が変わる可能性があります。 作者のメッセージを引用すると Koa is a new web framework designed by the team behind Express, which aims to be a smaller, more expressive, and more robust foundation for web applications and A

    koa入門 - from scratch
  • Bower入門(応用編) - from scratch

    Bower入門(応用編) さて、応用編を書いていきます。 基礎編ではBowerのインストールとライブラリ管理する上での基的なコマンドを紹介しました。 応用編ではBowerのライブラリを管理する上で利用するべきツールやライブラリを公開する上で心がけるべきことについて書いていきます。 少し長いのでサマリ Bowerを管理する上で利用すると良いツール:grunt-bower-taskがオススメです ライブラリを公開する上で心がけること、その1:mainとignoreをちゃんと書きましょう ライブラリを公開する上で心がけること、その2:ちゃんとgit tagを使ってバージョン管理しましょう Bowerからインストールしたライブラリを利用する場合 前回の基礎編で少し書きましたが、おさらいすると、Bowerはあくまでパッケージマネージャなので、インストールしてもフォルダ構造までは変えてくれません。

    Bower入門(応用編) - from scratch
  • Smashing Node.js に書いてあるEffective Node.jsなこと(第二弾) - from scratch

    Smashing Node.js: JavaScript Everywhere (Smashing Magazine Book Series) 作者: Guillermo Rauch出版社/メーカー: Wiley発売日: 2012/09/11メディア: ペーパーバック購入: 1人 クリック: 67回この商品を含むブログを見る この記事は、東京Node学園祭2012 アドベントカレンダーの25日目の記事です。もうすぐで完走ですね! あ〜、大分時間があいてしまった。 というわけで第二弾行ってみましょう。 今回は以下の箇所から紹介します。 CHAPTER 5: CLIとFS APIについて CHAPTER 6: TCPについて CHAPTER 7: HTTPについて CHAPTER 8: CONNECT に書かれていることから今回もEffective Node.jsなことを紹介していきます。 ■

    Smashing Node.js に書いてあるEffective Node.jsなこと(第二弾) - from scratch
  • Bower入門(基礎編) - from scratch

    Bower入門 これから Bower について書いてきます。Bowerの使い方から実際に使う上で考慮することまで含めて書きます。 長くなりそうなので単に使うだけの基礎編とモジュールを作る上で気をつけることをまとめた応用編に分けて書きます。 Bower とは Twitter社が作ったフロントエンド用のパッケージマネージャです。 Java で言う Maven、 Ruby で言う gemPerl で言う cpan のようなものです。 Node.jsには npm と呼ばれるパッケージマネージャがありますが、それに強く影響を受けています。 パッケージマネージャを利用することでライブラリを自分で管理する必要がなくなり、管理するファイルの数を減らすことができます。 また、パッケージマネージャを利用することでライブラリのバージョン管理をしやすくなります。 さらに自分のライブラリを Bower comp

    Bower入門(基礎編) - from scratch
  • Smashing Node.js に書いてあるEffective Node.jsなこと(第一部を翻訳してみて) - from scratch

    ※ 2012-10-18追記 forEachはfilterの間違いでした。修正しておきます。 Smashing Node.js: JavaScript Everywhere (Smashing Magazine Book Series) 作者: Guillermo Rauch出版社/メーカー: Wiley発売日: 2012/09/11メディア: ペーパーバック購入: 1人 クリック: 67回この商品を含むブログを見る ブログは東京Node学園祭2012 アドベントカレンダーの1日目の記事です。 さてさて、Smashing Node.jsを読んでます。 読んでいて思ったのですが、非常に良書です。 著者は 前回のNode学園祭で魔法のようなライブコーディングを見せた Guillermo さん。 せっかくなので、Smashing Node.jsで書かれている内容の中で琴線に触れたものはシリーズ

    Smashing Node.js に書いてあるEffective Node.jsなこと(第一部を翻訳してみて) - from scratch
  • dstatの結果をfluentdで取得して、WebSocketで送りつけるリアルタイムリソース監視アプリを作ってみた。 - from scratch

    Tuppari公開記念Hackathonで作ろうとした奴を作ってみました。 ごめんなさい、micro instanceなのでアクセス過多で動かない時があるかもしれません、ちょっと調整中です。 リアルタイムリソース監視アプリ yosuke-furukawa/dstatwatcher · GitHub WebSocketを使ってリアルタイムにリソース監視したりログ監視したりするのは正直よくあるやつなのですが、fluentd使ってみたかったというのと、highchartを業の方で使おうか迷った挙句、使えなかった経緯があったので、使ってみようと思って作成してみました。 大体、↓の感じの流れでやってます。 Fluentdとdstatのつなぎの部分にはfluent-plugin-dstatを使用しています。 shun0102/fluent-plugin-dstat · GitHub これを使うと、d

    dstatの結果をfluentdで取得して、WebSocketで送りつけるリアルタイムリソース監視アプリを作ってみた。 - from scratch
  • 7つの言語、7つの世界を読んでます。(型付け typingについて) - from scratch

    7つの言語 7つの世界 作者: Bruce A. Tate,まつもとゆきひろ,田和勝出版社/メーカー: オーム社発売日: 2011/07/23メディア: 単行(ソフトカバー)購入: 5人 クリック: 148回この商品を含むブログ (52件) を見る まだ途中ですが、PrologやErlang、Ioなどの言語で結構知らなかった概念が出てきていて面白いです。 もちろん読み終わったらここで紹介します。 変数のtypeを判別する際の型付け(typing)というところがわかりにくかったので、調べてしまいました。 今回はその調べた内容をまとめてみます。 分かりにくかったのは、強い型付け/弱い型付けと動的型付け/静的型付けの違いです。 強い型付けと弱い型付けについて 7つの言語、7つの世界では、以下のように書かれています。 強い型付けとは、2つの型に互換性があるかどうかを検出し、互換性がなければ、エラ

    7つの言語、7つの世界を読んでます。(型付け typingについて) - from scratch
    yuiseki
    yuiseki 2011/10/03