Railsの性能検証報告書
IPAなどがRuby on Railsに関する性能検証報告書を公開していたのでメモ。
【元ネタ】
自治体・企業等の情報システムへのRuby適用可能性に関する調査(「技術検証報告書」)PDFドキュメント || OSS iPedia
RailsとJavaのHibernateを性能比較した結果、「Rails+Passenger+memcached+(SQLのチューニング)でJavaと性能はほぼ同等か高速になる」とのこと。
「Railsは遅い」と言われる原因は、ActiveRecordがテーブルと密結合のため、SQLの発行回数が増えてしまっているからだと検証している。
この報告書を読むと、Railsは運用ノウハウさえ溜まれば、エンタープライズのシステム開発にも十分に使える感触を持った。
Javaに比べると、RailsとAjaxの相性の良さ、memcachedをKVSとしてDB周りを高速化、など最近の最新技術も使われていて、技術者としてはとても興味をそそる。
Railsの開発環境も、EclipseやAptanaがあれば、Javaと同じ感覚で開発できるようになっているから、問題ない。
個人的には、Rails+Oracleの開発ノウハウが欲しい。
実際の業務システム開発では、OracleをDBとして使っているケースが多いため、RailsとOracleの相性に問題なければ、すぐにリプレースすることもできるだろう。
そんな状況を見るにつけ、Railsでサクサク開発するイメージは下記を夢想している。
Excelのテーブル定義書から、Railsのマイグレーションプログラムを自動生成
↓
Rails+Oracleでマイグレーションして、DBスキーマを一発生成
↓
Railsのscafoldでマスタ保守画面はあっという間に実装完了
↓
業務ロジックはRubyでサクサク書く。
リッチなUIはRailsと相性が良いAjaxで実装する。
デザインはCSS修正をデザイナーにお任せ。
↓
DBチューニングは、memcachedでKVSっぽく実装して高速化する。
↓
JRuby+warblerでビルド後、Tomcatへデプロイして終わり。
Railsを取り巻く開発状況は、この1年で急速に変化しているので、今後も注目していく。
| 固定リンク
「ソフトウェア」カテゴリの記事
- Javaのモジュールシステムの考え方をまとめてみた(2022.10.21)
- Javaのenum型はシングルトンクラスみたいだ(2022.06.20)
- テスラが従来の自動車メーカーと異なるところは工場までソフトウェア化すること(2022.02.09)
- 「RubyやRailsは終わった」という記事のリンク(2022.01.09)
- 実践した後に勉強するのがエンジニアの本来の道(2022.01.09)
コメント