次の方法で共有

プログラムレスポンスの違い(Windows server とローカルPC(Windows11))

HHnx 20 評価のポイント
2025-12-04T08:12:54.8066667+00:00

お世話になります。

以下について、原因や改善方法、対処方法など、どのような可能性でもいいので思いつく限りご教示頂きたいです。

.NETで作製したEXEのレスポンスが、Windows Server上で実行した場合と、ローカルPC上で実行した場合とで、かなり違う現象が発生しています。ローカルPCでの実行時が圧倒的に早く、WindowsServer上で動作した場合は、極端に遅くなります。

特に今回遅くなっているのは、帳票作成(AvtiveReport)です。

同じ条件で100ページの印刷を実行したとして、データ取得後から帳票が作成されるまで(プリンタへ印刷処理をかける手前まで)の時間が、ローカルPCは約2分、WindowsServerだと約25分かかります。

RemoteAppを使用したシステム運用を前提としているため、WindowsServer上でのレスポンス改善を行いたく、ご助言をお願いします。

環境等は以下になります。

■プログラム、DB

開発ツール:Visual Studio (Visual Basic.NET2019) (.NET Framework 4.8)

帳票ツール:ActiveReports 16.0J

DB    :SQL Server 2022 Standard

■サーバー

OS     :Windows Server 2022 Standard

メモリ  :64GB

ディスク :300GB

セキュリティソフト :センチネルワン(EXE配置フォルダの監視はOFF)

■ローカルPC

OS     :Windows 11 Pro

メモリ・ディスク:PCにより違う(ローカルPCでの速度の差異はほぼなし)

セキュリティソフト :センチネルワン

ビジネス向け Windows | Windows Server | パフォーマンス | システムのパフォーマンス

質問作成者が受け入れた回答

チャブーン 6,716 評価のポイント MVP ボランティア モデレーター
2025-12-04T08:43:44.5866667+00:00

チャブーンです。

この件ですが、きちんと考えるならば、クライアントとサーバー双方を「クリーンブート」で素に近い状態で、比較するといった対応が必要でしょう。ですが、その前に試してみる部分があります。

WindowsのCPUの使い方ですが、サーバーとクライアントでは実は異なるチューニングが施されています。

  • サーバーは「サービス」を実行しやすいようにチューニング
  • クライアントは「デスクトップアプリ」を実行しやすいようにチューニング

この設定は以下で決定されています。

システムのプロパティ→詳細設定タブ→パフォーマンスの[設定]→パフォーマンスオプションの詳細設定タブ→プロセッサのスケジュール、です。

  • Windows Client→プログラム
  • Windows Server→バックグラウンドサービス

この設定の差が影響を与えている可能性があります。サーバーのこの設定を「プログラム」に変更すれば、CPUの使い方がクライアントと同じになるので、参考になるでしょう。設定を変えたら必ず再起動してください。なお、万一「業務動作中のサーバーで試験的に同時稼働している」ということなら、業務中はこのような設定変更は行わないでください。業務に支障が出るでしょう。

追記:デスクトップアプリは「フォアグラウンド(使用者が自分のコンテキストで利用する)」が前提なので、こういう書き方をしてしまいました。実際はフォアグラウンドにCPU実行優先度を高くする、ことで動作を早めるということですね。

マルチコアCPUの消費電力はスケジューリングで変わる?

ただ、2分と25分はあまりにも差があるので、このチューニングではなく、ボトルネック(システムや通信のどこかの処理が詰まっている)の原因が高そうです。

この回答は役に立ちましたか?

0 件のコメント コメントはありません

1 件の追加の回答

並べ替え方法: 最も役に立つ
  1. HHnx 20 評価のポイント
    2025-12-07T23:07:45.69+00:00

    チャブーン様ご回答いただき誠にありがとうございます。ご回答にも記入いただいた通り、現状はプログラム面、ハード面両方からボトルネックを調査中です。

    ご回答いただいた内容は、他の環境も乗せているため、タイミングが無くまだ試せてはおりませんが、可能がタイミングで検証をさせていただきます。

    この回答は役に立ちましたか?

    0 件のコメント コメントはありません

お客様の回答

質問作成者は回答に "承認済み"、モデレーターは "おすすめ" とマークできます。これにより、ユーザーは作成者の問題が回答によって解決したことを把握できます。