私は現在、非常に単純なスキーマ(約5フィールド)を持つデータベーステーブルの場合、ローカル開発環境(SSDドライブ)で、毎秒〜50挿入未満の速度で新しいレコードを挿入していることを確認しています-これは関連するテーブルにデータを入力するモデルのオブザーバーはいません。
ダイレクトSQLを使用すると、かなりの改善が見られます-1800挿入/秒。モデルのパフォーマンスを最適化することを考えていますが、もちろん、Magentoコアが提供する優れた安定性と柔軟性をすべて失いたくありません。
誰かが以前にこのルートを行ったことがあるかどうか、そしてモデル層のコンポーネントに関して、パフォーマンスを大幅に向上させる比較的安全にバイパスできる簡単な勝利があるかどうか疑問に思っています。
次のようなもの:
- クラス名解決
- イベントの保存前後
- イベントの発送
- 取引
- 等
更新:嘘をつきました。実際には、オブザーバーまたはafterSave()から発せられる追加のクエリがいくつかあり、データベースクエリログを調べたときに見ました。完全に単純なエンティティに対するベンチマークでは、実際にはMagentoモデルで最大300行/秒が得られます。MySQLのオーバーヘッドのみがトランザクションです。