问题标签 [round-robin]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
algorithm - 如何找到就绪队列的平均队列长度和最大队列长度?
例如,p1,p2,p3,p4,p5
以各自突发时间为6,5,2,3,7
秒,CPU时间量为2秒的进程为例。
谁能告诉我如何计算循环调度的平均就绪队列长度和最大就绪队列长度?
此处就绪队列 => 在流程执行期间我们必须从该队列入队和出队。
实际上,到目前为止,我还没有得到公式或如何在任何地方找到这些参数。因此,我们将不胜感激任何帮助。
scala - Scala - 实现没有可变类型的循环
我目前正试图找到进入 Scala 世界的途径。实际上,我正在尝试实现没有可变类型的循环策略。
我有一个带有初始主机列表和获取下一个主机的方法的 Scala 对象。
我读过 Scala 中的不可变队列,但我真的不知道如何用不可变类型解决这个问题。不知何故,我必须记住一个索引,对吗?这是使用不可变类型没有意义的情况之一吗?
asp.net - Azure http 负载平衡无法正常工作
我有几个 Web 服务器在 Azure 的同一网络中运行我们的网站,在端口 80 HTTP 上进行负载平衡,以便来自 Visual Studio 2010 Ultimate 的网站负载测试将循环命中两者之一。但是,大部分工作总是由同一台服务器完成,大约是 80/20 拆分,导致一台服务器过载。我们已将 asp 状态会话配置为服务器一,服务器二正在接收大量 http 请求(不确定是否相关)
我为位于网站层下方的 Web 服务服务器(尽管没有状态会话服务器)提供了类似的配置,并且它们的负载平衡很好(50/50 拆分)
有什么我错过/需要注意的吗?
rabbitmq - 带确认的 RabbitMQ 循环
假设我有一个队列,里面有一堆消息。我有 2 个消费者连接到该队列,两者都设置为 prefetch = 1。这些消费者所做的工作需要一些时间,我不想在工作完成之前确认消息(以防消费者崩溃或其他情况- 我希望消息在特殊情况下自动重新进入队列)。
但我也希望这些消费者能够并行工作,而这似乎并没有发生。换句话说,只要队列中有 2 条以上的消息,我希望两个消费者都很忙。
相反,似乎发生的是消费者 1 收到一条消息,但消费者 2 将等到消费者 1 确认该消息。然后消费者 2 收到一条消息,消费者 1 等待,等等。
有没有我错过的选项?或者这应该有效吗,我的代码中只是有一个错误?或者这是不可能的?
java - 使用java在真实流程中进行循环模拟
我想在java中实现RR算法。但我希望这些过程是真实的,假设我在 java 中有一些其他程序,我在这个算法中调用它们来执行。但是我怎么能通过在所有进程中同时“想要”CPU来做到这一点呢?然后我想知道这些进程的 CPU 使用率。
algorithm - OCaml 中的循环算法
基本上,我实现了循环算法。
通过该算法,它可以生成对列表,其中每个可能的元素对恰好组合在一起一次。
例如,我们有a, b, c, d
,那么
第一天,我们做
a
b
c d
然后我们像 [(a,c);(b,d)] 一样分组。
然后我们顺时针将它四舍五入
a
c
d b
然后我们像 [(a,d);(c,b)] 一样分组。
然后我们顺时针将它四舍五入
a
d
b c
然后我们像 [(a,b);(d,c)] 一样分组。
(注意,a
一直是固定的。)
最后我可以得到
[(a,c);(b,d)]
[(a,d);(c,b)]
[(a,b);(d,c)]
这是ocaml代码:
遵循算法,代码非常简单。有更好的实现吗?
algorithm - 特殊情况调度
所以这就是问题所在。在研究进程调度时,我遇到了两个看似矛盾的例子,我无法理解。
如果例如在优先级非抢占式调度算法中总是选择具有最高优先级的进程下一个运行并且一旦运行,进程只能自愿放弃其CPU时间,即没有其他进程可以运行,直到当前运行的进程完成。看来这本书提出的解决方案是,如果一个进程的结束和新的高优先级进程的到来同时发生,那么新的高优先级进程将被加入到就绪队列中,然后由接下来要运行的调度程序。
但是在循环算法的另一个例子中,如果就绪队列中只有一个进程并且它当前正在运行,如果同时它的时间片已经过去并且新进程说它准备好了,那么建议的解决方案似乎是调度将首先完成,因此当前正在运行的进程将继续运行,而新进程将被添加到队列中。
如果有人向我澄清这一点,我将不胜感激,因为我从其他一些帖子中知道,对于队列中的单个进程,上下文切换不会在循环中发生,但总的来说,调度是在将新进程添加到队列之前完成的.
rabbitmq - 为什么 Rabbitmq 集群以 Round-Robin 方式向消费者传递消息
我有 2 个 Rabbitmq 节点作为集群连接(没有队列复制),并且有 4 个工作人员,都绑定到同一个队列“myqueue”,现在,我手动将消息发布到该队列(发布者可以连接到任何兔子节点 .. 不影响结果)。
现在,发生了这种情况:每次我向该队列发布消息时,我发现消息以循环方式传递给工作人员/消费者,无论消费者或发布者连接到哪个节点,我总是得到同样的结果。
有人告诉我这是 Rabbitmq 的“prefetch_count”的效果,但我不明白这是怎么回事,甚至我也不知道这是否是正确的答案。
round-robin - Round robin:一种特殊情况,两个处理一个用完它的时间段,另一个同时到达
我需要这方面的帮助。循环:一种特殊情况,因为两个处理的一个用完它的时间段,另一个同时到达。例如,我们有以下流程:
过程 P1:+ 到达时间:0 + 突发时间:7 过程 P2:+ 到达时间:5 + 突发时间:7 假设时间片 q = 5 并且在时间片结束后,如果进程未完成,则将其添加到队列的末端。
我的困惑大约是在时间 5。此时,P1 的时间段到期,P2 也到了。什么应该先排队?
operating-system - 多个进程并行运行时的 CPU 周期分布?
我的问题是 cpu 周期是否以循环方式分配给不同的进程?
问题的背景是: -
我有 Windows 系统,假设我已经打开了这 10 个不同的进程,例如在媒体播放器中播放音乐、在写字板中输入、在记事本中输入、在浏览器中冲浪等。
当我在写字板打字的同时,音乐在后台不间断地播放。我想知道音乐播放器是如何获得连续的 CPU 周期的。我的理解是操作系统正在以循环方式在不同进程之间旋转 cpu 周期,但是这种切换太快,最终用户无法发现音乐的中断(尽管实际上它被中断了)