自社開発の主な内容はWindowsアプリケーション開発
言語は、VB.NETで現在は.NET Framework 4.5.2で開発している
基本的にはデータベース(Oracle または SQL Server)を使用した
業務用アプリケーションの開発をしている
今までは、クライアントサーバー方式での開発がメインだったが、
最近はWCFを使用して、Webサービス(ServiceHost)を作成し
APIを実行することにより、データベースとのアクセスを行うように対応している
ただ、WCFに関してはまだまだ分かっていないところも多く、
手探りでやっている
最近はまったところは、大きなデータのやりとりが上手くいかないこと
列が20程度のテーブルに1万行データを作成し、
一括で取得しようとしたところ、かなりの負荷がWebサーバー側にかかり、
タイムアウトや、サイズオーバーの例外が多発した
WCFの上限値をいじることで解決出来ることもあるが、
どうしても制限があるため、出来るだけデータ量に左右されずに
安定した通信が行えるよう対応が必要となる
今回は、主に引数で使用している、データクラスが2次元配列(20列×1万行)と
なっており、メッセージ層での通信のためやりとりするファイル(XML?)の
サイズ等が非常に大きくなったと推測される
なので、今回はSQLを実行した結果をDataTableに格納し、
クライアント側でデータクラスへ格納する処理を実装したところ、
サーバーへの負荷も非常に低く、更にレスポンスも気にならないレベルだった
10万行のデータなど、もっと大きなデータに耐えられるかどうかは
検証していないが、満足行く結果が得られてよかった
ただ、DataTableでの通信が安全なのかどうか・・・
WCFを極める道はまだまだ険しい・・・