Snusmumriken
Это бытовое применение редиски супер-простое.
Highly Likely
Highly Likely
Это уже скорее how-to
Highly Likely
Или best practice
Snusmumriken
Ну, учебник по луа это типа тоже в значительной мере how to.
Highly Likely
Мм, ну процентов на 40 может быть
Snusmumriken
Ну вот. А тут — объясняем как именно работает редиска и тут же напихиваем 80% how to and why, тоже отличный материал для учебника.
halt
Snusmumriken
Это бытовое применение редиски супер-простое.
Ну и скажем откровенно, есть куча людей которые покупают учебник для того чтобы стать мегапрофессионалом в области и заработать кучу денег на Своих Знаниях, поэтому иногда достаточно графомански капитанить и перерисовывать доку "на волне хайпа", чтобы подзаработать : )
Maxim
Я смотрел дебаг в консоле. Данных в таблице при новом запросе нет
debug в консоле это когда openresty собран c режимом --debug? не проще ли по шагам тыкать кнопку и мониторить выполение пошагово, в консольке вы чиатете отчет в крайне неудачном формате и тратите время на чтение скузных логов, а не на более полезные вещи и занятия
Anonymous
У него фрисвич
Snusmumriken
Тут не OpenResty, здесь FreeSwitch.
Snusmumriken
Да.
Maxim
а freeswitch тоже ведь имеет вкрапление lua ? и там так же подключаются файлы и либы lua ? верно? тогда что OpenResty что фрисвитч, дэбаг будет отличаться только разными названиями вебсервера в которых выполняется LUA
Snusmumriken
Это просто другой сервер, не веб (это телефония, помнится). Так что логировать можно тупо в файл, например. Брейкпоинты не особо нужны, не надо ничего усложнять.
Snusmumriken
Пущай товарищ сначала разберётся с простыми методами отладки, хоть print'ы.
halt
Да, FS имеет вкрапление Lua) Отладку я делал пошагово, смотрел что возвращается к консоль FS. Это то я умею)
halt
И FreeSwitch да, это телефония
halt
print`ы там не получатся. Если скрипт запустить вручную, то там не будет переменных. Можно конечно их отправить, но зачем? Пусть FS его запускает, а инфу я буду видеть в его консоли
Snusmumriken
Ну кароч разберёшься : )
Snusmumriken
Редиска-то есть? Сама база
halt
Да, стоит
halt
Но из Lua я её ещё ни разу не дергал
Snusmumriken
Цапани либу типа https://github.com/nrk/redis-lua
Snusmumriken
Надеюсь у тебя во фрисвитче есть сокеты : )
halt
Ох... не нужно про них)) Я их и пытаюсь освоить
halt
Если речь о ESL
Snusmumriken
Нене, прост для соединения с редиской эта либа использует luasocket
halt
Не знаю. Сегодня у меня уже голова не варит. Завтра попробую
halt
Highly Likely
Pavel
Highly Likely
https://github.com/openresty/lua-resty-lrucache
Highly Likely
https://github.com/thibaultcha/lua-resty-mlcache
Highly Likely
Ну способ тот же, абстракции разные :)
Highly Likely
Это под Рести, но вероятно можно поискать и под другое (сорри, не вчитывался)
Pavel
Ну так ngx. Shared умеет в ttl и lru
Pavel
Я в этом не шарю
Вбей в гугле ngx.shared
Там простой синтаксис и настраивать не надо ничего
halt
Спасибо. Посмотрю
Pavel
Anonymous
Если есть сокеты
Snusmumriken
Snusmumriken
И про сокеты я тоже говорил )))
Snusmumriken
Блин, какой я болтливый.
Anonymous
Если нельзя свои либы но есть хттп клиент можно каучдб поднять
Anonymous
Интересно живо ли оно еще
Snusmumriken
Можно и написать луёвый скриптик в консольке, который принимает хттп-запросы а ля "запомни эту фигню" и "дай мне эту фигню" с тем же успехом.
Snusmumriken
Если вообще нет сокетов и какого либо доступа к другим приложениям, можно использовать обычный файл, хоть и слегка медленнее. Сериализовать в него табличку, и десериализовать (serpent'ом, например).
Snusmumriken
Если из луа вырезали даже io-функции — страдать :<
Хотя если остался os.execute — можно написать луёвый скриптик который делает всю работу за это приложение, и делает что угодно. В своё время успел намутить что-то типа пайп:
bash: dir > luajit /pipe.lua -i (и начинаем слать данные в stdinput, и точно так же читать но уже с флагом -o)
Карочи, нужна хоть какая-то коммуникация хоть с чем-нибудь, и всё будет.
Roman
А пробовал кто raptorjit?
Snusmumriken
Хм, тот же луажыт но порезанный и с парой фич. Я бы дождался нормального гц от Майка Пола, и уже форкал бы, типа того %)
Highly Likely
От Ыпонвеба, от Ыпонвеба!
Snusmumriken
Кстати, юзерам openresty: не пытайтесь посылать чанки бинарных данных через ngx.say, оно вставляет лишние символы, только ngx.print.
Pavel
Serezha
Serezha
Описано в доках значит норм 🙂
Pavel
хорошо что документирвано. но на многие мелочи ты обращаешь внимание не сразу...
Serezha
Типа println в других языках
Maxim
и причем это единственная строчка в описании, без каких либо уточнений на что она может влиять и где лучше применять say в место print, но все приходит с опытом и debug'ером )
fgntfg
«Remote code execution vulnerability in most recent versions of the nginx web server. Pending responsible disclosure via Zero Day Initiative and the nginx team»
https://mobile.twitter.com/alisaesage/status/1134400428899127296
Pavel
Мда….А кто такая эта Алиса ? white hat?
fgntfg
Возможно. За что купил, за то продал.
Pavel
fgntfg
Ну не каждый день zeroday
Maxim
https://www.zerodayinitiative.com/advisories/upcoming/
И действительно nginx
Maxim
NM
Вилби
Вобщем ребят, я поизучал сферы применения Lua и Си. И понял что мне необходим сначала Си для микроконтроллеров, а потом можно Lua изучать. Но мне очень понравился Lua, очень прост. Я думаю я буду изучать два эти языка постепенно.
Highly Likely
Highly Likely
Lua написан на смеси C и C++
fgntfg
Lua няшечка
Mark ☢️
Highly Likely
Роберто вроде бы говорил о них