views:

321

answers:

4

C# looks great because it is a compiled language which seems to run quite well without too much CPU and does not consume too much memory. And StackOverflow and ServerFault are good examples of an MVC/.Net/C# stack that scales.

C# is also interesting because despite being compiled, it still has a lot of advanced features as a language only found on slower interpreted language.

My server being Linux only (Ubuntu 8.04 LTS), I am wondering if installing Mono in place of the .Net framework is a good idea for production use.

I currently do not have any existing applications using .Net but I am interested in using existing frameworks (like MS MVC).

+4  A: 

Stable enough and fast enough to do what?

It will have different levels of stability and performance depending on what you want to do, I'm sure. For example, one of my Protocol Buffers unit tests (which uses Rhino.Mocks) manages to make the Mono VM abort with an assertion error - but I have no idea (currently) of whether that would affect anything else I'm doing, or whether it's just related to the form of proxying being used.

I suggest you try it and see.

Jon Skeet
+2  A: 

You'll have to judge it on a feature basis. At my current customer we're running a high-volume document processing and delivery system written in .NET 3.5. We have a Linux server that runs Mono with .NET components that take care of the delivery of documents to the outside world, e.g. through FTP. That runs fine in production.

We did run into a problem with the Mono implementation of the .NET FTP component, which forced us to look for other third party .NET components, which solved the problem. So you might run into things like these. But in our case: once we got it to work, it worked just fine and stable.

Pascal Lindelauf
Good stuff, thanks for that.
Yar
+4  A: 

ASP.Net MVC is now open source. That it is now integrated into MonoDevelop via an add in would suggest that you are likely to get things working.

Given the very new status of this you should expect issues. This blog should be a reasonable starting point for you.

Remember that many ASP.Net MVC tutorials assume you have a sql server back end, this is unlikely to be feasible (given your question) so bear that in mind.

ShuggyCoUk
+7  A: 

Here is the answer given by Mono creator: Is Mono ready for prime time?.

Grzegorz Gierlik