タグ

node.jsに関するmoozのブックマーク (82)

  • Node.js の起動オプション、環境変数、npm start の話 - Block Rockin’ Codes

    Node は起動時に色々オプションをつけることができます。 面白いもの、有益なものあるんですが、あまり言及されてないので、 ちょっと紹介してみようかと思ってます。 最後の npm start の話は、それ単体で書いても良いかと思っていたんですが、 関連するし良い機会なので書きます。 そして、オプション周り興味がない方も、Node やってる方は最後の npm start の話だけでも、 読んでいただけるとと思ったりします。(知らない方が多いようなので) ここで紹介している Node のバージョンは v0.7.7 です。しかし v0.6.x あたりでは、 v8 のバージョンが古く、オプションが微妙に違います。そこは v0.6.12 での結果を載せている場合もあります。 -h まあ、とりあえず全ては -h から始まる。ということで、実行すると以下が出ます。 Usage: node [option

    Node.js の起動オプション、環境変数、npm start の話 - Block Rockin’ Codes
    mooz
    mooz 2012/04/11
  • gyp による Addon 向けネイティブモジュールの作成 - ぼちぼち日記

    ちょうど今朝 node-v0.7.6 がリリースされました。 このリリースではアドオン周りを TooTallNate さんがいくつか修正を行い、なんとか今後の Node.js のネイティブモジュール形が見えてきましたので、その辺の紹介をします。 現状わかっている範囲でネイティブモジュールの状況についてまとめると、 node-v0.7以降では node-waf が廃止されてネイティブモジュールの作成は gyp ベースで行われます。 gyp ベースになると Linux では make, Mac では xcode, Windows では Visual Studio を使ってネイティブモジュールの作成ができるようになります。 gyp によるネイティブモジュールの作成ツールは、ソース同梱の tools/gyp_addon (pythonスクリプト) かTooTallNate製の node-gyp モ

    gyp による Addon 向けネイティブモジュールの作成 - ぼちぼち日記
    mooz
    mooz 2012/03/18
    node-gyp
  • GitHub - sidorares/node-x11: X11 node.js network protocol client

    You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session.

    GitHub - sidorares/node-x11: X11 node.js network protocol client
    mooz
    mooz 2012/03/06
    Node.js で GUI.X11
  • node.jsでBasic認証(express) - ymkoの日記

    expressにモジュールがある。 #!/usr/bin/env node var basicAuth = require('express').basicAuth; var app = require('express').createServer(); // 全てのアクセスに対してBasic認証をかける app.all('/', basicAuth(function(user, pass) { return 'admin' == user && 'express' == pass; })); app.all('/*', basicAuth(function(user, pass) { return 'admin' == user && 'express' == pass; })); app.get('/', function(req, res) { res.send('hello wo

    node.jsでBasic認証(express) - ymkoの日記
    mooz
    mooz 2012/03/02
  • C/C++ オブジェクトを Javascript オブジェクトにエクスポートする - 電波日記@はてな

    V8 の Embedder's Guide を見ると、C/C++ の関数を Javascript から使えるようにするやり方が解説されています。 Accessor のセクションにある Point の例をちょっと拡張すれば C/C++ のオブジェクトを Javascript のオブジェクトとして見せることができるようになりそうですが、オブジェクトのインスタンスを C++ コードとして生成していたりするのでちょっと gap があります。 ここでは、Javascript のオブジェクトに対して C/C++ のオブジェクト(のインスタンス)が対応して、メモリの解放も GC にしたがってよしなにされる、というところを目標にします。 Internal Field の利用 基的には Embedder's Guide のとおりです: Javascript のクラス定義というのは、コンストラクタ関数を基軸

    C/C++ オブジェクトを Javascript オブジェクトにエクスポートする - 電波日記@はてな
    mooz
    mooz 2012/02/28
    internal field
  • Undefined symbol "ev_rt_now" · Issue #5 · Slashed/daemon.node

    mooz
    mooz 2012/02/27
    build ではなく Release を観に行かなければいけないらしい.罠……
  • addons - Node.js Manual & Documentation

    Addons アドオンは動的に共有オブジェクトをリンクします。 それらは、C や C++ のライブラリに接合点を提供します。 API はいくつかのライブラリの知識が必要で、(現時点では) かなり複雑です。 V8 JavaScriptC++ のライブラリです。 JavaScript のオブジェクト作成や関数呼び出し等のインタフェースに使用されます。 ドキュメントは主に、v8.h のヘッダファイル (Node のソースツリーの中の deps/v8/include/v8.h) に記されています。libev は C の event loop ライブラリです。 ファイル記述子が読み取り可能になるのを待つとき、タイマーを待つとき、シグナルを受信するのを待つときはいつでも、 libv のインタフェースが必要になります。 つまり、何らかの I/O 処理をすると必ず libev を使う必要があるという

    mooz
    mooz 2012/02/27
    how to build native extension
  • expressでapp全体の設定値をroutesで使う(module間で変数を受け渡す)方法いろいろ - すぎゃーんメモ

    Expressでテンプレートからプロジェクトを作ると、現在の最新版2.5.4では . ├── app.js ├── package.json ├── public │ ├── images │ ├── javascripts │ └── stylesheets │ └── style.css ├── routes │ └── index.js └── views ├── index.jade └── layout.jade 6 directories, 6 filesのようにファイルとディレクトリが作られる。app.jsが体で、 var express = require('express') , routes = require('./routes') var app = module.exports = express.createServer(); ... app.get('/',

    expressでapp全体の設定値をroutesで使う(module間で変数を受け渡す)方法いろいろ - すぎゃーんメモ
    mooz
    mooz 2012/02/27
  • GitHub - breuleux/terminus: Terminal supporting inline HTML

    You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

    GitHub - breuleux/terminus: Terminal supporting inline HTML
    mooz
    mooz 2012/02/25
    インラインに HTML 要素を埋め込める端末エミュレータ.Terminal 2.0 の時代がやって来たな……
  • Isolates removed

    mooz
    mooz 2012/02/05
    Isolates は取り除かれることに.動作を安定させるためには内部を大幅に書き換える必要があるらしく,わりに合わないとの判断.今後は Domains に注力.
  • Klint Finley「元掃除機セールスマンがnodeの二代目リーダーになった件」 - 以下斜め読んだ内容

    SiliconANGLE 2011.1.31のブログエントリ How a Former Vacuum Cleaner Salesman Became the New King of Node.js | SiliconANGLE ryan=nodeコミッタ引退、npmの人(Isaac Schlueter)=二代目nodeリーダー というのが2012.1末にあった 直接isaacにインタビュー isaacの半生綴られたpodcastを整理したり 授業料出す金なくて中退、掃除機セールスマン、VB漬け時代、wordpressコミュ、YUI入り、etc. isaacから聞き出したnodeの今後のプランとか、ryanの立ち位置とか、joyent入りした件とか isaacの持論も面白い 休息期間大事。2010年はisaacは3か月仕事してない。nodeだってryanがドイツで休息中に生まれた 以下斜め読

    Klint Finley「元掃除機セールスマンがnodeの二代目リーダーになった件」 - 以下斜め読んだ内容
    mooz
    mooz 2012/02/03
    ryan さんコミッタを引退されていたのか……
  • 東京Node学園#3 Domains & Isolates

    2. 自己紹介  @koichik, id:koichik  JavaScriptとの関わり  1997年頃に仕事でServer-Side JavaScriptNetscape LiveWire, Microsoft IIS  Nodeとの関わり  2010/08から触り始める  APIドキュメント翻訳  node-handlersocket  2011/07から (なぜか) コアチーム入り  ろくに貢献できてないので頑張りますー 3. Node安定版の歴史  v0.2 (2010/08/20)  v0.4 (2011/02/10)  SSL/TLSのオーバーホール  新しいHTTPクライアントAPI  組み込みデバッガ  v0.6 (2011/11/04)  ネイティブWindowsサポート  クラスタリング  さらに新しいHTTPクライアントA

    東京Node学園#3 Domains & Isolates
    mooz
    mooz 2012/01/18
    コンテキストをスレッド事に持つ。イベントループ、メモリ空間は分離されている。安全。
  • Node.js でマルチスレッド: isolate を使ってみた。 - ぼちぼち日記

    (注意: Isolates 機能の開発は中止になりました。 参考 https://groups.google.com/d/topic/nodejs/zLzuo292hX0/discussion ) Nodeの次期バージョンの新機能として予定しているマルチスレッド対応については、先日の「東京Node学園3時限目」で @koichik さんが 東京Node学園#3 Domains & Isolates の講演をされていましたが、今朝ちょうどその実装が master に上がりましたので、ファーストインプレッションとしてisolateを使った Node のマルチスレッドをチト試してみました。 (以下 Disclaimer: ここで紹介したAPIの実装や仕様は今後変わる可能性があります。特に Node はリリース直前でも大きく変わることもありますので、) 現時点で Node の isolate は、

    Node.js でマルチスレッド: isolate を使ってみた。 - ぼちぼち日記
    mooz
    mooz 2012/01/18
  • Node v0.7.0の新機能Isolates(マルチスレッド)を試す - y-kawazの日記

    たまたま新環境にNode.js入れてたらv0.7.0がリリースされてたのに気がついたので、勢いで新機能を試してみた。 V8のバージョンが上がったとかもあるけど多分一番の目玉はIsolates(マルチスレッド)のサポートかな、と思う。開発ブランチでは他にもDomainsという機能も実装中らしいと聞いてたがそれはまだv0.7.0では使えないようだ。 Isolatesの使い方がドキュメントの方には載ってなかったのでソースをisolateとかthreadとかで探してみたところ、どうやらchild_processモジュールのspawnやforkのオプションに thread:true を渡してやればマルチスレッドを使ってくれるっぽいことが分かった。 シングルスレッドと非同期I/Oでシンプル&ハイパフォーマンスが売りのNodeだが、よく「マルチコアが使い切れない、重たいCPU処理したら固まるじゃんプギャ

    Node v0.7.0の新機能Isolates(マルチスレッド)を試す - y-kawazの日記
    mooz
    mooz 2012/01/18
  • npm についてまとめてみる - need something more...

    ※この記事は現時点での node.js 最新版 v0.6.6 に付属する npm 1.1.0-beta-4 を元にしています。 ※間違い等ありましたらご指摘いただけると幸いです。 npm は node.js のパッケージマネージャーですが意外と色々な機能が搭載されています。 「man を読め」とは良く言われますが、結構 ドキュメント を読むだけでも大変でした。 npm で使えるコマンドは以下の通りです。 adduser 対話的に username, password, email を登録します。.nvmrc に credential を保存します。後述の npm star する為にはこの登録が必要です。npm config set で username, _password, email をセットしているとデフォルト値として採用される?npm whoami した時に登録したユーザー名が表示

    npm についてまとめてみる - need something more...
    mooz
    mooz 2011/12/26
  • Node.js のエラーハンドリング - 2011-12-13 - 日記

    JavaScript Advent Calendar 2011 (Node.js/WebSocketsコース) の 13 日目の記事です. Node といえば非同期プログラミングですが,そのスタイルは大雑把にわけて 2 種類あります.一つ目は fs モジュールなどで使われているコールバック関数のスタイル. fs.readFile(path, function(err, content) { if (err) { // エラー時の処理 return; } // 成功時の処理 });このスタイルは,何らかの要求に対する結果を一発で受け取る (要求と結果が 1 対 1) 場合に使われます.そして,コールバック関数の第1引数でエラーの有無が通知されます.エラーがなければ null,エラーがあった場合は Error オブジェクトというのが原則のような気がしますが,undefined が渡されたりする

    Node.js のエラーハンドリング - 2011-12-13 - 日記
    mooz
    mooz 2011/12/13
  • Node.js で重い処理をしてしまったときにタイムアウトするの法 - tokuhirom's blog

    (この記事は Node.js アドベントカレンダー不参加記事です) チャットサーバー的な使い方とか意外とみんな興味なくて、普通のウェブアプリケーションなどをかく、という用途にちょっと node.js がつかえたらいいのにな、とおもっている人がおおいようにかんじています。Node.js が人気なのは、v8 をうまくパッケージングしているのが node.js ぐらいで、そして v8 をうまくパッケージングするのが結構めんどくさいから、というところが大きいのです。ぶっちゃけ node.js が〜 とさわいでる人のうち8割は I/O multiplexing だからとかそういう理由で支持しているわけではなかったりするのです(偏見)。 さて、普通の web application のようなものを書こうとしたときに Node.js って基シングルスレッドだし、なんかうっかり重い処理したときにどうした

    mooz
    mooz 2011/12/13
  • Node.js の Stream API で「データの流れ」を扱う方法 - Block Rockin’ Codes

    追記 11/12/6 少し誤字脱字を修正、加筆 11/12/7 koichik さんにコメントで頂いたリンクと、その内容について追記 11/12/7 edvakf さんに頂いた指摘を修正 文 この記事は、JavaScript Advent Calendar 2011 (Node.js/WebSocketsコース) の 4 日目の記事です。 Node.js には Stream という API があります。 Stream はとても重要な技術で、 「Stream を制するものは、 Node.js を制す」と言っても過言ではありません。 実際、 Stream は Node.js が得意とする I/O の部分を使いこなすために、 押さえておくべき技術なので、今回はこの Stream について紹介したいと思います。 参考 Jxck's OutPut - Node.js の Stream I/O のお

    Node.js の Stream API で「データの流れ」を扱う方法 - Block Rockin’ Codes
    mooz
    mooz 2011/12/07
  • GitHub - nroonga/nroonga: A library for building Groonga powered nodes

    You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

    GitHub - nroonga/nroonga: A library for building Groonga powered nodes
    mooz
    mooz 2011/12/04
    Groonga の Node.js バインディング
  • Node.js の環境管理(version manager) について。 #nodejs_jp

    [追記] nvm は .zshrc のいじり具合によっては、表示がうまくいかなかったり、すこし変な動きをしたりすることが有るという意味で。nvm 自体はそれらを事細かに対応するつもりはなく、自分は bash に切り替えることで全ての不具合を回避しているという意味です。「nvm は使い物にならん」とか「インストールもまともに出来ない」などと言うつもりはないし、書いてません。実際今使っています。 全ては自分が zsh を使っていることに起因している。 node.js v0.6 のリリースと npm のアップデートも有り、 一旦環境を見直そうと .nvm/ .npm/ を全部消した。 折角ならツールも見直してみようかと思ったが、あまり変わってなかった。 node.js の環境管理(version manager)は以下のものがある。 nvmnavennodeenvnvm(https://gith

    Node.js の環境管理(version manager) について。 #nodejs_jp
    mooz
    mooz 2011/11/12