この「インタラクションデザインの教科書 (DESIGN IT! BOOKS)」原著の題だと「Designing for Interaction: Creating Innovative Applications and Devices (Voices That Matter) 」は、著者のDan Safferがカーネギーメロン大学で大学院生としてインタラクションデザインの講義を担当する際に生徒に読ませるのに良い本を見つけるのに苦労をしたことを発端としている。そのせいか、同じような分野を扱っている「About Face 3 インタラクションデザインの極意」と比べるとザックリと細部を落とし見通しがつけやすい構成になっている。この本はまだ新しいこの領域の現在進行中にある中で、どのようになっているのか、そしてどのような手法の組み合わせを検討すべきかについて参考になった。
5月 2012
「虐殺器官」伊藤計劃
伊藤計劃の書いた「虐殺器官」を読んだ。おおよそのあらすじは、以下のようになる。
911ではじまったテロとの戦いが続いている近未来が舞台となる。その頃、アメリカの軍隊は、陸軍(アーミー)、空軍(エアフォース)、海軍(ネイビー)、海兵隊(マリーンズ)、情報軍(インフォメーションズ)から構成されており、主人公の”ぼく”グラウヴィス・シェパードは、情報軍・特殊検索軍i分遣隊で大尉として従軍している。この部隊はアメリカ5軍の中でも暗殺を請け負う唯一の部隊であり、主人公も世界各地の紛争地帯で暗殺を遂行している。
そして、その世界では、ここ数年後進国での虐殺が増えてきている。その虐殺地帯に現れ暗殺対象になり、幾度も失敗し続けているジョン・ポールという人物が居る。この物語は、ウヴィス・シェパードが、その目標であるジョン・ポールをプラハやインドなど世界各地で追いかけていく話であり、その過程で虐殺の動悸や方法が明らかになっていく構成となっている。
さくらのVPS設定[9]-NginxでPHP-FPMを使う。
NginxでPHPを使おうとした場合、別プロセスで動くPHPとFastCGIでのソケット経由でやり取りを行うことになる。これを管理するモジュールの一つにPHP-FPMというものがあり、今回はそれを使用することにする。
こちらのサイトにもPHP-FPMの詳しい説明が書かれてありとても参考になった。
apache のかわりにnginxを使ってみる(2) php-fpmをインストールする
PHPそのものもインストールされていないので、そちらのインストールも説明していく。
PHPは5.3.3まではパッチを当てる必要がある。それ以降であればPHP-FPMが予め組み込まれておりパッチを当てる必要は無い。そのため、レポジトリ登録したら一度確認をしてからインストール作業に入る。
さくらのVPS設定[8]-NginxでリバースプロキシとNodeアプリ
リバースプロキシは、アクセスを代行して受け取るサーバーだ。wikipediaから引用すると、以下のような説明になる。
リバースプロキシ
リバースプロキシ(英: Reverse proxy)または逆プロキシは、特定のサーバへの要求を必ず経由するように設置されたプロキシサーバ。一般的なプロキシとは異なり不特定多数のサーバを対象としない。リバースプロキシは、不特定多数のクライアントから寄せられる要求に対して、応答を肩代わりすることにより特定のサーバの負担を軽減したり、アクセスを制限することにより特定のサーバのセキュリティを高めたりする目的に用いられる。
node.jsでアプリを作成しforeverで永続化した場合、xxx.xxx.xx:3000などと最後にポート番号がついてしまう、これがとても気になっており、nginxでリバースプロクシを入れてアプリごとサブドメイン運用をしようとしたきっかけとなった。もちろんサブディレクトリの方にも入れることができるので簡単な実験とかはそちらの方がいいのかもしれない。
またnodeには動的な物を任せ、静的な部分についてはnginxで取り扱う形のほうがパフォーマンスから見ても良いようだ。
それとリバースプロクシはwebsocketを通さないのでnginx_tcp_proxy_moduleを使用して動かす方法も書いておく。
さくらのVPS設定[7]-NginxとNode.jsを組み合わせた時のディレクトリ・グループ構成
改めてディレクトリ構成やグループとかを決め直した。
fooはシェルにログインする時のアカウントだ。
作業は以下を参考にさせて頂いた。
グループを使いこなす
さくらのVPS設定[6]-Nginxをpacoでインストール
ハイパフォーマンスHTTPサーバ Nginx入門を購入した。読んでいるとやっぱりnginxの再インストールをしたくなってきた。さらにグループだとかも見直しがしたくなってきたのでnginxだけでなくOSの再インストールからはじめることにした。
mongoDBのインストールまでは、今までと一緒で、nginxのインストールから変更となる。
ソースインストールで、しかも再インストールがありそうなnginxはpacoで管理するのがよさそうだ。
“make install”したソフトウェアを管理できる超便利ツール「Paco」
「Paco」で「make uninstall」できないソフトを削除する
yum,rpmで扱えないアプリケーションを管理するソフトpaco
さくらのVPS設定[5]-Nginxインストールと起動設定
nginxは「エンジンエックス」と読み、軽量高性能なHTTP、リバースプロキシ、メールプロキシだ。
公式からの説明を引用すると以下のようになる。
nginx [えんじんえっくす] は Igor Sysoev によって作られた HTTP とリバースプロキシのサーバで、メールプロキシサーバでもあります。Rambler (RamblerMedia.com) を含むロシアの多くの高負荷サイトで5年以上も動いています。Netcraft によると、nginx は 2010 年 4 月時点で 4.70% の人気サイトでサーバーとして、もしくはプロキシとして利用されています。成功例としては FastMail.FM や WordPress.com があります。
node.jsと同じくイベント駆動型アーキテクチャである。
nginxを表に置きリバースプロキシと静的ファイルの取り扱いを行い、裏に動的ファイルを扱う形でNode.jsを置く方法でVPSサーバーを構築していこうと考えている。
またwebsockeでリアルタイム通信を行う場合、そのままではリバースプロキシできないのでnginx_tcp_proxy_moduleというモジュールを使用する。この説明も加えておく。
まず今回はモジュールを組み込んだnginxのインストールと自動起動の設定までを行う。
< 追記>いろいろと見直しをし再インストールした。
さくらのVPS設定[4]-MongoDBのインストール
引き続きMongoDBだが、これも以前のエントリとほぼ同じだ。
VPS作業メモ[8]-MongoDB
参考にさせて頂くサイトも同じだ。
2.0 からはじめる MongoDB – 第1回 #mongodbjp
MongoDB公式サイトでの記事はこちらにある。
RedHat Enterprise、CentOS、またはFedora LinuxにMongoDBをインストール
さくらのVPS設定[3]-Node.jsのインストール
nvmでnode.jsのバージョンを、npmでパッケージを管理する方法を取る。
nvm (Node Version Manager)
複数バージョンを切り替え
npm (Node Package Manager)
アプリごとの使用パッケージを管理。
基本は以前のエントリと同じだ。
VPS作業メモ[6]-node.js
こちらも、確認のために見ていた。
Node.jsの管理はnvmで
CentOS5.5 に node.js をインストールする
さくらのVPS設定[2]-CentOS基本設定
今回はセキリュティを中心にしたCentOS基本設定を行う。
主にというか、ほぼこちらの記事を元にさせていただき設定を行った。
はじめてのさくら VPS + CentOS の初期設定からチューニングなどの作業まとめ
そして補足的にコチラを参考にさせていただいた。
さくらのVPSを借りたら真っ先にやるべきssh設定
CentOSをサーバーとして活用するための基本的な設定