LINUX.ORG.RU

Crystal для REST серисов

 , , ,


0

2

Коллеги, добрый день!

Интересует сабж. На сколько пригоден для написания API, в чём оно лучше D/Vibe.d для этого же. Аналогично про Elixir/Phoenix.

Как по производительности? Как по удобству?

Суть проекта - масса большая микросервисов, которые проксируются NodeJS/Moleculer в последствии.

Я знаю контору, которая пару лет назад внедряла crystal экпериментально, но потом отказались из-за проблем с GC. Еще там очень медленная компиляция. Это уже на хеловордах ощущается, и много жалоб читал именно на этот аспект. Ну и язык по-прежнему далек от версии 1 со всеми вытекающими. Сообщество крошечное и предпосылок к росту не видно.

В общем, риски высоки. А так язык приятный, пишется легко и быстро. Фреймворки мне правда совсем не понравились: amber это такой зародыш рельсов т.е. жирный монолит из прошлого века; kemal - синатра на минималках; lucky очень своеобразный и замороченный на типобезопасности и ООП, но пожалуй самый живой из всех. В принципе можно и без фреймворка. Раз уж такая маргинальщина, то в самый раз велосипедить.

bread ()
Ответ на: комментарий от anonymous

Да ладно, когда кульхацеры дрюкнут вашу пони, босс заставит тебя переписать всё на жаву, а потом выпишет волчий билет. Маргинальщиной баловаться можно только если ты сам себе босс.

anonymous ()

Crystal довольно приятный язык программирования, особенно если вы знакомы с синтаксисом Ruby. В последние версии завезли параллелизм. Из недостатков это медленная компиляцию, хотя для микросервисив это не должно быть проблемой. С веб-фреймворков можно взять Kemal (https://github.com/kemalcr/kemal), или его форк grip (https://github.com/grkek/grip), который модульный и ориентирован на работу с JSON. Есть пара вменяемых ORM, если вам нужна работа с базой данных.

mamantoha ()

Знаешь, руби даже выгоднее смотрится. Пока во всяком случае. Для руби есть roda, sequel, dry-rb стек и еще тьма обкатанных гемов. С кристалом можно только на стдлибу полагаться, остальное все сырое и сомнительное. С производительностью тоже не все так однозначно. Вот посмотри как кристал проваливает работу с БД. Результаты хуже чем у рубиновых микрофреймворков на пуме. Компиляция это тоже адок. Особенно если работаешь с шаблонами, которые безальтернативно вкомпиливаются в бинарь. Поправил шаблон -> пересобирай весь проект. Еще нет репла, это тоже очень неудобно.

anonymous ()