自社開発の主な内容は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を極める道はまだまだ険しい・・・