0

私は現在、すべての機能を備えたプロキシコンポーネントを介して、モデルとコントローラの cfc が cfc を拡張しています。これにより、これらすべての UDF がアプリのどこからでも利用できるようになります。これを行う際にセキュリティやパフォーマンスのリスクはありますか? 私は自分のモデルをオブジェクト指向のやり方で使用しています。このようにこれらの関数を含めると、それらも各オブジェクトの一部になります。具体的には、1 つのページ リクエストで多数のオブジェクトを作成するときにパフォーマンスの問題が発生する可能性はありますか?

このフレームワークで CF 9 および 10 を使用しています。

ありがとう!

4

1 に答える 1

2

これはセキュリティ/パフォーマンスの問題ではなく、より「厄介な」問題だと思います。;) CF、特に 9 と 10 では、特に最初のヒットの後、非常に高速なパフォーマンスが得られます。1000 ほどの UDF を含めていくつかのテストを行ったことを覚えていますが、最初のヒットの後はほとんど瞬時にヒットしました。とは言っても、できるからといって、やれいいというわけではありません。Application.cfc は、アプリケーションとその動作を管理する方法として特別に構築されています。モデル/サービス/コントローラーの CFC は、それらを拡張するべきではありません。延長の通常のルールは、「A は B の「A である」テストに合格するか?」です。あなたのCFCは間違いなく「Is A」Application.cfcタイプではありません。

代わりに、ユーティリティ関数用の CFC を作成することをお勧めします。なんてこった、util.cfc と呼んでください。次に、モデルまたは他の CFC がこれらの関数を必要とする場合は、setter を介してそれらを注入します (ColdSpring のようなものを使用すると、これがさらに簡単になります)。

于 2012-08-30T15:59:15.743 に答える