zoukankan      html  css  js  c++  java
  • 系统的升级,别忘了验证

    C/S系统最大的弊端就是升级麻烦,因此通常产品都会增加一个自动升级的功能,方法也是多种多样,但是在最近的一次实施中,我犯了一个致命的错误,就是---验证。

    在LiveUpdate的升级中,通常把精力都放到怎么能够更好的进行文件的传输,提高传输的速率等等问题,但是往往忽视了升级之后的校验。这次升级,我们是将升级的文件放入到SQL Server数据库中的,我们有单独的表来存储需要升级的文件,注意这个就有了一个严重的隐患,因为数据库是需要经常的备份和还原的,因此升级文件放入到数据库的后果就是,随着数据库的备份和还原,升级文件也有可能随着数据库还原为旧数据而丢失。

    其实升级文件如果放到服务端,不管是任何介质,都有可能丢失的,因此采用FTP方式还是数据库流方式下载,都只是形式而已,但是服务端都有可能造成升级文件的丢失,这只是其中的一点。

    还有就是在下载的过程中,总会遇到丢失字节、防火墙拦截、恶意篡改等情况,因此即使升级文件没问题也不能保证升级的成功。

    因此在升级之后,一定要做升级文件的验证,一旦发现错误,立刻进行处理。。。

    这次产品中恰恰没有做验证,出现了客户端版本与服务端要求版本不一致的问题,郁闷,唉,早干什么去了。

  • 相关阅读:
    数组实战---集合了一些常用函数
    PHP正则表达式函数
    ThinkPHP学习之-------视图
    ThinkPHP小技巧之改变应用名称
    ThinkPHP中常用总结一CURD操作
    PHPExcel从数据库导出数据
    用PHP脚本来拆分字符串并形成两个新字段
    PHPExcel导出数据的基本使用方法
    php 中文切割字符串长度
    Nginx 在configure时的参数
  • 原文地址:https://www.cnblogs.com/Duiker/p/585181.html
Copyright © 2011-2022 走看看