Рейтинг темы:
  • 0 Голос(ов) - 0 в среднем
  • 1
  • 2
  • 3
  • 4
  • 5
Python/Lua etc.
#1
Привет всем, собственно говоря - я хотел поинтересоваться вопросом, для чего используют в дополнительных компилируемых скриптах, допустим, используют язык отличный от основного, допустим как C# + Lua (тобишь, основной C# а скриптовый - Lua), или питон, это как-то влияет на производительность? или что-то еще? Просто допустим я пишу Blade & Soul эмулятор, и как многие использую скрипты, но пишу их же на основном языке и никаких проблем с производительностью не возникает, все быстро, красиво и четко работает.
Хотел бы услышать ваше мнение на этот счет,И в надежде ответы на главные вопросы Wink
Спасибо за внимание.
Ответ
#2
возможность оставить скрипты не скомпилиные, а в исходном коде...
Ето по моему мнению...
Ответ
#3
Самое главное - дать другим писать дополнительный контент без повторной компиляции основного сервера.
Ответ
#4
Это очень спорное утверждение (если говорить о L2-разработках) - связанность кода настолько высока, что вся задумка теряет смысл. Банальный пример - какого черта конфиги хранятся в ядре, а пользуются в скриптах? То есть все эти размышления на тему динамичности - вопрос очень спорный. Мне очень интересно узнать статистику сколько людей пользуются этой псевдо-динамичностью на продакшене. Подозреваю, что их количество не больше 5%. Дальше больше - что произойдет в момент перезагрузки? Да много там вопросов. До кучи еще один бонус - все грузится в отдельный ClassLoader, это может стать большой занозой.

Но тема все же не о L2 Smile Есть смысл делать какие-то атомарные (в общем понимании) операции на скриптах. Пример из жизни - есть массив данных, количество записей 200+ миллионов записей, все в реляционной базе. У каждой записи есть от 1 до N (где N не ограничено сверху) параметров, в т.ч. динамических. Можно хранить в таблице key-value, но это на таком объеме будет огромной проблемой. В итоге заюзаны динамически вычисляемые переменные - небольшой groovy-скрипт, который решает вопрос.

Еще один пример - BP. Очень удачно концепция ложится на скрипты. Или, допустим, случай, когда что-то нужно оперативно поправить в Runtime, но через API функционал не доступен из-вне. Простенький Script Runner и вперед - особенно хорошо работает, если есть IoC контейнер, тогда в скрипте нужен только контекст и дело в шляпе. В общем, из реальных задач есть интересные примеры, но то, что в Л2 наворотили - очень сомнительно в плане профита.
Ответ
#5
ProDev Написал:Это очень спорное утверждение (если говорить о L2-разработках) - связанность кода настолько высока, что вся задумка теряет смысл. Банальный пример - какого черта конфиги хранятся в ядре, а пользуются в скриптах? То есть все эти размышления на тему динамичности - вопрос очень спорный. Мне очень интересно узнать статистику сколько людей пользуются этой псевдо-динамичностью на продакшене. Подозреваю, что их количество не больше 5%. Дальше больше - что произойдет в момент перезагрузки? Да много там вопросов. До кучи еще один бонус - все грузится в отдельный ClassLoader, это может стать большой занозой.

Но тема все же не о L2 Smile Есть смысл делать какие-то атомарные (в общем понимании) операции на скриптах. Пример из жизни - есть массив данных, количество записей 200+ миллионов записей, все в реляционной базе. У каждой записи есть от 1 до N (где N не ограничено сверху) параметров, в т.ч. динамических. Можно хранить в таблице key-value, но это на таком объеме будет огромной проблемой. В итоге заюзаны динамически вычисляемые переменные - небольшой groovy-скрипт, который решает вопрос.

Еще один пример - BP. Очень удачно концепция ложится на скрипты. Или, допустим, случай, когда что-то нужно оперативно поправить в Runtime, но через API функционал не доступен из-вне. Простенький Script Runner и вперед - особенно хорошо работает, если есть IoC контейнер, тогда в скрипте нужен только контекст и дело в шляпе. В общем, из реальных задач есть интересные примеры, но то, что в Л2 наворотили - очень сомнительно в плане профита.
ага, спасибо, Я понял, спасибо большое :3
Ответ
#6
hardtendo Написал:ага, спасибо, Я понял, спасибо большое :3
Что ты понял такеша ? =)
Ответ
#7
xTz Написал:Что ты понял такеша ? =)
O.o что это за бред? типа выкидыш агрессивности в мою сторону?
Ответ


Возможно похожие темы ...
Тема Автор Ответы Просмотры Последний пост
  Наемник в среде программирования Pascal Basic Perl PHP Html Kotlin js c++ c# python web razrab Argyment 1 947 01-27-2023, 12:45 PM
Последний пост: Argyment
  Python, не выполняется запрос к MySQL goodoker 0 1,159 04-21-2013, 03:44 PM
Последний пост: goodoker
  "Прекомпиляция" python Azagthtot 3 2,415 01-13-2012, 07:43 AM
Последний пост: n3k0nation

Перейти к форуму:


Пользователи, просматривающие эту тему: 4 Гость(ей)