Вдохновленный старой беседой Hacker News об этом веб-сайте, мне интересно:
Могут ли Ubuntu и Mono запустить веб-сайт ASP.NET MVC, такой как Ask Ubuntu?
Технология находится в центре внимания здесь, а не на сайте. Не могли бы вы заменить IIS, ASP.NET, MVC и т. Д. На технологии с открытым исходным кодом, не требуя полной перестройки сайта?
Примечание от Оли : мета- обсуждение (то есть: Спросить Ubuntu перейти на Ubuntu + Mono?) Перенесено в отдельный вопрос в мета-части сайта
Ответы:
У меня нет кодовой базы Ask Ubuntu, поэтому я не могу точно сказать, есть ли что-то специфическое для конкретной платформы, которое может вызвать блокировку, но в ответ на вопрос, можете ли вы перенести ее , ответ, вероятно, да .
Вы должны иметь в виду, что платформа, на которой работают веб-сайты ASP.NET, - это больше, чем просто магический бинарный файл ASP.NET:
ASP.NET в значительной степени можно заменить на Mono. Это не всегда красиво, и производительность не всегда велика, но это можно сделать.
ASP.NET MVC является движком шаблонов. Обычно он располагается поверх ASP.NET, но может работать в Mono с небольшими изменениями.
IIS может быть удален довольно просто, что позволяет использовать пользовательские обработчики, на которых работает SO, и заменить его Apache (и др.).
База данных технически самая большая часть целого. В простых случаях, когда вы используете хороший код, конечно. Вытереть базу данных и заменить ее. В частности, здесь кластерная структура серверов MSSQL, на которых работают сайты StackExchange, вероятно, может быть перенесена на MySQL (или другую), но, вероятно, потребуется значительная работа, так как, вероятно, имеется значительная часть специфичного для БД кода, скрывающегося вокруг, либо в базе данных. сам или (менее вероятно) в самом сайте. Большинство основанных на коде, специфичных для баз данных ошибок данных осталось в прошлом благодаря LINQ, который поддерживает Mono (также для баз данных, отличных от SQL Server).
Это ни в коем случае не исчерпывающий список того, что будет заменено, но это основные элементы.
Хотели бы вы или нет ... Это более сложный вопрос. К тому времени, как вы разыграли несколько десятков проблем, вы, вероятно, уже достигли той точки, когда вы могли бы просто переопределить систему в чем-то вроде Django. Конечно, это зависит от сложности системы. Это так же сложно, как кусок нити.
источник