Fork me on GitHub
#clojure-italy
<
2017-05-29
>
mdallastella07:05:01

Giorno ragazzi. Stiamo sviluppando una web app composta da 1 backend e 3 interfacce diverse. Ora, vorremmo separare i progetti, avendone uno per tipo. Qualcuno ha avuto qualche esperienza in merito?

reborg08:05:41

Non specifica... tendo a preferire progetti che vivono all'interno della stessa root-folder. Se devono produrre jar indipendenti, puoi dare un occhio a https://github.com/ring-clojure/ring per esempio, che usa sub-project in leiningen

mdallastella08:05:28

Terrò il progetto unico, il mio "dubbio" è che preferirei che fosse un proxy (nginx ad esempio) a doversi occupare di servire i file statici, ad esempio, piuttosto che l'uberjar

mdallastella08:05:40

anche perché sistematicamente parlando, tenendo il backend separato, posso scalarlo più facilmente, credo (più istanze su server diversi con nginx che fa da load balancer)

mdallastella08:05:46

ma magari sono pippe mie

reborg08:05:25

Ah capito cosa intendi. Siete AWS?

reborg08:05:39

Noi si fa di solito route53+alb. La parte web vive su 1 o piu' docker-ecs-tasks e comunica con un backend via rest-api che scala indipendentemente.

reborg08:05:13

Le risorse statiche sono su S3 (credo) (no senza il credo)

mdallastella09:05:19

Got it, grazie

reborg09:05:00

Facci sapere come lo risolvi alla fine...

reborg09:05:03

Ad es, cosi' su 2 piedi non saprei come deployare al meglio SPA clojurescript ma mi interesserebbe capirlo

skuro09:05:27

noi abbiamo un’architettura piu’ o meno rilevante, con un frontend servito da S3+CloudFront e backend in clojure (simil-microservices con ~7 app clojure deployate su ECS)

skuro09:05:14

per il momento, visto che le varie app condividono un boato di codice abbiamo tutto su un singolo codebase / progetto lein con feature flags che stabiliscono quali parti sono attive e quali no

reborg14:05:42

(get [1 2 3 4] 9223372036854775808) 👀

manuel14:05:59

notevole...

reborg17:05:25

aggiunte un paio e spedito il tutto in mailing list