
Andrey
25.12.2017
20:07:37

Nikolay
25.12.2017
20:08:33

Andrey
25.12.2017
20:08:43
не стоит оно того

Nikolay
25.12.2017
20:08:58

Google

Александр
25.12.2017
20:08:58
А какие сложные абстракции то? Если тебе по бизнес логике надо будет смешать данные с разных сервисов, то ты это будешь делать в любом случае, и graphql тут не при чем

Nikolay
25.12.2017
20:09:20

Александр
25.12.2017
20:09:44
но в graphql это будет сделать значительно проще

Nikolay
25.12.2017
20:09:50
просто graphql в этой ситуации еще и накладывает на тебя ненужные ограничения

Александр
25.12.2017
20:10:07
чем?
и какие ограничения накладывает graphql?

Nikolay
25.12.2017
20:10:44
чем?
ты что, серьезно не видишь разницу между "сделай, чтобы минимально работало" и "сделай строго по стандарту с поддержкой вложенных сущностей"?

Александр
25.12.2017
20:11:06
так можно же не делать поддержку вложенных сущностей:) кто заставляет то
можно так же сделать минимально

Nikolay
25.12.2017
20:11:30
уже есть REST

Александр
25.12.2017
20:11:55
REST - прошлое

Google

Александр
25.12.2017
20:12:03
json-rpc v2.0 хотя бы уж

Nikolay
25.12.2017
20:12:39

Александр
25.12.2017
20:12:40
REST хорошо ложится на CRUD операции, спору нет, но бизнес-логика обычно гораздо сложнее

Nikolay
25.12.2017
20:12:49
JSON-прошлое, давайте везде юзать TOML!
HTTP/1 - прошлое, даешь везде HTTP/2!

Demuz
25.12.2017
20:13:17

Andrey
25.12.2017
20:13:26
давайте сразу передавать бинарники

Nikolay
25.12.2017
20:13:39
а то придумали какие-то браузеры, тоже мне

Вячеслав
25.12.2017
20:13:55
Голуби.

Andrey
25.12.2017
20:14:00
ну да, раньше было лучше )

Александр
25.12.2017
20:14:16
ну, вы по существу чего-то ничего сказать не можете, к сожалению, так не интересно:)

Nikolay
25.12.2017
20:14:23
кстати, угадайте с трех раз, какой канал передачи информации самый быстрый в мире?

Александр
25.12.2017
20:14:36
UDP

Nikolay
25.12.2017
20:14:39

Andrey
25.12.2017
20:14:59

Zikoi5
25.12.2017
20:15:15
mysql socket?

Nikolay
25.12.2017
20:16:31

Александр
25.12.2017
20:16:40

Google

Александр
25.12.2017
20:16:58
если нужно что-то мелкое - тут даже REST лишний

Aleserche
25.12.2017
20:17:10
Тут про канал, а не протокол

Nikolay
25.12.2017
20:17:10

Zikoi5
25.12.2017
20:19:06

Andrey
25.12.2017
20:19:53
это еще что нашел
Возможно, самая большая проблема при использовании GraphQL – так называемые N+1 SQL-запросы. В GraphQL поля запроса реализованы как обычные функции, отправляющие запросы к базе данных. Чтобы заполнить все поля данными, может потребоваться новый SQL-запрос на каждое поле.
Facebook одним из первых предложил решение этой проблемы – DataLoader.
это еще +1 оверхед

Nikolay
25.12.2017
20:21:10
и какой же?
член. Передача генетической информации размером около 1600 Гб за 2.5-3 секунды

Артем
25.12.2017
20:22:03
забавно, что язык запросов противопоставляется архитектурному паттерну...

Aleksandr
25.12.2017
20:22:16
Откуда 1600гб? Вы не переоценили свои возможности?

Zikoi5
25.12.2017
20:22:24
facepalm, я думал щас что то новенкое по ит узнаю

Артем
25.12.2017
20:22:35
странно, что тут не звучат лозунги "Go лучше чем Mysql!"

Nikolay
25.12.2017
20:22:43

Nick
25.12.2017
20:22:44
@Enchantner Давай на примерах, у тебя есть Client и я хочу посмотреть его Orders как бы ты это сделал)

Andrey
25.12.2017
20:22:57

Aleserche
25.12.2017
20:22:59
Передача информации, обработка и т.п. не про ит

Nikolay
25.12.2017
20:23:02

Nick
25.12.2017
20:24:32

Aleksandr
25.12.2017
20:24:45
там на деле больше даже
А моск включить? То, что канал ненадёжен и информацию приходится много раз дублировать, ещё не значит, что информации становится больше. 37,5 Мб — все, на что ты способен. Да и то все пакеты могут потеряйся.

Google

Nikolay
25.12.2017
20:25:07

Nick
25.12.2017
20:25:43

Nikolay
25.12.2017
20:26:04

Nick
25.12.2017
20:27:37

Aleserche
25.12.2017
20:28:08
И как они связаны?

Aleksandr
25.12.2017
20:28:17

Nikolay
25.12.2017
20:28:50

Nick
25.12.2017
20:28:59

Nikolay
25.12.2017
20:29:41

Admin
ERROR: S client not available

Nikolay
25.12.2017
20:30:11
я знаю, сейчас ты досыпешь новых условий в задачу
но изначальную этот запрос полностью решает

Aleksandr
25.12.2017
20:30:44

Nick
25.12.2017
20:30:45
естественно

Nikolay
25.12.2017
20:31:28
но информация не является битой в этом случае, если она успешно передается и обрабатывается

Nick
25.12.2017
20:31:57

Aleksandr
25.12.2017
20:32:07

Google

Nikolay
25.12.2017
20:32:21
с точки зрения IT это плохо, да, с точки зрения биологии - оно так и работает

Aleserche
25.12.2017
20:33:20

Nikolay
25.12.2017
20:33:24
есть вариантов пять разных

Nick
25.12.2017
20:33:25

Nikolay
25.12.2017
20:33:50
например, денормализуем и включаем производителя в сам заказ
твою задачу это решит

Nick
25.12.2017
20:34:50
приходит еще один клиент,который хочет видеть другую морду и другие данные Manufacturer'а
что делаем? дальше денормолизируем?

Nikolay
25.12.2017
20:35:09
и в чем отличие морды?

Nick
25.12.2017
20:35:34
ну к примеру полный адрес его с фиасами

Nikolay
25.12.2017
20:36:03

Nick
25.12.2017
20:36:10
вернемся к вопросу, давай другой вариант помимо денормолизации

Nikolay
25.12.2017
20:37:46
естественно
и в чем проблема? опять куча вариантов, например, делаешь хэндлер потипу /clients/123/order_manufacturer_full, где возвращаешь более подробную сущность. Либо разрешаешь делать /clients/123/orders/?manufacturer_fields=address

Aleserche
25.12.2017
20:38:05
А в чем проблема-то? Если использовать nosql, то выборки простые

Nikolay
25.12.2017
20:38:13
есть много вариантов, исходя из логики можно выбрать тот, который лучше подходит

Nick
25.12.2017
20:38:30

Nikolay
25.12.2017
20:38:35