Как стать автором
Обновить

Комментарии 36

Повторюсь, что в wiki Mono ясно указано, что xsp лучше использовать для тестов
Да ладно, месяцами стабильно и шустро работает, чего нельзя сказать про их реализацию FastCGI.
именно, поэтому своим друзьям я настроил именно так. FastCGI, к сожалению, пока неудел.
Скрыть панель вкладок Ctrl + Shift + B. А скрыть кнопку расширения ПКМ -> Спрятать кнопку.
Это что бы не портили скриншоты в дальнейшем или используйте инкогнито (Ctrl + Shift + N)
в инкогнито все-равно висит, я попробовал. ;-)
спасибо за горячие клавиши, учту.
<тонко>
> root@falco:~/mono-2.10.2# ./configure --prefix=/usr --sysconfdir=/etc/mono
> root@falco:~/mono-2.10.2# make && make install
> 12 июня 2011, 01:27
> 2011

</тонко>

<толсто>собрать свой пакет слабо?</толсто>
Для Mono таких удобств с репозиториями нет…

Как это нет? А это?

Да, вы правы, можно подключить экспериментальную ветку и через Pin настроить обновление Mono и Xsp оттуда.
При этом, именно экспериментальную, т.к. в других используется lts-версия 2.6.*, которая не поддерживает .net 4 и точно не работает с MVC 3.
Что мешает выкачать пакет исходного кода из experimental, собрать у себя и поднять отдельную репу?
по-моему, через pining как-то… быстрее что-ли.
а если собирать пакет, то тогда уж лучше из исходников, т.к. свежая версия — 2.10.2, против 2.10.1 в experimental. у меня xsp работает только на одном виртуальном сервере, там всего два сайта, я не видел смысла собирать для этого пакет. если вечером будет свободное время — попробую собрать.
А меня в прошлой теме «сервер за 2000» за совет перейти на бздю+mono заминусовали :o что то тут не чисто…
Наверное потому, что та тема была про сервер баз данных.
Можно чуть-чуть подкорректирую?
Блин!!! Отправилось :(
root@falco:~# echo «deb packages.dotdeb.org stable all» >> /etc/apt/sources.list
лучше, имхо, использовать /etc/apt/sources.list.d/dotdeb.list, куда просто через > сложить

опечатка про «mininal»

Очень напрягает, что xsp будет запущен от рута. Это так и задумано? Как с безопасностью в этом плане? Может, стоит добавить переключение на юзера www-data или там xsp?

насчет sources.list — это дело на любителя ;)
опечатку поправил.
Очень напрягает, что xsp будет запущен от рута. Это так и задумано? Как с безопасностью в этом плане? Может, стоит добавить переключение на юзера www-data или там xsp?
я переписал это место статьи, посмотрите пожалуйста.
--root я бы тоже вынес в конфиг.
о, еще и start-stop-daemon, теперь совсем кошерно :)
Как потребление ресурсов (память\проц) xsp частью?
я, к сожалению, не могу ответить вам по каким-то реальным цифрам. у меня хостятся две домашние поделки, на которые никто кроме авторов не ходит — там нагрузки нет вообще никакой…
Я на xsp держу hivemind.me. Нагрузка на проц вообще не чувствуется, памяти вместе со всеми кэшами кушает что-то около 80-90 мегабайт.
Не сочтите за рекламу, но может кому-то поможет, недавно запускал тестовую страничку на моно и законспектировал телодвижения.

Установка тоже из исходников, запуск через fastcgi, ставилось на убунту.
покупать лицензию на Windows Server, а потом и арендовывать достаточно мощный выделенный/виртуальный сервер
лицензию покупать не обязательно, можно ее тоже арендовать (ну или бесплатно получить, если вы студент или по bizspark). Также как необязательно и арендовать сервер, можно купить :)

Я, кстати, плачу ~500 руб в месяц за лицензию Windows Server 2008 R2 для своего выделенного сервера с 12 Гб оперативки + 1,5Тб хард. Не очень большие деньги, можно себе позволить, чтобы запускать стафф на нативной среде.

Хотя за статью спасибо. Интересны баги, насколько хорошо работает это дело, есть реальные проекты, которые хостятся на mono?
Согласен.
Но хотел бы расширить этот вопрос и отметить, что к выбору между хостингом на MS Windows (подразумевается IIS) и Linux (подразумевается xsp2) стоит подходить с учетом всех особенностей.
Хоть я и не знаком с результатами специальных тестов, но что то мне подсказывает, что хостинг на Windows будет более производительным и надежным, но! Не всегда это нужно. Например, корпоративное приложение, которое «смотрит» в Intranet с общим количеством пользователей около нескольких десятков, с частотой посещения один пользователь в день — использование xsp2 может быть вполне оправдано. Так же использование xsp2 может быть оправдано в том случае, если предпологается разворачивание сервера на виртуальной машине (сервер развернутый под Linux в общем случае будет менее требователен к системным ресурсам).
А если речь идет о создании электронного магазина, который должен в течении месяца должен завоевать весь рынок, то пожалуй, я бы воздержался от использования xsp2.

