zoukankan      html  css  js  c++  java
  • 实践:耗时短的任务和耗时长的任务

    一、耗时长的任务:消耗时间长的任务,以睡眠两秒为例。

    二、耗时短的任务:消耗时间短的任务,以分配耗时长的任务到指定进程为例。

    三、任务分配进程:异步进程。将收到的长耗时任务 以对同一用户的多次操作要排队的原则  分配到任务进程。

    补充:

    1.  hash:key + value,以key取值的圆环式增长实现hash圆环。

    1.1 hash:key+1保存未被分发的任务,max_key记录当前最大的key,min_key记录当前未被分发出去的最小的key。

    2.保存未完成的正在处理的任务。

    3.任务处理完成后向分配任务进程发送已完成任务。

    4.发放任务前检查未完成的任务,如果当前要发送的任务的user存在未被执行完的任务则当前的任务不可发放。

    5.如果积压了大量未被发放的任务,怎么处理?

    尚未做:模拟该方案的具体实现。

  • 相关阅读:
    关于ARMv8指令的几个问题
    cocos2d-x2.2.3 Layer分析
    unity3D iTween的使用
    lucene索引库的增删改查操作
    【剑指offer】数值的整数次方
    Integer to Roman
    HTML标签之marquee
    Django练习——TodoList
    html5式程序员表白
    00085_异常
  • 原文地址:https://www.cnblogs.com/ribavnu/p/3701565.html
Copyright © 2011-2022 走看看