Я понял, что NGINX написан на C и имеет плагин lua, который позволяет встраивать в него код lua. OpenResty - это фреймворк, который расширяет это и обеспечивает большую поддержку Lua по сравнению с NGINX. Kong - это конкретное приложение OpenResty. Поэтому, когда мы публикуем новые службы, потребители и т. Д. Все конвертируются в шаблон lua, который компилируется LuaJIT. И если да, значит ли это, что каждый раз, когда я добавляю службу, мой файл nginx.conf перестраивается? Или это что-то вроде того, что при каждом запросе база данных конфигурации kong (или yaml) запрашивается для получения зависимой конечной точки (это было бы очень медленно)? или что-то совсем другое?
Как Kong работает над NGINX и OpenResty
Ответы (1)
Весь смысл встроенного в nginx языка сценариев, такого как Lua, заключается в том, что вы можете изменять его поведение на лету, не перезагружая всю конфигурацию. Я не знаю, как именно kong обрабатывает вещи, но вы можете просто загрузить новый код Lua во время выполнения, хотя в большинстве случаев этого будет достаточно, чтобы изменить некоторые данные, которые затем код Lua обрабатывает предопределенным образом.
person
DarkWiiPlayer
schedule
27.05.2020
Значит, с Lua можно частично перезагрузить двоичные файлы? Это противоположно тому, чтобы построить все заново, но получить разницу только в небольшой части.
- person Aayush Agarwal; 27.05.2020
Бинарный файл nginx остается прежним; единственное, что меняется, это код Lua
- person DarkWiiPlayer; 28.05.2020