タグ

node.jsに関するamari3のブックマーク (73)

  • JavaScript作業自動化ツール「Grunt 1.0.0」が登場。約2年もの開発停滞から復活

    Webサイトやアプリケーション開発で発生する作業を自動化してくれるツール「Grunt」の正式リリースとなる「Grunt 1.0.0」がリリースされました。 Gruntは、いわゆるビルドツールやタスクランナーと呼ばれるソフトウェアの1つで、Node.jsをベースにしたオープンソースとして開発されています。 JavaScriptで自動化したい作業を記述でき、また多くのプラグインによって一般的な作業の多くを簡単に自動化できます。例えば特定のディレクトリを監視し、そこに保存されたファイルを自動的に処理する、といったことが可能です。 特にWebサイトやWebアプリケーション開発で発生するタスク、例えばJavaScriptファイルのミニファイ(最小化)、自動ユニットテストの実行、文法チェックなどでよく使われています。 昨年jQuery Foundationに加入し、復活したGrunt Gruntは20

    JavaScript作業自動化ツール「Grunt 1.0.0」が登場。約2年もの開発停滞から復活
  • Node.jsのClusterをセットアップして、処理を並列化・高速化する | POSTD

    Node.jsが多数のイベントの非同期な処理に長けていることはよく知られていますが、それが単一のスレッドで行われていることを多くの人は知りません。Node.jsは実際にはマルチスレッドではないので、リクエストは全て単一スレッドのイベントループで処理されているだけなのです。 そこで、Node.jsクラスタを使って、クワッドコアプロセッサの能力を最大限に引き出しましょう。コードの複数のインスタンスで起動し、さらに多くのリクエストを処理します。少し難しく思えるかも知れませんが、Node.js v0.8で導入された cluster モジュールを使えば、実はとても簡単です。 もちろん、これは、作業を別々のプロセスに分割することのできるアプリならどんなアプリにでも役立ちますが、webサイトのような多くのIOリクエストを処理するアプリには特に重要です。 残念ながら、並行処理は複雑なので、サーバ上でのアプ

    Node.jsのClusterをセットアップして、処理を並列化・高速化する | POSTD
  • 大規模Node.jsを支える ロードバランスとオートスケールの独自実装

    This document discusses messaging queues and platforms. It begins with an introduction to messaging queues and their core components. It then provides a table comparing 8 popular open source messaging platforms: Apache Kafka, ActiveMQ, RabbitMQ, NATS, NSQ, Redis, ZeroMQ, and Nanomsg. The document discusses using Apache Kafka for streaming and integration with Google Pub/Sub, Dataflow, and BigQuery

    大規模Node.jsを支える ロードバランスとオートスケールの独自実装
  • Node.js v5.0 がリリースされました。 - from scratch

    Node.js v5.0 がリリースされました!! 今回はどちらかと言うと機能面というより、 Node.js v5.0 の位置づけを中心に解説したいと思います。 機能面も一応載せますが、学園祭前で時間があまり作れないので、さくっと終わらせます。 機能面での変更 ES2015の文法追加 Spread operator が追加 Spread operator が追加されました。 これまで配列をJavaScriptの関数に引数に展開して渡す場合、以下のように記述する必要がありました。 function f(x, y, z) { console.log(x); console.log(y); console.log(z); } var args = [0, 1, 2]; f.apply(null, args); この書き方はあまり直感的じゃなく、また new 演算子と併用できないという問題があった

    Node.js v5.0 がリリースされました。 - from scratch
  • Nodeアプリの設定系モジュールいろいろ - すぎゃーんメモ

    Node(node.js)でwebアプリを開発するにあたって、DBの情報やSession keyのsalt, OAuthのsecret_keyなどの設定をどうするかを悩み中。考えているのは アプリケーションのコードに設定値を埋め込むようなことは絶対にしたくない ということは設定用のファイルを用意してそこを読み込む形に? 開発環境と番環境で設定が変わるので上手く切り替えられるようにしたい npmで普通に入れられる軽量なライブラリで実現出来れば良い …で、どんなのがあるか調べてみたところ結構色々あったので以下の6つくらいを実際に入れて使って試してみた。 cjson config confu jsonconfig nconf node-config cjson コメント付きで記述したJSON形式なファイルを使える、とのこと。 /* * This is my app configuration

    Nodeアプリの設定系モジュールいろいろ - すぎゃーんメモ
  • socket.ioのmappingを別ファイルで管理したい - はてなダイアリー大好き日記

    socket.ioは使い勝手が良い。 大規模になるとよくあるサンプルのように1ファイルに全部書きたくないので分ける。 socket.manager.js var manager = module.exports = { base : './controller/socket/', set : function(path, info, io, socket){ socket.on(path, function(message){ var file = info.split('#')[0] var func = info.split('#')[1] || null; var callback = manager.load(file, func); callback(io, socket, message); }); }, deploy : function(mapping, io, socke

    socket.ioのmappingを別ファイルで管理したい - はてなダイアリー大好き日記
  • node.js の雑感【日記 2015/06/22】

    前: IBM 産業スパイ事件(1982)次: 若者の恋愛観 node.js の雑感  2015-06-22 17:41:16  コンピュータ ここ1年くらい、仕事で node.js をいじっているのだけど、ちょっと愚痴を書いてみる。 node.js が流行したのはもう何年も前のこと。 Apache よりずっと速く処理できる、ということだったけど、仕事でそこまで処理速度が必要なことはやっていなかったし、その時は、ふぅん、そんな技術もあるんだ、という程度。 1年ほど前に、WEB socket 使いたい仕事があって調べたら、node.js を使うのが一番やりやすいとわかった。 最初はよくわからない技術だったけど、その後それなりに実績もあるようだし、使ってみようと思った。 と書いたところで、相変わらず node.js がマイナー技術だという認識なので、コイツが何者であるかを最初に説明しよう。 今こ

  • Node.js v4がリリースされたらコードの書き方でどこが変わるか? - なっく日報

    追記1:続・Node.js v4がリリースされたらコードの書き方でどこが変わるか? - なっく日報に続きを書きました。 追記2:Computed propetiesにバグがあることを追記しました。 追記3:Computed propetiesのバグが修正されたので該当箇所を削除しました。 9月には出るということで、ちょっと考えてみました。 iojs v3のES6でshipping featuresなもの(V8においてES6でONにしても大丈夫な機能)で書いてますが、もし違ったらすいません。 iojs.org 変数宣言 基letとconst。varは使わない。 'use strict'; // strictモードでないとletとconstは使えない const STATIC_VAR = '定数'; let a = 'varは使わない'; for (let i = 0; i < 10; i+

    Node.js v4がリリースされたらコードの書き方でどこが変わるか? - なっく日報
  • Socket.IO API 解説 - Block Rockin’ Codes

    追記 11/7/31 Socket.IO v0.7 解説を最初に途中までで出す。 11/8/1 だいたい全部新機能なので '(新機能)' って書くのやめた。 11/8/4 オプションの設定周りを追記 11/8/6 認証周りを追記 11/8/12 スタンドアローンのサンプルを追記 11/9/27 Socket.IO v0.8 対応について追記 11/9/27 タイトルを Socket.IO API 解説に変更 11/9/27 翻訳サイトリンク追加 公式マニュアル翻訳サイト そういえば公式サイトの翻訳をフォークしたリポジトリで、それなりの更新頻度でやってます。 リポジトリの wiki も地味に訳しててこっちは結構役に立ちます。記事と合わせてどうぞ。 家 http://socket.io/ 翻訳ページ http://jxck.github.com/socket.io wiki https:/

    Socket.IO API 解説 - Block Rockin’ Codes
  • Node.jsでMySQLを使うメモ - Qiita

    JavaScriptMySQLがつながる。そう Node.jsならね。 前置き node.js始めて3日目程度の知識で書いています。 また、MySQLもそんなに詳しいわけではないです。 この記事は家のドキュメントを元に作成しました。 コードもほぼ家のコピペです。 間違い等ありましたらコメントでおしえてください。 ここではnode-mysqlを使います。 インストール npm install mysql コネクション var mysql = require('mysql'); var connection = mysql.createConnection({ host : 'localhost', user : 'me', password : 'secret' }); //これは省略してもoK。 connection.connect(); connection.connect(fun

    Node.jsでMySQLを使うメモ - Qiita
  • node.jsのいろいろなモジュール22 – mochaでテストを書こう | DevelopersIO

    mochaとは mocha(モカ)は、javascriptの単体テストでよく使用されているテストフレームワークです。 node.jsやブラウザから実行ですることもできます。また、非同期のテストも可能になってます。 なお、mocha自体はアサーション機能は持っていません。なので、値の検証は標準のassertとかchaiとかshouldを使用します。 TDDやBDDスタイルでテストを記述でき、テスト結果もいろいろな形式で出力できます。 今回はmochaの基的な使用方法について紹介します。 環境構築方法 今回使用した動作環境は以下のとおりです。 OS : MacOS X 10.7.4 Node.js : v0.8.15 npm : 1.1.66 適当なディレクトリを作成し、そこでnpmを使用してmochaをインストールします。 mochaコマンドを使用するので、gオプションつきでインストールし

    node.jsのいろいろなモジュール22 – mochaでテストを書こう | DevelopersIO
  • Node.js — Node v4.0.0 (Current)

    The collaborators of the Node.js project and the members of the Node.js Foundation are proud to offer v4.0.0 for general release. This release represents countless hours of hard work encapsulated in both the Node.js project and the io.js project that are now combined in a single codebase. The Node.js project is now operated by a team of 44 collaborators, 15 of which form its Technical Steering Com

    Node.js — Node v4.0.0 (Current)
  • blog.potproject.net

    Anthropic ClaudeのGo言語用SDKを公開しました Claude 3 Opus image https://www.anthropic.com/claude みなさん、もうClaude 3は使われましたか?使いましたよね? Anthropicが生成AIモデル"Claude 3"を発表、"Opus"モデルとその人間に近い能力へ注目集まる OpenAI の元メンバーによって設立されたアメリカ人工知能スタートアップ企業Anthropicが開発...

    blog.potproject.net
  • node v0.12の公開鍵暗号API - NullPointer's

    Added APIs for RSA public/private key encryption/decryption. Node v0.12.0 (Stable) cryptoモジュールに公開鍵暗号のAPIが追加されたそうなので試す。 鍵生成 $ openssl genrsa 2048 > test_private.key $ openssl rsa -pubout < test_private.key > test_public.key コード var crypto = require('crypto'); var fs = require('fs'); // 公開鍵、暗号化用 var publicKey = fs.readFileSync('test_public.key', {encoding: 'ascii'}); // 秘密鍵、復号用 var privateKey = fs.r

    node v0.12の公開鍵暗号API - NullPointer's
  • Node.js v0.12で使えるようになるES6+の機能一覧

    ES6+カジュアルトーク資料です!!

    Node.js v0.12で使えるようになるES6+の機能一覧
  • いぇーい yield と co と koa

    express の後継だけあって期待が高まってる Koa ですが、あの珍妙な yield による同期処理っぽい記述がどのようにして支えられているかメモってみます。 年末年始を経てヤル気が高まってきたので、久々にnodeの話。 visionmedia/co さて題。 早速ですが、koa の middleware における、あの特徴的な yield 天国は、koa ではなく co というモジュールによるものです。サンプルを見るのが早いです。 件は yield を使うので、現時点では node v0.11.x を --harmony オプション付き実行が必要なことに注意してください 下記は co を単品で利用した場合のサンプルです。 /** * GETリクエストを非同期処理するモジュールを想定 * @example get('http://example.com')(function() {

    いぇーい yield と co と koa
  • npmとpackage.json使い方 - Kokudoriing

    node.jsと言えばnpmですよ。 それくらいnpm素敵です。RubyBundlerとかvimのVundleとかみたく素敵です。 まずはnpmの作法というか、思想というか。 いや、npm含めnode.js初心者なので間違ってたらこっそり教えていただければ幸いです。。 npmはローカルインストールとグローバルインストールがあります。 npm install hogehoge がローカルインストール。 この場合、作業ディレクトリのnode_modulesディレクトリにローカル環境が出来て、そこにインストールされる。 デフォルトがローカルインストールなので、個々のプロジェクト毎に環境持てよということなんでしょう。 npm install -g hogehoge でグローバルインストール。 グローバルインストールは~/node_modulesにグローバル環境を構築し、そこにインストールします。

    npmとpackage.json使い方 - Kokudoriing
  • [Node.js]pm2でデーモン化

    Node.jsアプリのデーモン化には、簡単で高機能なpm2がおすすめです。 pm2をインストール $ sudo npm install -g pm2 サンプルプロジェクトを作成 $ mkdir hello-pm2 && cd hello-pm2 $ touch package.json $ touch server.js package.json { "name": "hello-pm2", "description": "pm2 test app", "version": "0.0.1", "private": true, "dependencies": { "express": "3.x" } } server.json /* jshint undef: false, unused: false */ var express = require('express'); app = ex

  • Socket.IOをRedisで分散する

    ここ最近、Socket.IOとRedisをいじっていてはまったりしたものの、RedisでSocket.IOのメッセージを分散できたようなのでそれのメモ。 2つのnode.jsが立っていて、それぞれクライアントからメッセージを受け取る 2つのnode.jsは1つだけあるredisのmasterにメッセージを送る redisのmasterは2つあるslaveそれぞれにメッセージをPUBLISHをする 2つあるredisのslaveはSUBSCRIBEでメッセージを受け取る 2つのnode.jsはそれぞれが監視しているredisのslaveからメッセージを受け取る 図としては以下のような感じ。(わかりづらい) <--- <---------------------------- client node.js redis(slave) ---> ---- ---> | | | | ---> ---

  • LoopBackでSocket.IOを使う方法 - Qiita

    RESTなWebAPI作るためのフレームワークなのにSocket.IO使うっていうケースがどの程度あるのかわからないけれど、日語情報が無かったのでメモ。 記事は東京Node学園入学式2015の時にLTした内容『Loop backを使った極初歩的なapiswiftで作るオシャレアプリ()』の延長版です。 いくつか未検証事項もあるけどご容赦を。 記述漏れ等で「動かねーぞ!」って時はコメントください。 前提 loopback: 2.8.0 socket.io: 1.3.5 io.js: 1.5.x 動作確認は * MacOSX 10.10 * Heroku にて行いました。 slc loopbackして雛形生成してある状態から作業を始めます。 Socket.IOの利用方法 多分実用的な実装方法の紹介です。 インストール npm install socket.io --saveで普通にインス

    LoopBackでSocket.IOを使う方法 - Qiita