Repository navigation
OTR_FAQOther
ASP.NET の構成、ログ出力、リッチクライアント、通信制御などの FAQ。
-
web.configを変更すると、アプリケーション・プールが自動で再起動し、直ちに反映される。 - それ以外の設定ファイルの変更では再起動しないので、手動で再起動する。
- net10.0 の
appsettings.jsonも、Open 棟梁の設定(Fx*)は起動時に読む前提なので、再起動で反映する(外部パラメタ(構成))。
StateServer・SQL Server モードでは、Session に格納するオブジェクトが [Serializable] である必要がある。
InProc で開発を進めると、直列化できないオブジェクトを Session に入れてしまい、運用中に切り替えられなくなる。
そのため、テンプレートの既定を StateServer にしている。クラスタリングが必要になり得ないと言い切れるなら、InProc に変えてもよい。
web.config に、該当パスへの匿名アクセスを許可する <location> を追加する。
IIS は、ワーカー・プロセスのアイドルが続くと自動でシャットダウンする(既定 20 分)。その際 Session の状態(InProc)が失われる。
アプリケーション・プールのアイドル・タイムアウトを Session のタイムアウト以上にする(タイムアウト値の設計)。
共有フォルダへのアクセス権の付与が要る。AD があればマシン・アカウントに権限を付与するか、IIS のワーカー・プロセスのアカウントを変更する。
それができなければ、ASP.NET の偽装か区間偽装を使う(ネットワーク・ドライブは偽装アカウントで認識されないことがある)。
偽装アカウントから EXE を起動しても、EXE の実行アカウントは偽装アカウントにならない。
IdentityImpersonation.CreateProcessAsImpersonationUser で起動する(net48 のみ。区間偽装のサンプル)。
できる。ACCESS・SQLTRACE の書式は親クラス2 で定義されている。例外固有のプロパティや例外のダンプ(Exception.ToString())を出したい場合などにカスタマイズする(ログ出力方式 (log4net))。
log4net(または NLog)の機能(MaxSizeRollBackups、CountDirection など)で行う。
log4net の MinimalLock が使えるが、Open / Close を繰り返すので性能とロックの懸念がある。問題になるなら、イベントログ・DB・Syslog などのアペンダを検討する。
アペンダのファイル・パスに環境変数(%USERPROFILE% など)を使えば、ユーザごとに変えられる。プロセスごとなら、Main の冒頭で環境変数を設定する。
性能面では、ロガーの level でフィルタするのが最もよい。プログラムから判定するなら、LogIF のログ・レベル取得(IsDebugEnabled など)を使う。
リソース・ローダのパスに %USERPROFILE%\AppData のような環境変数を指定すればよい(ターミナル サービスなど)。
サポートしている。プロキシの URL や資格情報を、定義ファイルか API で指定できる(通信制御)。
サポートしている(Kerberos 認証)。ただし、ベース・クライアント・セキュリティ・モデル(多段の偽装)は通常は推奨しない。外部 IdP との SSO はOAuth2 / OIDC クライアント。
WCF netTcpBinding をサポートしている。他のプロトコルも、サービス・インターフェイスとサービス・プロキシを追加開発すれば対応できる。
- 性能:性能設計、負荷テストのポイント、性能測定の結果(バッチ・サンプル、動的パラメタライズド・クエリ)
- 脆弱性:脆弱性対策のポイント
- 本体のテスト:OpenTouryo リポジトリの
TESTING.md・SMOKETEST.md
Open棟梁の改元対応 - Google グループを参照。和暦の扱いは国際化(多言語化)。
- FAQ
- 利用ガイド(ベターユース、FAQ 編)7 章
Tags: 再構築
このWikiは「Open棟梁Project」,「OSSコンソーシアム 開発基盤部会」によって運営されています。