首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >使用ASP.NET Web API作为影像服务

使用ASP.NET Web API作为影像服务
EN

Stack Overflow用户
提问于 2012-08-04 01:53:50
回答 2查看 6.7K关注 0票数 5

我有一个在网络和移动平台上运行的应用程序,它的用户可以使用该应用程序上传照片。我需要一个web服务来处理上传和显示web和移动应用程序上的图像。

使用ASP.NET Web API作为图像服务并在其上发出上传照片的POST请求是不是一个好主意?这种方法的优点和缺点是什么?对这样的服务使用ASP.NET Web API开销吗?

EN

回答 2

Stack Overflow用户

发布于 2012-08-05 02:07:38

ASP.NET Web API非常适合异步I/O --它在.NET 4(特别是.Net 4.5)中使用了新的基于任务的异步模型,这使得构建异步控制器和协调多个异步操作变得非常简单。如果这个模型对你来说是新的,那么我会推荐this presentation on channel9

对于上传,HTML完全支持基于表单的常见ASP.NET文件上传模型的异步MIME多部分文件上传。您可以在FileUploadSample available as source中看到这方面的示例。

使用StreamContent异步服务文件也很简单。在这里,您(在控制器中)打开一个文件,创建一个HttpResponseMessage,然后以包装该文件的HttpContent的形式附加一个StreamContent,这就完成了。

所有这些操作都不会阻塞I/O上的任何线程。

希望这能帮上忙

亨里克

票数 12
EN

Stack Overflow用户

发布于 2012-08-04 02:36:32

这取决于你的应用程序的并发性和用户数。

这类应用程序的本质是以I/O为中心的,这意味着您的ASP.NET服务器将在大多数时间等待I/O操作完成。在高并发的情况下,这将导致您的ASP.NET托管线程池因线程匮乏而崩溃。

我会推荐:

1)如果您保持ASP.NET的主动性,请实现IAsync编程模型。这将使您的web应用程序更具伸缩性。

2)如果您不想处理IAsyncResult,那么在中间放置一些负载均衡器,并水平扩展,根据需要添加更多的服务器。这可能会导致需要将您的ASP.NET应用程序重新设计为Web,从而增加一些复杂性(会话状态管理、身份验证、授权等)。

3)尝试不同的技术,Node.js在处理I/O高延迟编程模型方面广为人知。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11800844

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档