2011-01-01から1年間の記事一覧

神戸に引越しました

今年の7月に徳島から神戸に引越しました。 その後、いろいろ忙しくて、ブログが更新できませんでした。。 またブログを再開したいと思います。

java7のインストール

Ubuntuにjava7をインストールしてみるとする。java6やjava5と同居させたいので、alternativesを使う。 まずは、Oracleのサイトから、ファイル「Linux x86 - Compressed Binary」をダウンロードする。 後は、ファイルを展開し、alternativesに登録する。 cd /…

JQuery Mobile とphonegap を使ってみた。

JQuery Mobileを使ってみた。 JQuery Mobileは、スマートフォン向けのUIを作成するためのJQueryプラグインである。 使う前は、モバイル向けのJQueryかと思っていたが、そうではなく、モバイル用の画面を作るためのプラグインであるため、JQuery本体が別途必…

オープンソースカンファレンス2011 Kansai/Kobe でNode.jsの発表を行ないました

4/16(土)に開催されたオープンソースカンファレンス2011 Kansai/Kobeで、Node.jsの発表を行ないました。 朝早くから多くの方に参加して頂き、大変ありがとうございました。 拙い説明で申し訳ございません。資料をアップロードさせて頂きます。Node.jsを使…

参考資料

UNIXネットワークプログラミング〈Vol.1〉ネットワークAPI:ソケットとXTI developerWorks「Boost application performance using asynchronous I/O」 「同期I/O」と「非同期I/O」の定義、とか 非同期I/O 概説 epoll を使った echo サーバ libevでechoサーバ…

Node.jsの処理フロー

Node.jsでは、「libev」と「libeio」を組み合わせて使用しています。 下記のようなファイル読み込み処理を実行すると以下のような処理フローになります。 var path = require('path'), fs = require('fs'), filepath = path.join(__dirname, 'a.txt'), fd = …

libeioのサンプルコード

「libeio」は、C言語で書かれた非同期I/Oライブラリです。 実装的には、キューとスレッドプールを使い、I/Oを非同期並行処理します。 先程の「Boost application performance using asynchronous I/O」の図の右下(Asynchronous + Non-blocking)に「libeio…

libevでechoサーバ

libev版 echoサーバ #include <stdio.h> #include <stdlib.h> #include <string.h> #include <sys/socket.h> #include <sys/types.h> #include <arpa/inet.h> #include <unistd.h> #include <fcntl.h> #include <errno.h> #include <ev.h> #define SERVER_PORT 8011 #define MAX_BACKLOG 10 #define MAX_EVENTS 100 #define RCV…</ev.h></errno.h></fcntl.h></unistd.h></arpa/inet.h></sys/types.h></sys/socket.h></string.h></stdlib.h></stdio.h>

epollでechoサーバ

epollとlibevをそれぞれ使って、echoサーバを実装すると以下のようになります。 ubuntu 10.10で実行しました。 epoll版 echoサーバ #include <stdio.h> #include <stdlib.h> #include <string.h> #include <sys/socket.h> #include <sys/types.h> #include <sys/epoll.h> #include <unistd.h> #include <fcntl.h> #include <netinet/in.h> #define SERVER_PORT 8012 #</netinet/in.h></fcntl.h></unistd.h></sys/epoll.h></sys/types.h></sys/socket.h></string.h></stdlib.h></stdio.h>…

Node.jsと非同期I/Oと混乱した私

最近、Node.jsに興味があります。Node.jsを調べていると、I/O関係で、非同期I/O、ノンブロッキング、コールバック等、いろいろとキーワードがでてきて混乱してきます。 そこで、ブログに書いて整理しよう思います。間違いがあれば是非、指摘してください。 …

@IT node.js入門-第2回

naveでNode.jsのバージョン管理&イベントループ詳説 (1/3):node.jsでサーバサイドJavaScript開発入門(2) - @IT@ITで連載しているNode.js入門の第2回が掲載されました。 naveを使ったインストール方法とイベントループについて書きました。またご指摘頂…

Node.js on Androidの記事を翻訳してくれました。

Node.js on Androidの記事を@jedschmidtさんが翻訳してくれました。 ありがとうございます。@jedschmidtさんNode.jsを開発しているjoynetのTom Hughes-Croucherさんが紹介してくれました。ありがとうございます。この記事は、ARM上のdebianでNode.jsをビルド…

Node.js on Android (English version)

