ほのぼの C#開発

開発の基礎から、現場で使用できるC#を掲載していきます。

パフォーマンス

C# Visual Studioのパフォーマンスプロファイラー 

処理になんか時間がかかる、遅いと思ったら VisualStudioのプロファイラを使用してみよう。 Linqが遅かったり、ループ処理が遅かったりと、プログラムのボトルネックを分析してれる。 CPUの使用率を分析してれて便利なツール。 Visual Studio でのアプリケー…

C# APサーバの負荷分散

負荷分散について 複数人が同時にサーバーへアクセスしたい際に、サーバへの負荷がかかるため、ロードバランサを用意して、複数台のサーバを設置して負荷を下げる。 現状 :サーバ1台 負荷軽減:サーバ複数台、ロードバランサ 問題点 クライアントから要求…

SQLServer TempDbのラッチ状況

TempDBについて SQLサーバーでTempDbを使用すると、サイズが足りない場合に自動的に拡張します。 その際に、ラッチ(オブジェクトの保護)が発生して、他の処理が待機状態になる可能性があります。 ラッチは、SQLサーバーの利用モニタで確認できます。 ラッ…

C# SQLServerでBulkCopyして高速化

大量のデータをInsertする場合、SQLサーバとの通信がSQLの実行のたびに時間がかかってしまう。 1万件のデータをInsert Insertを1件毎に実行:98.32秒 Insertを1000件毎に実行:15.34秒 Bulkを使って1000件たまったら実行:0.57秒 BulkCopyを使用すると、速…

C# パフォーマンスの向上

パフォーマンスの問題 現場にいると ・画面表示される速度が遅い ・初回表示するのが遅い ・使っているとだんだん遅くなる など色々な意見をもらう。 ⇒まず、どこで遅いか切り分ける。 クライアント描画処理? ネットワークの負荷率? サーバー処理? DB処理…