功能:实现本地数据上传到远程服务器
操作实现:
1、发送本地ID到远程服务器进行身份验证,验证成功则可Get到本地需要发送的数据的ID,例如:
本地发送身份ID:key123,验证成功,则远程服务器匹配到该ID所包含的数据条目,例如传回7个ExdID。
2、收到7个ExdID后,本地需要传输数据库中许多数据中的这7个ExdID所对应的数据到远程服务器,远程服务器将收到的数据保存、更新到远程数据库中。
注意问题:
1、为保证带宽负载轻松,不能频繁往远程服务器传输数据。
2、考虑到断网情况,断网之间的数据不能丢失,需要完整且一个不漏的传输到远程服务器。
3、不要传输本地未更新的数据到远程服务器,本地数据中有一个更新时间字段。
4、只能查询数据库中的记录,不能进行其他任何操作。
解决方法:
1、设置定时器,例如每5s进行一次连接。
2、将第一次发送的数据写入一个txt文件,包含内容有ExdID, 更新时间。
3、每次从数据库中获取到数据后,将其与txt文件中的数据进行比对,若相同ExdID的数据的更新时间也相同,则此数据删除,剩下的数据更新到txt文件中去并传输到远程服务器。
4、断网后,将数据库中所有的记录都保存到本地文件,第一次取出的数据额外新建一个txt文件。每次取出的数据在保存时应该建立一棵树,格式为先以年建文件夹,年文件夹里建立月文件夹,月文件夹里建立该月每日的文件为一个文件,用于存储从数据库中取出但是未发送到远程服务器中的数据,且为了减少文件保存的数据大小,每次保存前与txt文件中的数据进行比对,若相同ExdID的数据的更新时间也相同,则此数据删除,剩下的数据更新到txt文件中去并保存到日文件中去。当网络重新连接上后,将发送本地文件中的数据到远程服务器。