Webプロジェクトを開始しました。プロジェクトのSQLテーブルは、何百万ものレコードを持つ大きなテーブルであると予想されます。そして、Webアプリケーションは通常、データをユーザーに報告します。これは、Webアプリケーションが "INSERT"または "UPDATE"よりも "SELECT"を主に実行することを意味します。
私は古典的なBLL-DAL-MODELアプローチ(階層化されたアーキテクチャ)やDevexpressのXPOのようなORMを使用すべきかどうか疑問に思います。当社は小規模な多くのアプリケーションでXPOを使用しており、開発者はそれに精通しています。彼らはまた、階層化されたアーキテクチャに慣れていますが、XPOの実装が階層化されたアーキテクチャのアプローチよりも簡単です。
今、どのアプローチを選択すべきかを知りたい。 XPOとレイヤードアークの両方でデータを選択してパフォーマンステストを行う人はいますか?それとも何か考えがありますか?
ありがとうございます。devexpressレポートページのxpo対BLL-DALアプローチ
答えて
私はあなたの質問の理由と意味を理解していますが、XPOのような特定のテクノロジや製品をショートカットに使用することは決してレイヤードアプローチを断念するものではありません。また、EFとNHibernateのは、重ね着を必要とせずにUIから直接使用することができますが、これは意味しない良いですが、ここに私の答えを参照してください。
https://stackoverflow.com/a/7474357/559144
私はXPOを使用するか、それだけあれば、それを使用していないでしょうどちらか私がそこに記述したようにレイヤリングを行うことができます。そして、最終的にはORMであり、他の製品と同様に他から分離され、切り離される可能性が高いという大きなチャンスがあります。それでも私はDevExpressを所有しています。私は数年かけて多少変化する大きなアプリケーションには使用しません。したがって、EFやNHibernateのようなもっと標準的なものであれば、
私はあなたと共にaggree。私はまた、ブラックボックス化されたORMテクノロジを切り替えることは決してありませんが、私たちの会社ではxpoが使用されています。だから、私はいくつかのテストをレイヤーアークの両方で行います。 xpoとperformansメトリックを参照してください。 xpoがパフォーマンスに従って自分自身を証明するなら、私はそれを使うことを検討するかもしれませんが、もしそうでなければ、私は確かに階層化されたアーキテクチャを使用します。あなたのアイデアをありがとう。 – Fer
XPO性能について。私は500kレコードのグリッドを持っており、正常に動作します。 1つのグリッドページに20レコードが表示されます。 ヒント(DevEx v10.2)は次のとおりです。
1. ServerModeでASPxGridViewを使用できます。デモhereをご覧ください。 ServerModeグリッドバインディングでは、次の処理を行います。
- フェッチレコード数
- 最初に512レコードIDを取得します。
- グリッドに表示するためのレコードを取得します。これは、最初のグリッドページに表示されたレコードを取得するはずですが、XPOがccaを取得するようです。 50レコード。
2.XPOは関連するオブジェクトに必要なデータも取得します。これにより多くの簡単なクエリが生成されます。これをキャッシングすることで減らすことができます。
3. XPO cachingを正常に使用しています。アプリケーションの処理速度が向上し、データベースのヒット数が減少します。すでに述べたように、私たちは500kのテーブルでそれを使用します。
まずはあなたの答えに感謝します。私は前にサーバーモードについて読んだことがある。しかし、これはXPOにとって魅力的ではありません。データアクセス層でもこれを実装できます。私はXPOキャッシングについて知らない。私はそれを読むべきです。しかし、私はあなたのヒントは、xpoの実装がどれほど簡単であるかと思います。私はまだパフォーマンスの比較を行う必要があります。 – Fer
もちろん。私はあなたがASPxGridView + XPOで得ることができるimporovementsを指摘しようとしています。はい、LINQデータソースでServerModeを使用できます。他のライブラリをサポートしたい場合は、いくつかのインタフェースを実装する必要があります。 – Filip
- 1. DevExpress XPOまたはTelerik OpenAccess
- 2. はDevExpress社XPOにLINQで
- 3. Devexpress + XPOでのASPXUploadコントロールでの検証
- 4. DevExpress XPOの古い列からデータを取得
- 5. これはスマートなテンプレートのリストのレポートページの対象ページです
- 6. 私のレポートページのJavascript検証
- 7. クエリ対ストアドプロシージャ。 2つのアプローチの違い
- 8. レポートページの電子メールへの送信
- 9. PCA in Python:scikit-learn対numpyのアプローチ
- 10. 単語予測:ニューラルネット対nグラムのアプローチ
- 11. DevExpress eXpressApp Framework(XAF)とeXpress Persistent Objects(XPO):関連付けの読み込み時間を短縮するにはどうすればよいですか?
- 12. Devexpress Gridのドロップダウンフィルタ
- 13. 流行の複数のビューに対するベストプラクティスのアプローチ?
- 14. Entity Framework Membershipテーブルの多対多リレーションシップ。コードの最初のアプローチ
- 15. DevExpressレポートツール
- 16. XtraTreeList DevExpress
- 17. 子コレクションのXPO計算プロパティselect de n + 1
- 18. XPOオブジェクトに属するプロパティの型を取得する
- 19. NodeJSの複雑なシステムに対するアーキテクチャ上のアプローチ
- 20. SQLトランザクションタイムアウトに対処するための防御的アプローチ
- 21. 複数のif elseステートメントに対する設計アプローチ?
- 22. フォーマットを使用し、PHPのレポートページに電話番号を表示
- 23. レポートページの設定に問題がありますか?
- 24. SSRSレポートページの向きを動的に変更する
- 25. PHPのレポートページをPDF形式に変換する
- 26. DevExpressピボットチャートデータベースの実装
- 27. devExpress pageControlの剃刀
- 28. カスタムDevExpressグリッドのスナップショット
- 29. グループ行のDevExpress GridHitInfo
- 30. SelectedMode for GridControl(DevExpress)
データをグリッドに表示しますか?はいの場合は、DevExグリッドなどを使用しますか? – Filip
ほとんどの場合、Devexpressグリッドビューを使用します。 xpoはdevxpress girdのDALよりもパフォーマンスが良いと思いますか? – Fer
私はあなたに答えにいくつかのヒントを与えます。 – Filip