This article is translate version from Japanese. The original Japanese version is this article. This article was translated by @jedschmidt. Special Thanks @jedschmidt!! And @jedschmidt was introduced by Tom Hughes-Croucher who is working i…

おにぎり

避難所で、おにぎりを作っていて、もう米が無くなるとボランティアの主婦の方が言っていた。そこに夫が店の食べ物を全て運んできた。経営している小売店がつなみでつぶれ、食べられそうな物を全て持ってきたらしい。米とか日持ちするのに、全てだそうだ。い…

計画停電のスケジュールをメールで受け取る方法

Googleアカウントを作成し、Googleスケジュールを作成する。 このサイトにアクセスし、「[Googleカレンダーに↑をクリックして追加できます]」の上にあるボタンを押す。 自分のスケジュールにインポートされるので、このサイトを参考にリマインダー設定を行う…

@ITで短期連載していた「クラウドとフレームワークで 超簡単ケータイ開発」が完了しました。

携帯の醍醐味! 位置情報とGoogleマップを使うには (1/3):クラウドとフレームワークで超簡単ケータイ開発(3) - @ITGAE、Mobylet、Slim3、Twitter4jを使えば簡単にクラウド上でガラケーサービスが作れます。Node.jsの連載は引き続き頑張りますので、こち…

オープンソースカンファレンス2011関西@神戸でNode.jsのセミナーをやります

オープンソースカンファレンス2011関西@神戸でNode.jsのセミナーをやります。 オープンソースカンファレンス2011 Kobe - イベント案内 | 2011-04-16 (土): Node.js入門 Node.jsの入門向けのセミナーです。宜しくお願いします。オープンソースカンファレンス2…

はてブで1000ユーザ突破したらご褒美にステーキ

おかげ様で、@ITのnode.jsの記事に、はてブが結構ついています。 さすが、今、話題のnode.jsですね。はてブで1000ユーザ突破したらご褒美にステーキに行きます。 但し、ステーキガストの1000円ステーキですけれど。。 ええ、1000ユーザだから、1000円です。

node.jsの入門記事を@ITに寄稿しました

サーバサイドJavaScriptの本命「node.js」の基礎知識 (1/3):node.jsでサーバサイドJavaScript開発入門(1) - @IT皆で盛り上げて、今年はサーバサイドJavaScriptの年にしましょう!!

alternativesでJava環境の切り替え

よく忘れるのでメモ。 うっかり、OpenJDK等を入れちまった場合に、Sun JDKに戻したい場合は、alternativesを使う。 tmori@signify:~$ sudo update-alternatives --config java There are 2 choices for the alternative java (providing /usr/bin/java). Sel…

最近のIT業界について

IT技術は、日々の技術革新が激しい分野だとよく言われるが、最近はさらに激しくかつ、一般化の速度も早いような気がする。特にKinectやAndroid等の電子機器回りが自分的にマイブームである。例えば、kinectでも以下の動画が有名だ。・3Dビデオカメラ化 ・ホ…

MacBook Air 11インチ欲しい!

MacBook Air 11インチ欲しい! メインマシンとして、ThinkPad R500を使用しているけれど、出張時に持ち歩くのはつらい。 MacBook Airが欲しいな。 そしたら、初のMacOSXになるな。 今、使用しているのが、Ubuntuだから、MacOSXにSwtichしちゃおうかな。

64bit化

正月休みを利用して、開発マシンを増強しました。HDDを7200回転の500GBに交換。メモリを6GBに増強。そのため、OSをUbuntu 10.10の64bitにクリーンインストールし直しました。64bitにしたことにより、今の所、3つ程問題点が出ました。 (3つの内、2つは64b…

@ITに記事を寄稿しました。

@ITに記事を寄稿しました。 Google App EngineとSlim3で始める携帯Web入門 (1/3):クラウドとフレームワークで超簡単ケータイ開発(1) - @IT JavaでTwitterをOAuth認証して使えるTwitter4Jとは (1/3):クラウドとフレームワークで超簡単ケータイ開発(2) …

Android Bazaar and Conference 2011 Winterにて、LTしました。

Android Bazaar and Conference 2011 Winterにて、LTしました。内容は、本ブログでも記事にしたnode.js on androidです。Nodejs on androidView more presentations from Toshio Mori.

新年のご挨拶

新年あけまして、おめでとうございます。 といいながら、もう12日ですが。。 今年は、いろいろとアウトプットを行う年にしたいと思います。