Using .NET/Mono on Linux to serve a high volume web service, a good idea?

We have a web service that does a fairly high volume of traffic that helps you figure out what are your preferred contacts based on the e-mails you receive.

This service was initially implemented in C# /.NET in order to leverage some code we already have running on Windows hosts. This service does not uses ASP.NET but it's a simple C# service using a base HTTP Listener from .NET.

The service is performing OK, but once in a while MONO will totally blocks and stop responding to any requests. The performance is OK, but not great and it seams that we spend a huge amount of time figuring the difference between the MONO CLR and the Windows CLR. I must admit, I am coming from a Java background and it seems that the ecosystem on the server side is way larger on the Java side than the MONO ecosystem on Linux.

So for now, I am looking for examples and personal experiences around using Mono on Linux to server a high traffic web service.


不知道它是否有助于解决您的问题,但您可以尝试在新的垃圾回收器附带的mono 2.8上运行您的Web服务。


For high volume performance tuning, you often need to consider the following pieces altogether

  • operating system settings (TCP/IP specific)
  • web server level settings
  • framework level settings (Mono specific)
  • Like @yojimbo87 described, using the latest Mono build can help burst the performance from framework level. But you also need to learn about the OS and the web server to see if there are other tuning approaches.

    链接地址: http://www.djcxy.com/p/2592.html

    上一篇: 模板参数,#定义和代码重复

    下一篇: 使用Linux上的.NET / Mono来提供高容量的Web服务,一个好主意?