Ubuntu10.04でdpkgを使って、Nginxにモジュールを追加する

前回の記事で、Nginxにサードパーティモジュールを追加してコンパイルしてインストールする手順を書きましたが、Ubuntu(Debian)の作法に乗っ取ってdpkgを使うと、もっと簡単にモジュール追加ができるのでその手順もメモしておきます。dpkg-devのインストール…

Nginx AWS auth on Ubuntu 10.04

S3に保存されたファイルを直接S3にアクセスさせたくない場合のNginxの設定です。通常は、素直にクラウドフロントを利用すればいいような気もしますが、調べてみたのでメモしておきます。Nginxから認証付きでS3にアクセスするにはサードパーティのモジュールA…

tarを使ってディレクトリごとファイルをコピー

Macの場合、mvコピー先に同名のディレクトリがあると-f付けてもはじかれるので重宝するかも(可能なオプションあるんですかね?)カレントディレクトリの全てファイルおよびディレクトリをターゲッットディレクトリ(target_dir)にコピー $ tar cf - * | ( cd /…

ニフティクラウドでrsyncを利用したバックアップを行った場合 Disk200とDisk40どちらを使うべきか?

クラウド上でサービスを提供する場合データの安全性については、ハード面のHAはサービスが提供しているため*1、アプリケーションの障害や人為的ミスによるデータ損傷に対応するためのバックアップが最低限必要になります。co-meetingは、データベース以外の…

SSH越しのファイル操作まとめ

サーバー間でファイルをやり取りしたい場合にいつもコマンドを検索しなおしてしまうのでssh越しにファイルをコピーするコマンドをまとめてみました。また、この記事を書いている途中に同様の内容をまとめているブログを見つけたのでリンクを貼っておきます。…

WebSocket(node + socket.io)をstunnel + HAProxyでプロキシする - その3 - stunnelのセットアップ

以下の図のような、stunnelとHAProxyを使ってnode.jsとnginxを1つにまとめる構成のサーバー構築手順をまとめています。その1ではHAProxyのインストール、その2ではプロキシの設定例についてまとめました。 OSに依存する箇所はUbuntu 10.04を例に説明していま…

WebSocket(node + socket.io)をstunnel + HAProxyでプロキシする - その2 - HAProxyの設定

Nginxとnode.jsをHAProxy+stunnelでまとめる方法についてまとめています。サーバーの構成は以下のようになります。前回の記事はHAProxyのインストールまで紹介しました。 http://d.hatena.ne.jp/hrendoh/20120328/1332917793今回は、HAProxyでNginxとnode.js…

WebSocket(node + socket.io)をstunnel + HAProxyでプロキシする - その1 - HAProxyのインストールまで

WebSocketのステータスは、昨年12月にRFC6455としてproposed standard(標準化への提唱)のステータスになりました。node.js+socket.ioやjetty(Java)を始めサーバーサイドの実装は既に多くあり、クライアントはGoogle ChromeとSafariが実装しています。 Fire…

AWS Elastic Beanstalkの開発環境を構築してみた

発表されてから、1年ちょっとたったAWS Elastic Beanstalkについて調査してみました。http://www.publickey1.jp/blog/11/amazonjavapaasbeanstalkruby_on_rails.htmlBeanstalkは、Javaのアプリケーションがデプロイ可能なPaaSです。 現在もまだベータであり…

Ubuntu 10.04 LTSにSun Javaをインストール

いつも忘れるのでメモしておく $ sudo apt-get install python-software-properties $ sudo add-apt-repository ppa:sun-java-community-team/sun-java6 $ sudo apt-get update $ sudo apt-get install sun-java6-jdk 情報元:http://stackoverflow.com/quest…

Grails AuthenticationとEmailConfirmationプラグインでRailsのDeviseと同じ機能を実装する

Javaの実行環境で、Ruby on RailsのプラグインDeviseのようにメール認証付きのログイン機構を簡単に実装できないかなあと思い調べてみました。まず、Java実行環境で動くRoRスタイルのフレームワークは、最近のメジャーどころは以下のようなところかと思いま…

s3sync メモ(ruby 1.9で使う、US Eash以外だとPermanent redirect receieved.)

ruby 1.9で動かす 公式のs3syncはまだruby1.9で動かない。 対応しているモジュールがgithubにありました。 https://github.com/aproxacs/s3sync s3syncコマンドがbinにあるので実行は以下の通り /bin/s3sync US East 以外で使うときの注意 以下のエラーにな…

Rails3 runnerを利用してでバッチプログラムを実行するサンプル

Rails3でバッチプログラムを実行する方法は公式ガイドでは以下のように記載されています http://guides.rubyonrails.org/command_line.html#rails-runner $ rails runner "Model.long_running_method" runnerの使い方に付いてぐぐってみましたがRailsの構成…

Railsでfavicon.icoを表示する設定

通常はフロントのWebサーバーに画像を置くのであまり使わないかもしれないですが、Railsのpublicフォルダにfavicon.icoを置いた場合にサイトのアイコンとして設定する方法が分からなかったのでメモしておきます。public/imagesにfavicon.icoを置いた場合以下…

emacsにjs2-modeをインストールしてみた

前職のころは開発環境がWindowsだったので、Javascriptを書くときのエディタはxyzzyを使っていました。 今はUbuntuで開発していて、しばらくgeditで頑張っていましたが、やっぱりemacsの環境を作ることに。ちなみに、今エディタはこんな風に使い分けています…

Rails3 devise_invitableでDeviseにユーザ招待機能を追加する

Gemのインストール RubyGemsにあるバージョンだと新しいdeviseだと使えませんので、ドキュメントの通りに古いdeviseを指定します。 gem 'devise', '~>1.2.0' gem 'devise_invitable', '~> 0.4.0' $ bundle install Gitのソースを直接指定すれば1.4でも使えま…

Rails3 x mongoidセットアップメモ

mongoid(http://mongoid.org/)は、RailsでMongoDBを扱うためのObject-Document-Mapperです。 ORMではなくてODMthinitに詳しい解説があります。 http://thinkit.co.jp/story/2010/10/27/1829以下、自分で試した際のメモです。 プロジェクトの作成とmongoidの…

Rails3アプリにDeviseで簡単に認証システムを組み込む

co-meetingではユーザ管理をDeviseをベースに開発しています。 開発過程でDeviseについて調べたことを、何度かに分けて書いていこうと思います。Devise(http://rubygems.org/gems/devise)とは、Railsアプリにログインの仕組みを組み込む場合にデファクトスタ…

MongoDB版 phpMyAdminのphpMoAdminを試してみた

普段、MySQLではWebの管理ツールPhpMyAdminを使って居るのですが、MongoDBを使った開発もするようになったのでWebのツールあるかなあと探してみたところphpMoAdminというツールがあったので試してみました。PHP+Apache+MongoDB環境を一から作成するには以下…

Redis X Java入門。RedisのインストールからクライアントライブラリJedisの使い方まで

Redistとは、永続化機能を備えたKVSです。 http://redis.io/ インターフェースはmemcachedとほぼ同じですが、Redisの方が永続化も含めてできることが多いので摘要できるところはいろいろありそうです。 とりあえず、co-meetingのセッション管理に使うことに…

Protocol Buffersの使い方まとめ

protocol buffersとは、Googleが自社のサービス用に開発したオブジェクトシリアライズの仕様です。 JSONに似ていますが、.protoという名前のファイルで構造を定義し、JSONのキーは数値に変換されよりデータサイズが小さい形でやりとり可能です。開発された背…

PayPal APIの使い方 その4 〜 定期支払いの実装

「PayPalの使い方 その2 - Express Checkout APIによる課金システムの実装 解説」で作成したExpress Checkoutの実装を変更して定期支払いも試してみたのでまとめてみました。 定期支払いの概要まとめ 定期支払いの概要についてはgihyoのサイトのPayPalの連…

MySQL SSL接続時のパフォーマンスを計測してみた

「Ubuntu 10.10のMySQLとSSL通信でJDBC接続する」でMySQLのSSL通信を試してみたので、次にSSL通信時にパフォーマンスがどれほど落ちるのか調査してみました。 ドキュメントには30%から50%パフォーマンスが落ちるとかかれています。 計測環境 計測ツールは標…

CentOS 5.5にyumで MySQL 5.5をインストールする

リポジトリのURLは古い情報が多くいつも探し回ってしまうので、2011年6月30日現在の情報を自分用にメモしておきます。 インストール手順 # rpm -ivh http://download.fedora.redhat.com/pub/epel/5/x86_64/epel-release-5-4.noarch.rpm # rpm -ivh http://rp…

Ubuntu 10.10のMySQLとSSL通信でJDBC接続する

apt-getでUbuntu 10.10にインストールしたMySQLはmy.cnfへ設定を追加すればSSLでの接続が可能です。 MySQLのSSL接続については、パブリッククラウド上のMySQLと社内サーバーをセキュアに繋ぐ方法の1つとして調べています。 社内サーバーであればLANを切って…

PayPal APIの使い方 その3 〜Express Checkoutを利用したリファレンストランザクションの実装

前回は「PayPalの使い方 その2 - Express Checkout APIによる課金システムの実装 解説」でExpress Checkout APIの実装について解説しました。 今回は、説明したExpress Checkout APIの応用で、リファレンストランザクションについて調査したのでまとめてみ…

サブドメインでCookieを共有するRails3の設定

Yahoo!やはてなは各サービスごとにサブドメインでアクセスしますが、どうやってセッション維持してるのかなと思い、サブドメインにCookieを渡す方法を調べたところ CookieのDomain属性にDomain=.mydomain.comの様に指定すれば良いんですね。Rails 3での設定…

PayPalの使い方 その2 - Express Checkout APIによる課金システムの実装 解説

前回の記事「PayPal APIの使い方 - SandboxのアカウントでCheckout Expressを試してみた」でPayPalサンドボックスでアカウントを作成して、Express CheckoutのIntegration Wizardを利用してシンプルな課金アプリケーションのサンプルを作成してみました。サ…

PHPFogでCakePHPアプリを動かしてみた

PHPFog(https://phpfog.com/)は、Ruby on RailsのPaaS HerokuのPHP版です。 PHPFogもHeroku同様にEC2上で提供されるサービスです。価格は、EC2をそのまま使うよりは割高ですが、運用の手間を考えるとプラットフォームのひとつとして検討したいところです。以…

Mercurial eclipseプラグインのインストール方法

私はMercurialリポジトリからのソースコードの取得はEclipseのプラグインを利用していますが、プラグインの入手場所をいつも忘れるのでそのメモです。 Google code上のプロジェクトはMercurialを選択できるようになったので、たまに利用することがあります。…