問題タブ [mvc-mini-profiler]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
asp.net-mvc - ASP.NET MVC ページのレンダリング パフォーマンスの問題
asp.net MVC 2 アプリケーション (ビュー エンジンとしての Web フォーム、orm レイヤーとしての linq2SQl) の細かいパフォーマンス チューニングを行っています。ページレンダリングのプロファイリングに mvc mini-profiler を使用しています。私は(現時点では)出力キャッシュを使用していません。
サイトのほぼすべてのページで、少し奇妙な動作に気付きました。
最初にページにアクセスしたとき、レンダリングに約 200 ミリ秒かかり、約15ミリ秒の db クエリ時間 (ストアド プロシージャの呼び出し) があります。
同じページへの後続のヒットはすべて約 20 ミリ秒でレンダリングされ、クエリは約 15 ミリ秒のままです。したがって、この場合、ページは約6msでレンダリングされると想定しています。
約5 分間ページにアクセスせず (他に要求がない場合)、同じページにアクセスしようとすると、後続のすべての呼び出しで18-20msの順序でレンダリングするのに200msかかります。また、IIS アプリ プールのリサイクルが行われていないことも確認しました。
MVC フレームワークのどこかに、数分後に無効になり、微調整が必要なキャッシュがあると思われます。
何か案は?
mvc-mini-profiler - v1.9 で「a.tmpl.complete は関数ではありません」というメッセージが表示されます
v1.9 のプロファイラーで次のエラーが発生します。
a.tmpl.complete は関数ではありません
問題を検索して調べてみましたが、これまでのところ、問題を修正するために何をすべきかわかりません。
他に何をすべきか知っている人はいますか?
asp.net-mvc-3 - mvc-mini-profiler の何が問題なのかを理解するのに役立ちます
これはプロファイリングされているメソッドです
OracleFormatter が実装されていない例外をスローするため、MvcMiniProfiler.SqlFormatters.InlineFormatter() を使用しています。(v1.9)
ありがとう、スティーブン
ミニプロファイラータブのSQLリンクをクリックした後のWebページからの出力は次のとおりです。
がらくたのように見えますが、フォーマットが適用されているようです。サムがチェックアウトできるように含めます。
601606016060160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160S60160E60160L60160E60160C60160T60160 60160*60160 60160F60160R60160O60160M601606016060160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160(601606016060160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160S60S60160E60160L60160E60160160160T60160160160160160160160160THIN60160 60160r60160o60160w60160n60160u60160m60160 60160r60160_60160_601606016060160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160F60160R60160O60160M601606016060160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160(601606016060160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160S60160E60160L60160E60160C60160T60160 60160*60160 60160F60160R60160O60160M60160 60160P60160R60160O60160D60160U60160C60160T60160H60160E60160A60160D60160E60160R601606016060160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160 6016060160O60160R60160D60160E60160R60160 60160B60160Y60160 60160p60160r60160o60160d60160u60160c60160t60160i60160d60160 60160D60160E60160S60160C601606016060160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160)60160 60160a601606016060160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160W60160H60160E60160R60160E60160 60160r60160o60160w60160n60160u60160m60160 60160<60160 60160(60160:60160P60160a60160g60160e60160N60160u60160m60160b60160e60160r60160 60160*60160 60160:60160P60160a60160g60160e60160S60160i60160z60160e60160)60160 60160+60160 60160160160 60160)601606016060160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160)601606016060160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160 60160W60160H60160E60160R60160E60160 60160r60160_60160_60160 60160>60160=60160 60160(60160(60160(60160:60160P60160a60160g60160e60160N60160u60160m60160b60160e60160r60160 60160-60160 60160160160)60160 60160*60160 60160:60160P60160a60160g60160e60160S60160i60160z60160e60160)60160 60160+60160 60160160160)6016060160=60160 60160(60160(60160(60160:60160P60160a60160g60160e60160N60160u60160m60160b60160e60160r60160 60160-60160 60160160160)60160 60160*60160 60160:60160P60160a60160g60160e60160S60160i60160z60160e60160)60160 60160+60160 60160160160)6016060160=60160 60160(60160(60160(60160:60160P60160a60160g60160e60160N60160u60160m60160b60160e60160r60160 60160-60160 60160160160)60160 60160*60160 60160:60160P60160a60160g60160e60160S60160i60160z60160e60160)60160 60160+60160 60160160160)60160
出力の終わり。
wcf - MvcMiniProfiler プロファイリング Web アプリと下位層
ASP.NET MVC アプリで MiniProfiler をセットアップして動作させています。私のコントローラーは、WCF を介して BLL を呼び出し、BLL はデータベースと通信します。Web アプリから見た既存のプロファイリングと一緒に、WCF サービスからのプロファイリングを見たいと思います。すべてのサービス呼び出しで MiniProfiler をパラメーターにする場合ですか?
mvc-mini-profiler - 画像と js ファイルのプロファイル レポートを取得する
私は mvc3 を使用していますが、mvc mini プロファイルは、画像と js ファイルのプロファイリングを行っているため、1 つのページ要求に対して複数のポップアップ ボックスを表示しています。
皆さんも経験したことはありますか?あなたは何をした?
asp.net-mvc-3 - Entity Framework code-first および ASP.NET MVC 3 と mvc miniprofiler で SQL Server CE を使用する際の問題
C#、Entity Framework 4.0 コード ファースト、SQL Server CE、および自動化されたスキャフォールディングを使用して、ASP.NET MVC 3 アプリケーションを作成しようとしています。SQL Server CE データベースに接続するページを実際に使用しようとするまで、すべて正常に動作します。
web.config での私の接続はこれです
私のモデルクラスは次のようになります
私のデータコンテキストクラスは次のようになります
データベースに触れるページ(標準のインデックスページなど)に移動しようとするたびに、次のエラーが発生します
指定されたアセンブリ名またはコードベースが無効でした。(HRESULT からの例外: 0x80131047)
ここにスタックトレースがあります
私は一体何を間違っているのですか?
更新: 問題の根本原因は global.asax ファイルにあるようです。私は MVC Miniprofiler を使用しています。「MiniProfilerEF.Initialize();」をコメントアウトすると、すべて正常に動作します。global.asax ファイルの内容は次のとおりです。
c# - MVC Mini Profiler を最新リリースにアップグレードする際の問題
私はしばらくの間、開発と運用 (Azure) で Mini Profiler を使用してきました。
今日、NUGET 経由で最新リリースにアップグレードしようとしました。DLL はビンに配置されますが、サイトでエラーが発生します。古いdllに戻ると、正常に動作します。これを修正する方法を知っている人はいますか?
c# - ミニプロファイラーを非表示にする方法は?
私はMVCMiniプロファイラーを使用してアプリケーションの特定の部分の速度をチェックしていますが、後で何かが発生した場合に備えて、「何が問題になっているのか」をチェックする必要がある場合に備えて、そのままにしておきたいと思います。完全なログセットではありませんが、ページの作成に時間がかかる原因を知ることは非常に便利です。
したがって、私の目標は、リクエストに特定のパラメータが含まれている場合にのみ、それを非表示にしてプロファイルを作成することです。しかし、私の試みはどれも私が期待するようには機能しませんでした。
これにより、画面に表示されない(ビュー内のコード)というトリックが実行されました。
これが近づいた試みです。ミニプロファイラー情報を正しく非表示にしますが、表示した時点では、表示を停止してからすべてをプロファイリングします。それで、私が私のページをプロファイリングし、それが3秒かかるとしましょう。クエリパラメータを削除して、ページをさらに3回ロードします。パラメータを再度追加すると、4セットのプロファイル情報が表示されます。これは、すべてを追跡していることを意味し、メモリの問題が発生する可能性があるのではないかと思います。
それがもう起こらないようにする試み:
試行1:
試行2:
試行3:
これらはどれも機能しませんでした。何か案は?
c# - Linqステートメントが2回実行されるのはなぜですか?
私は内部メッセージシステムに取り組んでいます。mvc miniプロファイラーを接続しましたが、いくつかのステートメントが2回実行されていることが示されていますが、その理由がわかりません。
私のコントローラーはあなたが得ることができるのと同じくらい簡単です:
私の見解は同じように単純です(私の_Layoutページには残りのマークアップがあります):
では、なぜget_Userが2回実行されるのでしょうか。
asp.net-mvc-3 - MiniProfiler によって識別された重複した Linq to SQL クエリを追跡する方法は?
MvcMiniProfiler を自分のアプリに接続しましたが、重複したクエリが報告されています。
リポジトリにブレークポイントを設定しました
そして、問題のページにアクセスしました。
Read()
私のコードは、サービス層を介して関数を 2 回ヒットします(呼び出しを減らす方法がわからないため、これは設計によるものです)
はEventService
IQueryable に対して単純なクエリを実行しますRead
残念ながら、MiniProfiler が 8 つの重複クエリ (合計 13) があると言っている理由がわかりません。
改訂
されたので、Sam は、クエリ内で関係をプリロードしていないと述べているように見えます。
Linq to SQL でリレーションシップを適切にプリロードするにはどうすればよいですか? 誰でもアドバイスを貸してもらえますか?
編集
作成中の ViewModel は次のとおりです。
編集 - スクリーンショットを追加