Dispatching policies such as the join shortest queue (JSQ), join smallest work (JSW) and their power of two variants are used in load balancing systems where the instantaneous queue length or workload information at all queues or a subset of them can be queried. In situations where the dispatcher has an associated memory, one can minimize this query overhead by maintaining a list of idle servers to which jobs can be dispatched. Recent alternative approaches that do not require querying such information include the cancel on start and cancel on complete based replication policies. The downside of such policies however is that the servers must communicate the start or completion of each service to the dispatcher and must allow cancellation of redundant copies. In practice, the requirements of query messaging, memory, and replica cancellation pose challenges in their implementation and their advantages are not clear. In this work, we consider load balancing policies that do not query load information, do not have a memory, and do not cancel replicas. Surprisingly, we were able to identify operating regimes where such policies have better performance when compared to some of the popular policies that utilize server feedback information. Our policies allow the dispatcher to append a timer to each job or its replica. A job or a replica is discarded if its timer expires before it starts receiving service. We analyze several variants of this policy which are novel, simple to implement, and also have remarkably good performance in some operating regimes, despite no feedback from servers to the dispatcher.
翻译:加入最短的队列( JSQ), 加入最小的工作( JSW ) 等调度政策, 加入最小的工作( JSW ), 其两个变种的力量用于负荷平衡系统, 即所有队列或其中某个子组的瞬间队列长度或工作量信息可以被查询。 在调度员拥有相关内存的情况下, 人们可以通过维持一个可以发送任务的闲置服务器列表来尽量减少这项查询间接费用。 最近的替代方法不需要查询这类信息, 包括启动时取消和取消完整复制政策。 然而, 这些政策的下面是服务器必须向调度员通报每项服务的启动或完成情况, 并且必须允许注销多余的副本。 实际上, 询问信息、 记忆和复制取消信息的要求给执行带来挑战, 并且其优点并不明确。 在这项工作中, 我们考虑的是, 不查询负荷信息、 没有记忆, 也不取消复制软件。 令人惊讶的是, 我们找到了操作机制, 当使用服务器反馈信息的一些流行政策相比, 这样的操作机制有更好的性能更好的表现。 我们的政策允许调度员在每次运行时, 复制时, 我们的政策也会在接收一个简单的服务器的运行, 。