我正在开发一个过程,作为所有客户访问数据的外观(报告大小从100 kb到几MB不等),每天只运行几千个,但确切数量未知,并且可能每天都有很大差异
构建外观背后的动机是我们在场景后面有几个可以生成数据的服务器,但是我们想要进行某种负载平衡以充分利用我们拥有的所有服务器,客户端也不需要知道他们需要点击的个人服务器。
因此,façade选择一个服务器,围绕报告并将数据发送回客户端。因此,对于给定的报告,这里涉及两个IO
我知道这是一个模糊的话题,但我怎么能估计总IO,看看外观是否会成为一个瓶颈,因为所有的IO都经历过。任何见解,提示将不胜感激。
答案 0 :(得分:1)
根据最坏情况估算。
您说确切的报告数量未知,可能会有很大差异。你真的只需要关注最坏的情况。您只需要确保在最忙碌的一天,立面不是瓶颈。我的计划是采取历史上最繁忙的一天,并将这一数量增加一倍。如果你确保门面可以处理那么多的流量,那么它很可能能够处理任何可预见的事情。
但请注意,返回的数据不必通过外观返回。有几种不同的方法来构建这样的系统,其中处理节点可以在完成时将结果直接发送回客户端。除非这些报告基于静态数据并且可以在外观中缓存,否则我看不到在完成后通过外观将所有报告的数据发送回来的好处。