开发者社区> 问答> 正文

高可用的服务有哪些?

高可用的服务有哪些?

展开
收起
xin在这 2021-12-06 10:20:21 396 0
1 条回答
写回答
取消 提交回答
  • 高可用的服务模块为业务产品提供基础公共服务,在大型站点中这些服务通常都独立分布式部署,被具体应用远程调用。

      在具体实践中,有以下几点高可用的服务策略可以参考:

      ①分级管理:核心应用和服务具有更高的优先级,比如用户及时付款比能否评价商品更重要;

      ②超时设置:设置服务调用的超时时间,一旦超时后,通信框架抛出异常,应用程序则根据服务调度策略选择重试or请求转移到其他服务器上;

      ③异步调用:通过消息队列等异步方式完成,避免一个服务失败导致整个应用请求失败的情况。

    不是所有服务都可以异步调用,对于获取用户信息这类调用,采用异步方式会延长响应时间,得不偿失。对于那些必须确认服务调用成功后才能继续进行下一步的操作的应用也不适合异步调用。

      ④服务降级:网站访问高峰期间,为了保证核心应用的正常运行,需要对服务降级。

      降级有两种手段:一是拒绝服务,拒绝较低优先级的应用的调用,减少服务调用并发数,确保核心应用的正常运行;二是关闭功能,关闭部分不重要的服务,或者服务内部关闭部分不重要的功能,以节约系统开销,为核心应用服务让出资源;

      ⑤幂等性设计:保证服务重复调用和调用一次产生的结果相同;

    2021-12-06 10:22:10
    赞同 展开评论 打赏
问答地址:
问答排行榜
最热
最新

相关电子书

更多
云原生时代下的分布式云多集群管理-容灾,弹性,多集群负载分布 立即下载
云原生架构下面向流量的应用高可用 立即下载
阿里云HBase主备双活 立即下载