【发布时间】:2008-12-29 03:19:16
【问题描述】:
我需要创建一个 HttpHandler,它将为图像文件(简单的静态文件)提供服务,并且它还将在 SQL Server 表中插入一条记录。 (例如http://site/some.img,其中 some.img 是一个 HttpHandler)我需要一个内存对象(如通用列表对象),我可以在每个请求中添加项目(我还必须考虑每秒数百或数千个请求) 并且我应该能够使用 SqlBulkCopy 将此内存中的对象卸载到 sql 表中。
列表 --> 数据表 --> SqlBulkCopy
我想到了使用 Cache 对象。创建一个通用列表对象并将其保存在 HttpContext.Cache 中,并在每次向其中插入一个新项目。这将不起作用,因为 CacheItemRemovedCallback 会在 HttpHandler 尝试添加新项目时立即触发。我不能使用 Cache 对象作为内存队列。
任何人都可以提出任何建议吗?如果负载更多,我将来可以扩展吗?
【问题讨论】:
标签: asp.net httphandler