我需要在员工之间分配呼叫。不同的员工在系统中拥有不同的权重。例如,一名员工的电话数量比其他电话多两倍。PHP。正确的方式做加权分配
我现在正在使用此方案:
雇员1 - 游客10.
雇员2 - 游客9.
雇员3 - 评级4.
员工4 - 等级3
我使用此答案中的加权随机函数(Generating random results by weight in PHP?)选择要拨打的电话号码。
问题是,每天都没有多少电话。大约10-20。上面的方法可以在更大的号码上使用,但只需少量呼叫,员工4可以在某天轻松接听电话。
有没有办法做加权分配,这对小数目有效?或者上面的答案是最好的答案?
小数目?向员工填充一个数组,根据需要多次复制它们。例如'数组'('1','1','1','2','2','3')',然后洗牌数组并根据需要弹出条目。 –
那么你是否说过_every_员工需要在第一次电话会议之前采取行动?意味着至少有1个电话?如果没有,那么你应该罚款的事实是,只有4名员工和10个电话,某个员工可能不会接听任何电话。 –
打电话是否全天进来?如果是这样,请使用优先级队列。你有没有在一天的开始时列出所有的电话,你必须把它们交出来?如果是这样,你可以使用重复来处理它们。由于两者都是非常不同的解决方案,因此在回答之前知道您想要的是非常重要的。 – kainaw