Выбираю платформу для нового проекта. Я специализируюсь на разработке под .NET, но по ряду причин, не хочу в данном случае использовать win-стек. Сейчас из серверной части нужны фронт-офис, бек-офис и API, в будущем потребуется еще демон для всяких фоновых задач.
С Mono никогда раньше не работал. Стоит попробовать развернуть nginx+mono или ну его в баню и работать нормально не будет? Я неплохо знаком с CentOS. Если есть опыт разворачивания Mono на этой платформе, поделитесь пожалуйста впечатлениями. Особенно интересует, получится ли использовать WebApi или WCF для реализации API и ASP.NET MVC для UI.
ASP.NET запустился, особой нагрузки там не будет, так что меня должен устроить вариант с ngnix+xsp. Уточняю вопрос. Что на счет производительности self-hosted WCF (REST, JSON) с помощью mono-service? Очень не хочется брать в руки плюсы пока в этом действительно не будет необходимости. API будет публичным и обслуживать много сайтов. Кто-нибудь тестировал?
Подскажу только по ASP.NET MVC.
Я с небольшим трудом успешно развернул ASP.NET MVC проект на Mono (Ubuntu). Методом проб и ошибок (тыком) проверял, какие FrameWorkо-вские dll нужно взять с проекта, а какие оставить стандартные Movo-вские.
Вот тоже сейчас пробую, запустил под маком. Вроде как работает. Вы не пробовали под нагрузкой как себя ведет ASP.NET? Нашел тесты производительности и комментарии в интернете, дескать запускают asp.net под xsp, потому что fast cgi плохо себя ведет. Какую нагрузку xsp сможет держать?
Больших проблем с запуском .NET под mono нет, но есть мелкие нюансы, которые по началу неожиданно всплывают. Например, пришлось отказаться от JsonResult — как-то он не так сеарилизовывал объекты в .NET и Mono. Было что-то ещё, но все эти проблемы легко решаются и больше к ним не возвращаешься.
Нагрузочных тестов не делал, поскольку нагрузка почти никакая. Крутится небольшое корпоративное приложение на серверной Ubunte в виртуалке (xsp+nginx).