www.mudconnector.su
https://forum.mudconnector.su/

Вас же много, кто-нибудь mono пробовал :) ?
https://forum.mudconnector.su/viewtopic.php?f=14&t=168
Страница 1 из 2

Автор:  KadVar [ Пт июн 18, 2010 12:39 pm ]
Заголовок сообщения:  Вас же много, кто-нибудь mono пробовал :) ?

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

Посмотрел чуток исходники, кое что поразило, и довольно неприятно.
Но надо еще покопать, возможно всё не так плохо, как видится :).
В "бою" не пробовал, задач не было.

Автор:  KadVar [ Вт авг 24, 2010 5:31 pm ]
Заголовок сообщения:  Re: Вас же много, кто-нибудь mono пробовал :) ?

Собственно для начала прикинем список того, что стоило бы протестировать.
1. TCP-IP и реализацию телнетов, возможно с компрессией, как альтернатива посмотреть может на базе ssh есть что
2. скриптовые языки, тут яб брал луа
3. работа с бд, файлами
4. размер всего этого в ОЗУ

Автор:  omlin [ Вт авг 24, 2010 5:34 pm ]
Заголовок сообщения:  Re: Вас же много, кто-нибудь mono пробовал :) ?

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

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

Автор:  KadVar [ Вт авг 24, 2010 5:55 pm ]
Заголовок сообщения:  Re: Вас же много, кто-нибудь mono пробовал :) ?

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

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


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

Но если есть что-то готовое, полуготовое, то лучше, конечно, его.

Автор:  omlin [ Вт авг 24, 2010 6:31 pm ]
Заголовок сообщения:  Re: Вас же много, кто-нибудь mono пробовал :) ?

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

Автор:  KadVar [ Ср авг 25, 2010 2:59 pm ]
Заголовок сообщения:  Re: Вас же много, кто-нибудь mono пробовал :) ?

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

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

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

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

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

о
+ в проверку
что там с дебагом ? с дампами итп

Автор:  omlin [ Вс авг 26, 2012 3:04 am ]
Заголовок сообщения:  Re: Вас же много, кто-нибудь mono пробовал :) ?

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

  • 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

Автор:  KadVar [ Пн авг 27, 2012 11:59 am ]
Заголовок сообщения:  Re: Вас же много, кто-нибудь mono пробовал :) ?

Ага... т.е. в принципе пригоден под наши цели.

Автор:  omlin [ Пн авг 27, 2012 12:13 pm ]
Заголовок сообщения:  Re: Вас же много, кто-нибудь mono пробовал :) ?

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

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

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

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

Автор:  KadVar [ Пн авг 27, 2012 6:17 pm ]
Заголовок сообщения:  Re: Вас же много, кто-нибудь mono пробовал :) ?

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

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

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

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

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


Да тут яб не огорчался вообще.
При текущей ситуации с мадами можно хоть жестко забить целевую систему.
Ничего страшного не будет. Те 1 (или две) копии найдут где запустить.
Находим же 32 битные системы :)

Страница 1 из 2 Часовой пояс: UTC + 3 часа [ Летнее время ]
Powered by phpBB® Forum Software © phpBB Group
http://www.phpbb.com/