2010-09-18 89 views
0

我有一个Web应用程序,通过Web服务运行大部分服务。
首先,我想知道在Web上下文中使用AOP时会发生多少性能下降,例如 如果我能够在没有AOP的情况下处理200次请求/秒,那么结果如何(具有简单的日志记录和授权)在web上下文中使用AOP和对性能的影响

是否有任何伟大的AOP框架可用于.NET?
使用代理Web服务(实现授权,日志记录,...在代理中)获得更好的性能或使用AOP的开销可以忽略不计,它的优点值得性能下降是一个更好的主意。

什么是.net框架中AOP的最佳替代品?

+0

我想控制授权创建一些日志记录,启用或禁用我需要的Web服务,异常处理,缓存和更多常见的任务应该在每个Web服务运行时执行 – Ehsan 2010-09-18 20:47:32

回答

1

我所知道的.Net最好的AOP框架是PostSharp。它非常漂亮,易于使用,并且不会以任何方式影响运行时性能,因为所有编织都是在编译时进行的(编译时间会因此而增加一点,但它确实可以管理)。唯一发生的事情就是你的方面被编织成方法,所以在性能方面,用古典的方式编写你的日志代码和使用PostSharp时将它们放在方面没有区别。

SharpCrafters website处查找。

+0

你说PostSharp我可以得到相同的性能当用古典的方式写作时?任何基准? – Ehsan 2010-09-19 03:41:52

+0

http://www.sharpcrafters.com/blog/post/introducing-postsharp-2-0-2-amazing-runtime-performance-enhancements.aspx – 2010-09-19 09:06:39