algorithm - 性能 - 具有 4 组优先级队列的多进程 RR 调度
问题描述
所以,伙计们,我遇到了这个问题,并希望有一个最佳的 RR 解决方案,这是我拥有的资源:
数据包进入四组队列,每组包含从 pq0 到 pq7 排列的 8 个优先级队列。跨集的相同优先级权重相同。IE。集合 1 中的 pq0 和集合 2 中的 pq0 具有同等优先级。
我有 4 名工人同时轮询这些队列。一个队列在一个工作人员访问它时被锁定,如果另一个工作人员碰巧与它发生冲突,该工作人员只会尝试其 RR 列表中的下一个队列。
我目前的设计是根据优先级将队列分成8组,即。4 x pq0, 4 x pq1 ... 4 x pq7。让四个工人先通过 pq0s,然后是 pq1s,最后是 pq7s。问题:如果我们认为较高优先级的饥饿,较低的优先级是正常的。如果较高的优先级通常为空,那将是一个巨大的成本(这是一个假设,较低优先级的队列也可能是空的,因为我无法知道模式。)
有什么建议,算法吗?
解决方案
推荐阅读
- azure - 如何在 azure 管道中编辑将标志(--ipc=host)传递给 docker run -d -p?
- c# - 从“模型”类设置“视图模型”属性
- swift5.1 - 为什么 Xcode 不会抛出编译错误?
- laravel - Laravel 中与数据透视表的模型关系
- performance - 从 S3 到 Snowflake 和性能
- javascript - 不能要求在同一文件夹中按索引导出对象
- sql - 如何使用 SQL 将多行中的一种情况的值合并到一行中?
- django - 如何使用 graphene-django 从实现中生成 GraphQL SDL?
- sql - ADO 无法识别旧式 SQL 连接。不知道如何在此特定查询中使用新式语法
- android - 应用关闭时如何打开通知[Flutter][OneSignal]