zoukankan      html  css  js  c++  java
  • 一个事故引发的思考

    今天线上服务出现了一个事故,思考下这个事故,觉得有好几个地方需要思考。

    1 对于前端而言,代码回滚的功能是必须的。前端接口出现了问题,第一个应该想到的是将代码回滚到一个稳定版本。

    2 缓存和数据库的使用,需要注意一个问题,当缓存失效的时候,可能会有大并发的请求去访问数据库,这个时候数据库会不会崩溃?如果这个时候数据库崩溃了,那么web前段机也会随之崩溃。

    所以,缓存失效的时候去数据库访问这里必须有一个锁机制。

    3 在处理缓存和数据库的关系的时候,缓存一般会去设置一个过期时间,是在这个过期时间到的时候,缓存中的数据自动删除呢?还是做伪过期?即在设置的时候单独设置一个expire过期时间,根据这个过期时间来判断是否过期,这个好处是这里的缓存中得数据除了做加速作用,还做了容灾处理,当后端数据库挂了的时候,缓存中的数据就会一直生效。

    4 设置过期时间的时候是否需要将过期时间散列,这个是个技巧。

    5 客户端不要做在XX点做接口调用的操作。这完全就相当于DDOS攻击了。客户端需要将所有接口做散列处理。不能集中。

    6 报警和预警机制需要考虑。

    7 再高深的技术不如让服务稳定最重要。

    8 在做第三方请求处理的时候,需要问下自己,如果这个请求失败了怎么办?

  • 相关阅读:
    XXE注入攻击与防御
    axublog 1.05代码审计
    burpsuite两个变量的爱情故事
    关于centos安装后一些命令找不到
    SP_OACreate提权经验
    app测试初窥
    Drozer快速使用指南
    Senparc.Weixin.MP SDK 微信公众平台开发教程(十七):个性化菜单接口说明
    【重要更新】Senparc.Weixin SDK v4.4 升级说明
    【重要更新】Senparc.Weixin.Open v1.5.1
  • 原文地址:https://www.cnblogs.com/yjf512/p/3483038.html
Copyright © 2011-2022 走看看