This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2018-11-28
Channels
- # announcements (1)
- # beginners (205)
- # calva (30)
- # cider (5)
- # cljdoc (25)
- # cljs-dev (2)
- # clojure (119)
- # clojure-brasil (5)
- # clojure-conj (7)
- # clojure-europe (2)
- # clojure-hamburg (7)
- # clojure-italy (14)
- # clojure-nl (2)
- # clojure-russia (13)
- # clojure-spec (79)
- # clojure-uk (58)
- # clojurescript (54)
- # core-logic (2)
- # core-matrix (2)
- # cursive (40)
- # datascript (2)
- # datomic (18)
- # duct (2)
- # emacs (14)
- # figwheel (3)
- # figwheel-main (7)
- # fulcro (30)
- # funcool (1)
- # graphql (10)
- # jobs (1)
- # juxt (13)
- # lumo (1)
- # mount (1)
- # off-topic (56)
- # other-languages (2)
- # pedestal (17)
- # powderkeg (2)
- # protorepl (2)
- # re-frame (10)
- # reagent (1)
- # reitit (7)
- # ring-swagger (10)
- # schema (2)
- # shadow-cljs (70)
- # spacemacs (13)
- # specter (4)
- # sql (9)
- # tools-deps (26)
A кто-нибудь знает, зачем в datomic сделали client api? * Недавно они сделали Datomic Cloud и Client API в дополнение к Peer API. Client ходит по сети в пир и выполняет там запрос. Peer же хранит данные в памяти и лениво их подгружает. При этом Cloud поддерживает только Client API. У Peer есть Entity API, который позволяет ходить по связям и избегать проблему N+1. А для Client такое апи невозможно сделать by design. Зачем они сделали Client? Ведь основной фишкой датомика был именно Peer, ленивая загрузка и решение N+1проблемы. А сейчас это условный Postgres, только с datalog вместо SQL.
N+1 никуда не девается, просто уходит константа на коммуникацию, которая как раз и стреляет обычно. в Ions используя pull, этой константы тоже не будет. а on-prem есть entity-api и pull тоже работает хорошо. страдают только “клиенты“, но про них замечание ниже
entity-api убрали из ионов только потому, что этот же код может запускаться в контексте клиента (на твоей машине например)
Я не разбирался про ионы и клиенты. Я правильно понял, что если это ion, то приложени использует api как у client, но запускается внутри ion (peer)? И не меняя код, можно подцепиться снаружи для отлади/разработки.
@kuzmin_m Для микросервисов и лямбд, которые живут настолько мало, что в них нет смысла загружать кусками данные.
приветствую!
можно ли в макрос cljs.spec.alpha/cat
передать список. То есть мне нужно сделать что-то типа такого
(apply cljs.spec.alpha/cat '(:props ::props-spec))
, но так так cat
это макрос, я так сделать не могу
@y.khmelevskii https://stackoverflow.com/questions/9273333/in-clojure-how-to-apply-a-macro-to-a-list
@dottedmag спасибо!