Low-code- и no-code-решения привлекают своей простотой, вроде как устраняющей нужду в отладке, трассировке, профилировании и других инструментах «классического» программирования. Но в масштабах реальных промышленных проектов без них оказывается трудно, ведь иначе как понять, что делает та или иная low-code-конструкция под капотом? И, что особенно важно, как она ведет себя под нагрузкой?
В докладе мы посмотрим на имплементацию этих функций на примере российской IoT-платформы AggreGate, где встроенный язык выражений был наделен средствами трассировки и визуализации, позволяющими low-code-разработчикам видеть ход и результаты выполнения их команд на всех этапах от редактора до production. Особый акцент сделаем на производительности:
построение/слияние/кэширование деревьев разбора, ленивая загрузка результатов, троттлинг вычислений — словом, все, что позволяет сохранить сервер живым, а отладку — пригодной даже при сотнях тысяч RPS.