投稿

Domain名でAccessしたときにApacheの応答が異様に遅い

イメージ
社内のServerをReverse Proxyを使って外部に公開する設定をしたときに、Domain名でAccessすると異様に遅い。IP Addressの場合は全く問題なし。 http://hoge.domain.com/ と http://192.168.0.xxx/ の違い Apacheの設定やServer側の名前解決など、いろいろ疑ってみたけど、よく分からない。Domainを指定すると、Apacheの応答が遅いので、Serverで何か処理しているのかな?と思いつつ(↓FirebugのTimeline) 気付いた! FirefoxにProxyの設定をしてあって、Domainを指定すると日本のServer経由で参照してた・・・。orz これに気付くまでに3時間。   < Related Posts > ApacheにReverse Proxyを設定して社内の別Serverを外部に公開

ApacheにReverse Proxyを設定して社内の別Serverを外部に公開

前に調べた 特定のDomainは社内の別Serverに転送するやり方。外部からは転送されていることは分からない。これをReverse Proxyというらしい。 やりたい事は社内に複数のVirtual Machineが違う環境で存在していた場合に http://mydomain.com/app1 -> Virtual Machine1に転送 http://mydomain.com/app2 -> Virtual Machine2に転送 という感じに振り分けたい。 今回は既に80 Portを受け取るServerがいるので、そのApacheのConfig Fileに追記した。 <VirtualHost *:80>   ServerName stage.my.domain   ProxyRequests Off   ProxyPass /app1 http://192.168.0.81/app1   ProxyPassReverse /app1 http://192.168.0.81/app1   ProxyPass /app2 http://192.168.0.82/app2   ProxyPassReverse /app2 http://192.168.0.82/app2 </VirtualHost> 特定の人にしか見せたくない場合は、Basic認証をかける。 前の記事 を参考に。 mod_proxy - Apache HTTP サーバ   次回引越しのときには外部からのAccessを一元管理するServerを一台用意して、そこに Delegate か Pound をInstallして振り分ける予定。 Poundで作るロードバランサとSSLラッパ(1/4) - @IT   < Related Posts > 1つのGlobal IPでDomainごとに別のWeb ServerにRoutingしたい(調査編)

Google Tech Talksの講演動画には役に立つ情報がたくさん

イメージ
HTML5やnode.jsに関して調べているときに YouTubeにあるGoogle Tech Talksの動画 に素晴らしい情報がたくさんあることに気付いた。. 英語だけど。 あとでじっくり見るためにMemo. Building a JavaScript-Based Game Engine for the Web   Node.js: JavaScript on the Server   Speed Up Your JavaScript   Google検索しても見つかりづらいので、YouTubeに実装してほしい機能は 音声からTextの抜き出し 動画からTextの抜き出し 近い将来実装されてそう。

[VMware Fusion]LinuxにVMware ToolsをInstallして時刻同期

前 はVMware ToolsをInstallしなくてもcron + ntpupdateで時刻同期すればいいと書いていたけど、SingaporeにHostごと持ってきたときに全てのGuest MachineのNTPの設定を変更しないといけないことに気づいたので、VMware Toolsで時刻同期することにした。 Host環境: Mac OS X Server 10.6.7 + VMware Fusion 3.1.2 Virtual Machine: CentOS5.5 まずはVirtual Machine -> Install VMware ToolsからImageをMount. then Virtal MachineのConsoleで # mkdir /mnt/cdrom # mount /dev/cdrom /mnt/cdrom/ # cp /mnt/cdrom/VMwareTools-8.4.5-332101.tar.gz ./ # tar xzvf VMwareTools-8.4.5-332101.tar.gz # cd vmware-tools-distrib/ # ./vmware-install.pl 全てDefaultで答えていけばOK. 自動起動も勝手に登録してくれる。確認 # chkconfig --list # /etc/rc.d/init.d/vmware-tools status # date   < Related Posts > 【VMware Server】LinuxゲストマシンにVMware Toolsをインストール VMwareでLinuxの時間がずれるのをなんとかする(時刻同期)

MongoDBをyum経由でCentOSにInstall

node.jsの開発をするときにMongoDBを使おうとInstall、設定したときのMemo 環境はCentOS5.5 64bit Official Siteにyum経由でInstallするやり方 があるので、そちらを参考に。 # yum install mongo-10gen-server 今のVersionは1.8.1。起動Scriptが/etc/rc.d/init.d/mongodに出来るので、それを読めば何となく分かる。 # less /etc/rc.d/init.d/mongod /etc/mongod.conf /etc/sysconfig/mongod から設定を読み込んで起動しているみたい。各項目は Official Siteのこの辺 を読めば分かりそう。 とりあえず起動してStartUpに登録しておく。 # /etc/rc.d/init.d/mongod start # chkconfig --add mongod # chkconfig mongod on   < Related Posts > MongoDBの概要を調べる

MongoDBの概要を調べる

