Вас же много, кто-нибудь mono пробовал :) ?

Обсуждение вопросов связанных с кодовыми базами.

Вас же много, кто-нибудь mono пробовал :) ?

Postby KadVar » Fri Jun 18, 2010 12:39 pm

Собственно вопрос простой, пробовал ли кто-то реально в работе mono.
Насколько реально писать под .net под виндой и потом запускать под него ?
GUI дело десятое, речь скорее о консольных приложениях.

Посмотрел чуток исходники, кое что поразило, и довольно неприятно.
Но надо еще покопать, возможно всё не так плохо, как видится :).
В "бою" не пробовал, задач не было.
KadVar
Site Admin
 
Posts: 1416
Joined: Fri May 16, 2008 4:14 pm

Re: Вас же много, кто-нибудь mono пробовал :) ?

Postby KadVar » Tue Aug 24, 2010 5:31 pm

Собственно для начала прикинем список того, что стоило бы протестировать.
1. TCP-IP и реализацию телнетов, возможно с компрессией, как альтернатива посмотреть может на базе ssh есть что
2. скриптовые языки, тут яб брал луа
3. работа с бд, файлами
4. размер всего этого в ОЗУ
KadVar
Site Admin
 
Posts: 1416
Joined: Fri May 16, 2008 4:14 pm

Re: Вас же много, кто-нибудь mono пробовал :) ?

Postby omlin » Tue Aug 24, 2010 5:34 pm

ну на майкрософтовом .Net'е я всё это тестировал
есть хорошие либы... к примеру, для луа

такссс... в общем, в течение недели попробую развернуть моно и скомпилить тестовый проектик с использованием луа... и можно сокетов. и посмотрим по памяти, как минимум по виндовой памяти
omlin
 
Posts: 218
Joined: Tue Mar 24, 2009 6:20 pm

Re: Вас же много, кто-нибудь mono пробовал :) ?

Postby KadVar » Tue Aug 24, 2010 5:55 pm

omlin wrote:ну на майкрософтовом .Net'е я всё это тестировал
есть хорошие либы... к примеру, для луа

такссс... в общем, в течение недели попробую развернуть моно и скомпилить тестовый проектик с использованием луа... и можно сокетов. и посмотрим по памяти, как минимум по виндовой памяти


Вопрос не столько в том, насколько это работает с .Net, сколько в том, как это будет работать под всякими линуксами.
В принципе, где поиграться у меня есть.
Еще интересно что происходит с ним в случае крешей.

Но если есть что-то готовое, полуготовое, то лучше, конечно, его.
KadVar
Site Admin
 
Posts: 1416
Joined: Fri May 16, 2008 4:14 pm

Re: Вас же много, кто-нибудь mono пробовал :) ?

Postby omlin » Tue Aug 24, 2010 6:31 pm

а финальный результат? репозитарий имен?
omlin
 
Posts: 218
Joined: Tue Mar 24, 2009 6:20 pm

Re: Вас же много, кто-нибудь mono пробовал :) ?

Postby KadVar » Wed Aug 25, 2010 2:59 pm

omlin wrote:а финальный результат? репозитарий имен?

Да с точки зрения проверки - просто что-то работающее с телнетом и луа,
и реализующее список требуемого (первая цель - тщательно продумать список).

Можно сделать репозитарий, но оно похоже никому нафиг не надо.
У меня есть решения по именам за довольно большой срок... наверное,
можно их туда влить, но толку ?
С другой стороны это довольно интересная сама по себе задача.

Из ключевого. Мнеб хотелось еще многосервенность какую-то,
хотя, возможно это блажь и надо просто аккуратнее заизолироваться
от крешей. В идеале яб хотел минимум 3 сервера иметь.
1. Тестовый.
2. Продакшн - стейбл
3. Продакшен - нестейбл

И новые зоны подключать к третьему, при этом 2 и 3 должны быть прозрачны
для пользователя, т.е. разделение только на уровне реализации.
(если упал третий - второй живет итп).
А может, имеет смысл вообще поделить "1 инстанс сервера = 1 зона".

о
+ в проверку
что там с дебагом ? с дампами итп
KadVar
Site Admin
 
Posts: 1416
Joined: Fri May 16, 2008 4:14 pm

Re: Вас же много, кто-нибудь mono пробовал :) ?

Postby omlin » Sun Aug 26, 2012 3:04 am

