Is using SQL Express in a production environment a reasonable choice?
I looked at Microsoft\'s comparison chart:
http://www.microsoft.com/sql/prodinfo/featur
One thing to ask might be - if your needs outweigh the capabilities of SQL Server Express, will you be able to afford a commercial version?
I think the one of the ideas of SQL Server Express is that you could host your site on it and once you outgrow it (need more than 4GB, etc.) you will buy a commercial version, especially now that you're locked in to using it. But if your site will outgrow it sooner than the income coming in will be able to buy a commercial version, this could be a problem (and possibly a database design flaw if your site is consuming more data/disk space than it needs to)
There's a maximum of 5 concurrent connections for SQL Express. If you have more than 5 concurrent connections performance will drop severely. Alos, you have to consider that SQL Agent is not included so if you want to schedule backups or maintenance tasks you have to use windows scheduler. Other that this, it's a perfect solution for small databases.
I know many people using SQL Express for production and it works well, the biggest limiting factor is the absence of SQL Agent for automated backups. To automate backups you have to either take a VM image (if on a VPS) or use windows scheduler or some other technology.
The only other major limiting factor is the ram limitation, but for a small site I have not really noticed that being too much of an actual issue.
Many cheap hosting companies uses SQL Express. And I know from personal experience that SQL Express is a viable solution for most things.
"Most things" includes a large project in a production environment.
SQL Express is a great choice if you don't mind the memory and processor limitations. The database size limitation is not as much of an issue now that in 2008 R2 they up'd the limit to 10gb. I think the other limitations are still the same though.