私はdapperを使い慣れていません(実際に使用しようとしています)。私はそれがどのように動作するのだろうかと思いました。いくつかの結果がキャッシュされるので、後で取得する方が速いです。 githubページでは、メモリ解放に関する何も言わない。私はこのナゲットの性能を認識していますが、メモリのオーバーフローやsthの危険はありませんか?キャッシュされたメモリは何らかの方法で解放されますか?dapper.netはキャッシュメモリを解放します
答えて
Web層は、クエリの量のために、しばしば100%のCPUに達しました。毎秒数百の呼び出しで、すべての呼び出しに対して動的メソッドを構築するLINQからSQLへのCPUオーバーヘッドは、Webサーバーに多大な負担をかけました。
この問題を解決するために、Dapper.Netはすべてのクエリに関する情報をキャッシュします。この包括的なキャッシングは、LINQ to SQLの約2倍の速さでクエリからオブジェクトを生成するのに役立ちます。現在、キャッシュは2つのConcurrentDictionaryオブジェクトによって処理されますが、これは決してクリアされません。将来、キャッシュアルゴリズムはLRUキャッシュを使用してメモリの負荷を軽減することがあります。
https://www.infoq.com/news/2011/04/dapper-released –
これらの辞書のクリアには大きな問題があるかもしれません - それは私のリストにあります –
私は他のORM –
- 1. Dapper.net
- 2. pthread_cancelはスレッドスタックを解放しますか?
- 3. はremoveFromSuperviewオブジェクトを解放しますか?
- 4. NSValueは解放されるとその値を解放しますか?
- 5. OpenSSLはファイルハンドルを解放しません
- 6. APCはメモリを解放しません
- 7. スレッドはメモリを解放しません
- 8. セロリはメモリを解放しません
- 9. DelayedJobはメモリを解放しません
- 10. 関連レコードを解放してYii1のメモリを解放する
- 11. 隠しオブジェクトを解放しますか?
- 12. picadmがキャッシュメモリ管理領域を解放することにより、ブルースクリーンがSTOP 0xC2で表示される
- 13. intを解放しますか?
- 14. C#でCOMオブジェクトを解放します
- 15. オブジェクトのメモリを解放します
- 16. viewDidUnloadのオブジェクトを解放しますか?
- 17. アイコン/ビットマップWinformsを解放します。
- 18. OpenCVメモリを解放しますか?
- 19. ファイルハンドルを解放します。 BitmapImageのImageSource
- 20. appDelegateインスタンスを解放しますか?
- 21. アプリケーションのリソースを解放しますか?
- 22. ColdFusion 9.0.1キャッシュメモリの内容を解析することはできますか?
- 23. NSArrayを解放するとNSArrayを解放する
- 24. Dapper.net Oracleパラメータ
- 25. 継承とDapper.net
- 26. ヌルDapper.netクエリ()
- 27. 配列を解放すると要素も解放されますか?
- 28. 完了前にObj-C自動解放ネットワークリクエストが解放されました
- 29. カカオ64ビットバイナリリークメモリ? (NSDataを解放するとメモリが解放されません)
- 30. デフォルトのデストラクタはメンバポインタが指すメモリを解放しますか?
「結果がキャッシュされるので、後で取得する方が速い」 - そうではありません。あなたのクエリと結果のためのメタプログラミングの結果をキャッシュします**形状**。実際の結果をキャッシュすることは決してありません。 –