第8項. パフォーマンスのヒント

データベースのパフォーマンスをよくするためのヒントを記述します。


 1. パフォーマンスの確認のために

パフォーマンスの確認を行うときには、テストアプリケーションを実行する前にログのレベルを警告(warning)にする必要があります。Blackberryの場合は、テスト用の設定が必要となります。
rhoconfig.txtを以下の用に変更します。

 

MinSeverity = 3

 

 2. パフォーマンスをよくするには

パフォーマンスをよくするためには、以下のことに注意してください。

 

  • ● 調査中[nishima 8]
  • ● Model.findにSQL条件を使用せず、高度なクエリを使用してください、
  • ● データベースにオブジェクトを挿入する場合は、Model.createメソッドを使用してください。
  • ● データベースのオブジェクトを編集する場合は、Model.update_attributesメソッドを使用してください。
  • ● 複数のモデルやオブジェクトをデータベースに保存するときには、データベースのトランザクションを使用してください。

 

例: トランザクションについて


rosters = Roster.find_all
db = ::Rho::RHO.get_src_db(“Roster”)
db.start_transaction
begin
  rosters.each do |r|
    r.update_attributes({“company_name” => “システム工房エム”})
  end
  db.commit
rescue
  db.callback
end

::Rho::RHO.get_src_db(“Model”)でnilが返る場合、このモデルのメソッドが呼び出されることはありません。この状態を修正するには、require_sourceメソッドを使用する必要があります。

require_source 'Model'

システム工房エムのサイトへのリンク

住所〒690-0017 島根県松江市西津田3-2-3 TEL.0852-23-8590 FAX.0852-23-8591
Copyright 2008-2010 System Maker M,All right reserved