Я это к тому, что дело тут не только в стоимости, как таковой.
Согласен. Все задачи надо решать в разумных пределах. Скажем, на моей бывшей работе была специальная система trouble ticket'ов для трех человек из тех.поддержки. Хостилась прямо на XP-тачке одного из чуваков. Этого было более, чем достаточно.
Спасибо!
хостинг на Windows будет более производительным и надежным
Вот надежность тоже сыграла свою роль. Я в администрировании Windows просто профан, вообще ни черта не понимаю. В linux вроде кое-что знаю и умею, в конце концов есть друзья, которые умеют в нем еще больше. С Windows, в этом смысле, очень туго. Не стал об этом писать в статье, как-то стыдно что ли… :)
да я вообще сначала хотел встать в позу, чтобы на руби, пиэйчпи или еще чём-то переделали! :)
проблема с лицензией решилась через месяц, когда появилась подписка MSDN. но за отдельную железяку, для некоммерческих проектов, которые вообще денег не приносят, платить все-равно жаааалко. даже если арендовывать в хетзнере. а виртуалка с linux уже была и окупалась, вот и решение пришлось найти.

баги и работоспособность — это интересный момент.
касательно работоспособности asp.net: чтобы успешно запустить сайты на asp.net mvc3 надо внимально почитать вот это. о багах я ничего не знаю.
касательно mono в целом (как раз пишем тут приложение-сервер, которое и под моно должно работать и под .net): бо́льшая часть проблем — из-за изначальной криворукостизабывчивости и решается очень просто, скажем, .net понимает
private static string[,] _objTables = {};
, а для того, чтобы mono понял нужно написать явно:
private static string[,] _objTables = {{}};
иначе будет Invalid IL code in Namespace.SampleClass:.cctor (): IL_0015: newobj

часто сталкиваешься с тем, что сторонние библиотеки на mono не тестируют. например, nlog 2, якобы работающий под mono — имеет неприятный баг, который тянется еще с mono 2.8, а его никак не поправят. приходится самому искать костыли или поправлять. или вообще искать замену… получается, что во время разработки приходится тратить много времени на адаптацию того, что на .Net работает как часы.

поплясав так 1-2 раза уже набиваешь руку и запоминаешь тонкости.

еще есть проблема с обфускацией и защитой программ. мы пока так и не нашли подходящего обфускатора, чтобы полученный результат работал на .Net так и на Mono одинаково. надвигается страшный момент осознания того, что, возможно, придется писать свой… :(
Дотфускатор вполне неплохо справляется. Бинарь работает как под .NET, так и на Mono 2.6+
да, но цена у него кусачая до ужаса… надо попробовать подцепить триал к агентам в teamcity.
спасибо!
Да… Батенька знает толк в извращениях…

Если серьезно — технически, конечно, интересное и нестандартное решение, но врядли кто-то будет держать Production на связке Linux и ASP.NET.
Я год почти держу на этой связке биллинг. Падало два раза из-за моей собственной криворукости.
Прецеденты есть. Особенно это актуально, если есть большой штат .net разработчиков и не хочется платить сторонним. По крайней мере, немалый процент мелкомягких разрабов редко кодят на разных платформах…
Эх, вашу бы статью да пол годика назад, а то пришлось все крутить в авальном режиме вкривь и вкось. Хотя, говорят, до сих пор работает) В любом случае — в закладки)
Что можете сказать о производительности этой связки?
А как быть с MS SQL под который заточены ASP .Net приложения? Он-то под linux работать не хочет.
Oracle/Mysql/Sqlite/PostgreSql Выбирайте, еще есть и другие
Asp.net не заточены под MS SQL, на сколько я знаю в Asp.net есть драйвер для работы с бд, но это не значит обязательно MS SQL
Все верно, но львиная доля ASP .Net проектов под MS SQL :)
Если мне заказали проект, и я его делаю, то мне всеравно куда смотрил львинная доля =)
Есть вундервафля, изображающая из себя MS SQL и использующая PostgreSQL в качестве хранилища.
Зарегистрируйтесь на Хабре, чтобы оставить комментарий

Публикации

Истории