为文件处理实现Web服务的最佳方式是什么?
问题描述:
我有网络服务(wcf)来分析文件。文件大小为1-10 mb。文件可能会被处理几秒钟,也许更多,只有CPU使用。我不确定,但我认为这将是每秒至少100个请求。为文件处理实现Web服务的最佳方式是什么?
public Result ProcessFile(byte[] file)
{
}
实施服务的最佳方式是什么?同步或异步操作?查询?负载均衡?还要别的吗?
答
我会使用消息队列或使用netTcpBinding和回调的WCF服务器。
消息队列使得验证文件变得非常简单。没有负载平衡器等是必要的。接收它们的服务可以将它们放置在网络共享上,然后在队列中发送验证消息。任何正在队列中侦听的服务器都可以处理请求。
netTcpBinding更稳定的回调,我会用它来代替HTTP绑定。
文件可能会被处理几秒,也许更多,只有CPU使用。我不确定,但我认为这将是每秒至少100个请求。
你有没有通过?如果每秒至少有100个请求,则任何文件需要更长的时间才能烧录服务器。
Ofcause,我需要几台服务器。 为什么你推荐mq或回调?什么是实施它的理由? – Andy 2012-02-14 16:48:45
@Andy:阅读我的更新。 – jgauffin 2012-02-14 18:54:13
谢谢。我已经阅读了有关队列,但我不明白为什么它比只有Web服务器和负载平衡器更好。在这种情况下,我需要在网络共享上复制文件,然后在应用服务器上复制文件我认为这是不必要的工作。我错了吗?我打算使用负载均衡器和几台托管wcf-service的服务器。你对我的架构有什么看法? – Andy 2012-02-15 18:25:30