BT

最新技術を追い求めるデベロッパのための情報コミュニティ

寄稿

Topics

地域を選ぶ

InfoQ ホームページ ニュース Entity Framework 6に起動時間とエンティティ実体化の問題

Entity Framework 6に起動時間とエンティティ実体化の問題

原文(投稿日:2013/11/05)へのリンク

先日リリースされたEntity Framework 6を使用している開発者の一部から,プロジェクトの開発フェーズに影響するパフォーマンス上の問題が報告されている。最初に報告された問題は,プロジェクトにデバッガがアタッチしている際の起動時間に関する問題だ。これはメタデータコレクションがモデル生成時にLazy<T>を使用することで,Debugger.NotifyOfCrossThreadDependency() が数多く起動される場合に発生する。この記事を書いている時点で,この問題は製品チームによってすでに解決されている。

LLBLGen Proの開発リーダであるFrans Bouma氏は,Entity Framework 6.0.1のエンティティ実体化の遅さを報告している。あるプロジェクトの開発プロセスにおいて,氏がdotTraceを使った.NETプロファイリングを行ったところ,GetEnumeratorが実際のデータをフェッチするために使用した時間は全体の0.02%に過ぎず,残りは取得結果に対するMoveNextで費やされていた。

"根本的に何か問題があるようなのですが,原因はまったく分かりません。" と氏は述べている。

少数の開発者からは,デバッガにアタッチしない場合にも起動時のパフォーマンス問題があることが報告されている。ある開発者は,F5を押した後で10~15秒待たなければならなかったと言う。

Microsoftはすでに,上述の問題に対処するためのパッチ(6.0.1)をリリースしている。Entity Framework 6をNuGetからインストールしたのであれば,自動的に最新バージョンが取得されるが,Entity Framework 6を使ったVisual Studio 2013のプロジェクトを使用している場合には,Package Manager ConsoleからEntity Frameworkのアップデートパッケージを実行して,最新のバージョンに更新する必要がある。

公式発表によれば,新しいアップデートがまもなくリリースされる予定だ。パフォーマンス問題に加えて,開発者から毎日新たに報告される問題を含む,その他の優先度の高いバグにも対処している。

この記事に星をつける

おすすめ度
スタイル

特集コンテンツ一覧

BT