ある仕事で、とある会社が提供しているCloudのサーバを使用したシステムを構築した。
1プログラマの視点で、その所感を書くことにする。
##仕様
###存在するもの
サーバA:システムの中心となるサーバ。(データの修正が可能)
サーバB:Cloudに存在するサーバ。(下記の送受信のみが可能)
テーブルC:サーバAからサーバBに送ったデータを登録するテーブル。
テーブルD:作業現場からサーバBに上げられたデータを登録するテーブル。テーブルCの明細となる。
テーブルE:テーブルDのデータをサーバAに受信し、登録するテーブル。
###動き
①サーバAよりデータを送信し、サーバBに存在するテーブルCに登録する。(データ送信)
同じキー項目のデータを送信した場合は上書きされる。
②作業現場より、テーブルCに対して紐づく明細データが、テーブルDに登録される。
③テーブルDのデータがサーバBより送信され、サーバAのテーブルEに登録される。(データ受信)
##気を付けるべきこと
###サーバBデータのキー項目の変更ができるか? できない場合はどうするか?
人的ミス、あるいはサーバAの仕様などで、テーブルCに送るデータのキー項目が変更されたとしても、テーブルCのキー項目をそのまま書き換えられる仕様が存在するかが重要。
仕様がない場合は注意してシステムを組む必要がある。(サーバB(クラウド)側の仕様を変更できない場合。
###サーバBより受信したデータは定期的に消さないと容量を圧迫する
テーブルEにはどんどんデータが蓄積される。サーバBのテーブルDにはデータを保存してあるはずなので、テーブルEのデータは定期的に消去するほうがいい。
(ただし仕様による)
##所感
この場合で最も問題なのは、サーバAとサーバB、更に作業現場の仕様は、よほど注意深く作るか、意志疎通が図れなければ、仕様が一致しないことになる。(私のときは、項目の桁数などの差異も多かった)
私の場合は、私が修正やシステムの構築が可能なサーバAで、ほぼ全ての整合性を合わせるハメになった。
他にCloudサーバを利用される方が、私と同じ問題が発生しないように祈る。
More than 3 years have passed since last update.
Register as a new user and use Qiita more conveniently
- You get articles that match your needs
- You can efficiently read back useful information
- You can use dark theme