Несколько фактов:

  • lua в моно работает без проблем
  • дебаг есть, более-менее нормальный: открываешь MonoDevelop, и вперед
  • дампы можно организовать, не проблема, но только если ошибка возникла внутри твоего кода. креши сторонних либ (той же lua) не отловишь. кстати, для дампов можно вообще использовать встроенные средства моно. там когда запускаешь приложение под моно, можно указать параметром куда писать лог.
  • с файлами работает нормально, проблем не заметил
  • с сокетами не проверял, но работать должно, т.к. насколько я понимаю, 99% того, что есть в .Net, они поддерживают (а System.Net.Socket это как раз .Net)
  • по сравнению с нативным .Net, моно почти всегда тормоз. не то, чтобы совсем намного, но заметно невооруженным глазом: то тут на секунду подольше, то там... хотя, я тестировал WinForms-приложение, возможно в варианте с сервером на сокетах будет получше

Вообще, моно мне понравилась. По сути, берешь любую скомпиленное в Windows .Net-приложение, копируешь его в линукс, запускаешь "mono MyApplication.exe", вуаля. Это очень здорово.

P.S. Табличка совместимости mono с .Net Framework, весьма полезная: http://www.mono-project.com/Compatibility
omlin
 
Posts: 218
Joined: Tue Mar 24, 2009 6:20 pm

Re: Вас же много, кто-нибудь mono пробовал :) ?

Postby KadVar » Mon Aug 27, 2012 11:59 am

Ага... т.е. в принципе пригоден под наши цели.
KadVar
Site Admin
 
Posts: 1416
Joined: Fri May 16, 2008 4:14 pm

Re: Вас же много, кто-нибудь mono пробовал :) ?

Postby omlin » Mon Aug 27, 2012 12:13 pm

В целом наверное да, но есть нюансы.

Именно мад требует очень серьезной производительности, и как видно из моих тестов, иногда моно заметно проигрывает нейтивному .Net-у по скорости.
Т.е. если что-то писать, то писать аккуратно, выверяя и постоянно тестируя.

Кстати, еще один интересный факт: моно не везде одинаков.
К сожалению, мои исследования относятся конкретно к WinForms, и я не могу утверждать, что это так для других частей .Net FrameWork, но всё-таки факты показательны.
А факты таковы:
  • То что работало в Windows (т.е. запускаешь ехе-шник через "mono MyApplication.exe" в Windows), не работало в Ubuntu
  • То что работало в Ubuntu, не работало в Windows
  • То что работало и в Ubuntu, и в Windows, не работало в Mac OS

Т.е. если хочется получить нормальное приложение, пригодное для современных Linux-хостингов, нужно тестировать как минимум на FreeBSD - т.к. FreeBSD на хостингах всё-таки подавляющее большинство.
omlin
 
Posts: 218
Joined: Tue Mar 24, 2009 6:20 pm

Re: Вас же много, кто-нибудь mono пробовал :) ?

Postby KadVar » Mon Aug 27, 2012 6:17 pm

omlin wrote:В целом наверное да, но есть нюансы.

Именно мад требует очень серьезной производительности, и как видно из моих тестов, иногда моно заметно проигрывает нейтивному .Net-у по скорости.
Т.е. если что-то писать, то писать аккуратно, выверяя и постоянно тестируя.

Это... с какого бодуна :) ?
Он никогда не требовал производительности. Вообще.
Ну т.е. LA на любой машине всегда <0.1
При любом онлайне.
У вас другие данные ? Чертовски интересно было бы.

omlin wrote:Кстати, еще один интересный факт: моно не везде одинаков.
К сожалению, мои исследования относятся конкретно к WinForms, и я не могу утверждать, что это так для других частей .Net FrameWork, но всё-таки факты показательны.
А факты таковы:
  • То что работало в Windows (т.е. запускаешь ехе-шник через "mono MyApplication.exe" в Windows), не работало в Ubuntu
  • То что работало в Ubuntu, не работало в Windows
  • То что работало и в Ubuntu, и в Windows, не работало в Mac OS

Т.е. если хочется получить нормальное приложение, пригодное для современных Linux-хостингов, нужно тестировать как минимум на FreeBSD - т.к. FreeBSD на хостингах всё-таки подавляющее большинство.


Да тут яб не огорчался вообще.
При текущей ситуации с мадами можно хоть жестко забить целевую систему.
Ничего страшного не будет. Те 1 (или две) копии найдут где запустить.
Находим же 32 битные системы :)
KadVar
Site Admin
 
Posts: 1416
Joined: Fri May 16, 2008 4:14 pm

Next

Return to Место встречи Кодеров

Who is online

Users browsing this forum: No registered users

cron