javaee论坛

普通会员

225648

帖子

331

回复

345

积分

楼主
发表于 2019-11-03 12:48:38 | 查看: 563 | 回复: 0

其中r=λ/μ[R=λ/μ。最后,我们可以看到模拟如何快速收敛到系统中的理论平均客户数Nñ:

 服务费率在许多实际的排队方案中,服务器的速度取决于系统的状态。在这里,我们考虑一个多服务器资源,该资源能够在到达位置之间平均分配处理能力。这意味着,例如,如果capacity=2服务器中有一个服务器到达,则服务器的服务速度将提高一倍。

 start:到达开始最后一个timeout活动的模拟时间。multiplier:分配处理能力。delay:服务延迟应用于上一个timeout活动。 

下面的主要轨迹首先抓住了服务器并初始化了这三个属性。然后,到达者需要遵循update.delay轨迹,并且必须在任何给定时间中断以重新运行它,从而重新计算剩余的服务时间。 

在下文中,我们将M/M/2与该状态相关系统进行比较。这两个系统的到达时间相同,并且可以预期,平均资源使用量显着降低。

排队网络 队列网络。

有三个指数生成器注入平均大小为100字节的指数大小的消息。有四个M/D/1队列,确定速率等于220字节/秒。来自λ的消息有25%的概率1个λ1个 在第二个队列之前删除。 

我们将首先设置主要常量和几个函数来设置消息大小并占用M/D/1队列:

下一步是设置三个连接点:

最后,我们运行仿真环境:

run(4000)#>simmerenvironment:anonymous|now:4000|next:4000.27679472528#>{Monitor:inmemory}#>{Resource:md1_1|monitored:TRUE|serverstatus:1(1)|queuestatus:4(Inf)}#>{Resource:md1_2|monitored:TRUE|serverstatus:1(1)|queuestatus:4(Inf)}#>{Resource:md1_3|monitored:TRUE|serverstatus:0(1)|queuestatus:0(Inf)}#>{Resource:md1_4|monitored:TRUE|serverstatus:0(1)|queuestatus:0(Inf)}#>{Source:arrival1_|monitored:2|n_generated:7994}#>{Source:arrival3_|monitored:2|n_generated:1959}#>{Source:arrival4_|monitored:2|n_generated:2390}在分析中,我们将过滤来自生成器1的到达队列3和4的到达,并检查平均等待时间和消息总数:

aggregate(waiting_time~generator+resource,arr,function(x)sum(x)/length(x))#>generatorresourcewaiting_time#>1arrival1md1_36.2313118#>2arrival3md1_30.7253215#>3arrival1md1_45.6431528#>4arrival4md1_40.5001096get_n_generated(env,"arrival1_")+get_n_generated(env,"arrival4_")#>[1]10384aggregate(waiting_time~generator+resource,arr,length)#>generatorresourcewaiting_time#>1arrival1md1_33864#>2arrival3md1_31958#>3arrival1md1_42177#>4arrival4md1_42389

您需要登录后才可以回帖 登录 | 立即注册

触屏版| 电脑版

技术支持 历史网 V2.0 © 2016-2017