Comments 4
Lua считается достаточно простым в написании языком программирования. Но это не совсем так: Lua один из немногих языков, у которых пакет — метатаблица, класс — метатаблица.
Lua является очень простым в написании языком, но при этом весьма выразительным. А значит, выразить можно и всякие сложные запутанные штуки. Можно, например, понасоздавать неэффективные копии привычных игрушек из других языков.
Lua используется нечасто, поэтому специалисты с достаточной экспертизой в работе с Lua — редкость. Соответственно, чтобы начать работать с Tarantool, команде надо учить новый язык, а это время и деньги.
Сам по себе Lua очень прост, так что времени и денег требуется кратно меньше.
А вот что, на мой взгляд, было упущено, так это его безальтернативная однопоточность. Как мне представляется, в данном контексте это может оказаться куда более веской причиной для перехода на другой язык, тем более Go.
EmmyLua это плагин для IDEA, причем здесь отладка? Он лишь умеет работать с MobDebug, который должен быть на стороне исполняющегося кода (причем IDE в данном случае будет сервером, к которому должно подключиться отлаживаемое приложение)
Масштабирование бывает двух видов: горизонтальное и вертикальное. Горизонтальное также делится на два типа:
репликация, которая отвечает за масштабирование вычислений;
шардинг, который используется для масштабирования данных.
Оригинальное определение репликации и шардингу.
Репликация - это несколько серверов, работающих над одними и теми же данным. Если что и масштабируется что, то только операции чтения. Но зато повышается отказоустойчивость.
Шардинг - разделение данных по разным серверам. Да, данные масштабируются, но и операции чтения/записи тоже масштабируются. Отказоустойчивость если и повышается, то только в виде "стали недоступны не все данные, а только часть".
Очень интересная статья
Минус Lua, плюс перформанс: как толстый клиент на Go сделал работу с Tarantool эффективнее