node.jsを使った開発をする際にDatabaseをどれにしようか迷ったときMemo. node.js関連でよく見かけるMongoDB( official site )。NoSQL(Not only SQL)のDocument-oriented databaseに属するみたい。詳しくは下記Siteを参考に。 はじめに - Docs-Japanese - 10gen Confluence 第3回 ドキュメント指向データベースと列指向データベース | Think IT ドキュメント指向データベース「MongoDB」|サイバーエージェント 公式エンジニアブログ 特徴としては、 Dataの持ち方自体がJSONを元にしたBSONという形式 JavaScriptを使用してDBにAccessできるShellが用意されている(JavaScriptの関数をそのまま渡すことが可能) このためnode.jsとの相性が非常にいい 複数Serverを用いた負荷分散、Replicationが簡単 MySQLと比べて(ちょっとだけ?)高速 Transactionは使えない JavaScriptを知っていれば、Database, Server, Clientと一環したProgrammingが出来るので面白そう。 最後にこんな記事も見つけた。 NoSQLをRDBの代わりに使うと、どういう恐ろしいことが起こるか。PARTAKEの作者が語る - Publickey

初空手稽古 in Singapore

昨日はSingaporeに来て、初めての空手稽古。 「稽古したいなぁー」とつぶやいていたら、「○○さんはここで稽古しているよ」と友人が教えてくれたので、さっそく連絡して行ってきた。 The Japan Karate Association - Singapore Branch Japan Karate Association - Singapore Branch | Facebook facebookのfan page. さっき検索したら、下記Blogがあったので日本の方はこちらに連絡した方がいいかも。 シンガポール ☆ 空手 久しぶりの稽古だったので、やっぱり体が思うように動かない。 どんどん下手になっているし・・・。 でもやっぱり空手は気持ちイイね!

[node.js]Express + ejs + Socket.ioを使ったSample Site

前まではnode.jsとSocket.ioをInstallしてSampleを動かしただけ。今度本格的なApplicationを開発しようと Express というnode.js用開発FrameworkをInstallしてみた。 参考にしたのは下記Site. Creating a basic site with node.js and Express | Shape Shed expressでejsつかってログインしてみよう - すにぺっと node.js + express + mongoDB + WebSocket などのリンクまとめ - 家族サービスの合間をぬって書く技術系のブログ npmを使ってサクっとInstallできる。 # mkdir /opt/express_test # cd /opt/express_test expressが使うmoduleを先にInstallしておく # npm install connect qs mime # npm install express socket.io ejs # ./node_modules/express/bin/express -t ejs app.jsはdefaultで3000 portが設定されているので、任意に変更しておく。 # node app.js これで、http://192.168.0.xxx:8080/にAccessすると表示されるはず。   各Module一覧 underscore.js ( github )( Document ) 便利関数の詰め合わせ。 connect ( github )( Document ) Pluginのように3rd party middlewareを動作させるためのFramework qs Query StringをParseしてjson形式で返す mime Multipurpose Int...

node.js, socket.ioをInstallしてWebSocketを試す(Sample実行編)

イメージ
前回 node.jsとsocket.ioのInstallまで成功したので今回は実際にSampleを動かしてみる。 Sample sourceは~/node_modules/socket.io/example/にある。この中にあるserver.jsは8080 portを使うように書かれているので、Firewallの設定を忘れずに行っておく。 起動してみる。 # cd ~/node_modules/socket.io/example/ # node server.js これでClientから http://192.168.0.xxx:8080/ で接続すると次のような画面が起動するはず。 複数のBrowserでAccessするとchatっぽくなっているのを確認できる。 そのうちWordpressと連携したApplicationを開発したいと模索中。 node.jsでhttp sessionを共有するsocket.ioのテストを書く   < Related Posts > node.js, socket.ioをInstallしてWebSocketを試す(Install編) WebSocket, node.js, Socket.IOって何?

node.js, socket.ioをInstallしてWebSocketを試す(Install編)

前回 でnode.jsって何?というのが大体分かったので、今度は実際にServerにInstallしてみた。 環境: CentOS5.5 node.jsのバージョン管理ソフトnvm (Node Version Manber)経由でインストールすることにした。 基本は Official Site のReadmeを見ながら。 GitがInstallされていなければ、まずはDAG(RPMForge)を追加してyum経由でInstallできるようにする。詳しくは 前の記事 を参考に。 # rpm -Uhv http://apt.sw.be/redhat/el5/en/x86_64/rpmforge/RPMS//rpmforge-release-0.3.6-1.el5.rf.x86_64.rpm # yum update # yum install git ここからnvmのInstall # git clone git://github.com/creationix/nvm.git ~/.nvm # . ~/.nvm/nvm.sh これで"nvm"が使えるようになっているはず。Loginしたときに常に使いたいので # vi ~/.bashrc . ~/.nvm/nvm.sh を追記して保存。 node.jsの最新版をInstall。最新版は Official Site でCheck。 # yum install gcc-c++ openssl-devel # nvm install v0.4.7 Now using node v0.4.7 /usr/bin/which: no npm in (/root/.nvm/v0.4.7/bin:/usr/kerberos/sbin:/usr/kerberos/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin) Installing npm...   % Total    % Received % Xferd  Average Speed   Time    Time   ...