Press "Enter" to skip to content

GOTO 2017 • When should you use a Serverless Approach? • Paul Johnston


[Musica]
beh, grazie mille sono il tipo di
persona a cui piace camminare molto
quindi se mi vedi su diversi
bit e non essere sorpreso che ho anche ottenere
abbastanza eccitato da serverless
tecnologie che potrebbero essere un po ‘
strano all’interno di un’azienda tecnologica e tecnologica
situazione ma va bene un po ‘
su di me sono un CTO . Sono stato un
consulente CTO per molti anni e io
ha scelto di entrare in una società chiamata Mo vivo
che probabilmente non avrai ascoltato
del perché lavoriamo principalmente nel
mondo in via di sviluppo e in via di sviluppo
economie piuttosto che in Occidente
mondo quindi non parliamo davvero di cosa
noi facciamo ma abbiamo usato un servizio
approccio per 21 mesi ora così quasi due
anni e abbiamo utilizzato lambda AWS
e facendo un sacco di cose intorno a quelle
tecnologie per cercare di farle funzionare
come un back-end, mo vivo è in realtà un
società tecnologica molto piccola quindi ce ne sono cinque
di noi al momento stiamo quasi per
scala fino a nove che stiamo cercando
varie persone diverse al momento
ma è abbastanza difficile perché tu
non posso davvero mettere su una descrizione del lavoro
stiamo assumendo per persone di servizio perché
in realtà non esistono ancora ma abbiamo
varie diverse distribuzioni di grandi dimensioni
principalmente su AWS lambda che è
seleziona quick quick aside abbiamo un ec2
istanza nel nostro intero stack e abbiamo avuto
mezzo milione di utenti mensili attivi negli ultimi
mese in modo che tipo di se si immagina che
non abbiamo il tipo di mondo normale
in cui vivi allora probabilmente sei
proprio quando abbiamo iniziato ho iniziato che lo era
Greenfield non c’era niente
lì in termini di servizio e il
progetto iniziato con un’app per Android e
e molte idee ma molto poco altro
e sono venuto a bordo e ho detto
bene, so che c’è questa tecnologia
chiamato AWS lambda e penso che lo sia
molto carino
e tutti gli altri erano gentili
guardando me andando io non so cosa
tu stai parlando di
non ha alcun senso per nessuno perché
non basta fare il modo normale si
conosci Django rota Heroku o qualcosa del genere
come quella
e noi genere di appena un’ordinazione semplice: in giro che per
circa un giorno prima che andassi voglio fare
a modo mio
ora solo per fare un rapido passaggio di nuovo ora
le tecnologie senza server è una specie di
termine catch-all per vari forniti
servizi basati su funzioni non è il
l’unica cosa è che non è solo lambda
ci sono molti altri modi per farlo
ma il mio contesto è lambda AWS perché
questo è quello che so che non è quello che dico
non ci sono modi migliori o diversi
modi di fare queste cose e differenti
approcci che potrebbero funzionare così tutto ciò che posso
fare è darti la mia esperienza e parlare
a tale proposito se vuoi andartene ora
questa è la mia risposta alla domanda che
è quando si dovrebbe usare il servizio
tecnologie e forse c’è un po ‘
un po ‘di te, potrei, ma penso
che se guardi l’idea di cosa
cloud nativo è ora e se si guarda
l’idea di come le persone si stanno evolvendo
il loro uso della tecnologia all’interno delle startup
e all’interno di organizzazioni più grandi e
dove stanno andando le cose penso che siamo tutti
vedremo cose come AWS
funzione lambda come servizio sulla
nei prossimi anni come dove siamo tutti
andando a finire penso che siamo ancora dentro
una sorta di fase pionieristica al momento
sembra che sia molto lontana ma è così
in realtà le cose possono essere fatte ora ma
ci sono alcuni problemi con esso, quindi cosa
Ho intenzione di fare con questo discorso è
spiegare quello che vedo come un approccio al servizio
potrebbe non essere ciò che si pensa che si tratta
potrebbe essere esattamente quello che pensi che io sia
non lo so ma ne parleremo
come appare l’approccio al servizio e
allora parleremo del
scenari in cui potresti e non potresti
usarla che tipo di venire alla fine e
sono come le ultime cinque diapositive così tu
Sappiamo ci arriveremo, ma abbiamo tipo di esigenza
per parlare un po ‘di
tecnologia perché è un termine
che nessuno lo capisce davvero quando
si inizia a guardare al servizio uno dei
le cose sono abbastanza ovvie
non hai server o fai lo stesso
è solo qualcun altro tranne te
sostituire l’ idea di un server e di
qualcosa con cui viene eseguito del codice
funziona come un servizio che è ciò che velocemente
significa e anche tu invece di avere
forse contenitori o istanze o o
utilizzando i database relazionali in realtà
invece usi intenzionalmente dei servizi
di esecuzione il proprio che è il tipo di
l’ intero scopo dei servizi a tipo di
rimuovere la necessità di gestire e
mantenere tutto e utilizzare le competenze
che esistono nei provider cloud e
ovunque e ci sono ci sono
vari altri elementi così spesso più recenti
stai guardando che è guidato dagli eventi
lambda è gestito da eventi e il suo tipo di
la chiave per far girare i sistemi lì nel
il primo posto quindi è un è un
interessante modo di pensare diverso
su di esso devi automaticamente pensare
distribuito è un approccio diverso a
facciamo funzionare questo codice in questa piccola scatola
e lo chiameremo due contenitori è a
modo diverso di pensare a questo proposito è
intrinsecamente più scalabile così bene è
intrinsecamente scalabile quanto il tuo cloud
il fornitore o il tuo sistema può permetterlo ma
è perché è distribuito e
perché è contenuto in diversi modi
in realtà finisci con uno più scalabile
sistema e quelli in basso in realtà
un bel piuttosto interessante in realtà
sono arrivato alla realizzazione probabilmente in
l’ ultima settimana o due che sta scendendo a
route senza server è più su ops che
si tratta di dev e in realtà hai bisogno
gli sviluppatori devono pensare molto più come le operazioni
il mondo DevOps di quanto tu ne abbia bisogno
essere sviluppatori in modo che in realtà cambia il
tipo di persone che si stanno avvicinando a questo
e il tipo di persone che dovresti
assumere questo tipo di progetti
e cambia anche il tuo focus nel
modo in cui devi avvicinarti al
problema e anch’io direi che è come me
penso di aver detto prima che sia il
il bordo sanguinante è davvero proprio al
bordo di essere ciò che chiameremmo nuvola
nativo che è dove penso che si adatta
per questo per questo discorso e per questo
traccia
Lo direi perché tu
so che mi piace pensare di essere sempre al
all’avanguardia ma non lo sono sempre ma
è dove stiamo andando come un nativo del cloud
raggruppa così uno degli altri modi che spiego
per le persone che cos’è il servizio è gentile
di cloud super avanzato sei in realtà
fondamentalmente tuffandoci dentro e andando siamo
useremo le funzioni che useremo
eventi e useremo tutti
unico servizio che possiamo evitare di dover
fare alcuni dei problemi operativi che abbiamo ora
che è una specie di come cerco di spiegare
alle persone che non sono così sicure e
ora potresti aver sentito parlare di qualcosa
chiamato il quadro di servizio alzi se
hai questo è interattivo c’è
otto di voi in realtà solo otto quanti
di voi avete sentito parlare del servizio
quadro dieci va bene così abbiamo tipo di avere
questo problema all’interno del servizio
la comunità che è lì è una cosa
chiamato un quadro di servizio che significa
che tutti quelli che cercano ci servono
pensa che sia il quadro dei servizi
non è non è l’ unico modo di fare
ce ne sono vari diversi
si avvicina a cose come l’ apice
ci sono cose varie altri bit I
in realtà ha scritto un post sul blog la scorsa settimana in
la scorsa settimana l’anno scorso in cui ho detto
il servizio è solo un nome che potremmo avere
lo chiamò Jeff e ad essere onesti
di solito ridi ma tu sei tutto
okay, il nome è solo un nome è giusto
uno sguardo da tenere a che non stiamo parlando
sul framework servizio qui siamo
parlando dell’approccio più ampio così io
Voglio essere in grado di dirti
tutte le volte in cui dovresti essere in grado
per usarlo in modo da non dover pensare troppo
difficile ma in realtà penso che non lo sarebbe
aiutarti perché il servizio sta andando
il servizio è un modo diverso di pensare
quindi ho bisogno di spiegare il
approccio entrare nel dettaglio e poi
darti lo sfondo e ciò che tu
può farcela, quindi questo è uno dei miei
diapositive preferite semplicemente perché dice
che i contenitori sono il senso che abbiamo usato
fai quello che abbiamo sempre guardato
allo stesso modo in cui sviluppiamo sistemi come
su un server a
un’entità che è solitamente una scatola Linux
qualche forma o è fisica o è
virtuale o c’è un’istanza all’interno di a
mazzo di altri all’interno di un server fisico
o o c’è qualcos’altro c’è a
cosa e sono tutti i server nel
stesso modo e e quel tipo di cause
alcuni problemi mentre stai andando avanti
pensi un po ‘di te
tipo di approccio a un problema con l’ idea
che hai un server lì ogni
una volta sola se lo fai davvero
il salto di servizio è abbastanza difficile
perché finisci per non avere il tuo
mente nel posto giusto finisci
costruire un piccolo server qui sopra
della tua funzione come servizio e
non è esattamente come dovrebbe funzionare e
tu devi capire il
tecnologie per usarli correttamente e
quello che abbiamo avuto negli ultimi 15 anni
anni è un gruppo di persone che spiegano
noi che in realtà la cosa migliore da fare è
costruire un quadro di qualche descrizione così
per il web era qualcosa come Django o
Rails e lo incolliamo sopra a
soluzione server quindi alla fine abbiamo ec2
istanze e poi Heroku è arrivato e
solo chuck il tuo codice qui e noi
tutto per te e noi tipo
non hanno davvero cambiato il modo in cui noi
approccio tranne che nelle startup di fascia alta e
situazioni a livello aziendale, quindi non c’è
in realtà casi piuttosto anomali il
maggior parte delle persone che si avvicinano alla tecnologia
approccio dal punto di vista di un
server è abbastanza importante
in realtà questa è la chiave perché è così
anche un problema che è che finisci
dovendo mantenere le cose finisci sempre
da qualche parte lungo la linea dovendo
mantenere un server e non è così tanto
divertimento, ho lavorato per un ISP 20 anni
fa e io ero un amministratore di sistema e posso dirlo
tu che quello che eravamo soliti fare
quindi in termini di patch server e
ordinare le cose e dover risolvere il problema
i problemi sono esattamente le stesse cose di noi
dobbiamo fare ora non abbiamo in realtà
cambiato molto abbiamo appena
ha mercificato il processo di farlo e
lo sappiamo esattamente quando dici che siamo
avrò 20 contenitori o qualunque cosa tu
sai esattamente cosa avrai
fare dentro
termini di funzionamento per mantenere quelli
in esecuzione per gestire la manutenzione del
sicurezza um quando si costruiscono anche questi
cose che anche tu stai guardando a
server che non conosci il sistema
è invariabilmente un pozzo monolitico che può
essere piccolo e monolitico ma è un
sistema monolitico perché il tuo test
processo va che costruiremo così
funziona in questo modo e quindi siamo solo
lo lascerò cadere in quest’altro
ambiente e dovrebbe funzionare
esattamente il modo in cui pensiamo e il problema
è che finisci con due cose e
è trincerato pensando che tu finisca
pensando le stesse cose e in realtà
guardi qualcosa di nuovo e vai bene
quello non può funzionare e quello deve essere
tipo di strappato via per ottenere persone
ovunque vicino al servizio, ma anche il
costo a lungo termine del funzionamento e della gestione
server è in realtà un bel po ‘
più in alto di quanto pensi la prossima volta che vai
torna al lavoro inizia a fare un piccolo registro di
quante delle cose che fai sono
in realtà le cose di manutenzione del server e
scoprirai che stai perdendo un
molto tempo non è necessariamente
che sono cose cattive è solo
identificato che fare la scelta per a
server in realtà può essere negativo in
a lungo termine, quindi quando vai verso
servizio si guarda come funzione
servizio che stai guardando all’infrastruttura
e infrastruttura come codice e cose
così e il tuo fornitore di cloud
fornendo sistemi e altri servizi no
solo i servizi del tuo provider cloud ma
servizi di terze parti quindi la registrazione potrebbe essere
ci sono alcuni servizi specializzati in
il tuo settore come la prevenzione delle frodi che
tipo di cosa e all’improvviso tu
finire con dover gestire questo
maggiore complessità e tu sei in realtà
molto più dipendente da quelli terzi
parti per la consegna del sistema
ora quando fondamentalmente metti il ​​tuo sistema
su una nuvola una delle cose se il
la nuvola scende se s3 scompare perché
non lo fa mai
se s3 scompare, si finisce con a
sistema dove all’improvviso il
effetto knock-on può significare che il tuo
il sistema va giù e non è così
quello che vuoi ma in realtà posso dirlo
tu che la maggior parte delle volte in cui ho
eseguire i server le cose vanno giù e molto orribile
più di quando va un fornitore di cloud
verso il basso in modo da fare è sorta di
preoccupati, ma la cosa sei tu
devi solo preoccuparti di sapere cosa
i tuoi utenti penseranno se
qualcosa va giù puoi fornire un
failover puoi pensare a questi tipi
di cose ma è che è una cosa
per ricordare e sono sempre tutto merito
la riduzione della manutenzione sono tutto
intorno a tutto sul totale a lungo termine
costo di proprietà del sistema ma
il servizio è ancora un modo molto nuovo di fare
e e so che ce ne sono molte
esitazione sto solo cercando di decidere
se ho bisogno di accelerare o rallentare
sta andando troppo lentamente o troppo velocemente
ok sì bene che tu sia buono buono bene va bene
mmm quindi il servizio è ancora molto nuovo è –
siamo nella fase pionieristica al
momento ci sono un sacco di noi che hanno
saltato su di loro su questo carro del servizio
e stanno facendo frammenti ma là
sono in realtà pochissime aziende
lì facendo qualcosa di questo è il perché
anche una piccola azienda come la nostra è un
interessante caso di studio per altre persone
e perché questa è la comunità
piccolo è per questo che stanno uscendo e
facendo tutti questi discorsi anche se
non stiamo cercando di venderti nulla
e la cosa è che in realtà il
i modelli non stanno emergendo, ma siamo ancora
non so esattamente come fare tutto
queste cose stiamo ancora indovinando noi
ancora parlando stiamo ancora suonando il
la comunità è pronta per essere plasmata da
persone che saltano dentro e provano
quindi ti sto solo consigliando di avere
un’occhiata e direi quella scala
è facile e difficile tutto in una volta finisci
con la capacità di andare così
molto rapidamente senza dover fare
qualsiasi cosa i nostri sistemi in fondo sono passati da
poche migliaia di utenti a cinquecento
migliaia di utenti senza davvero cambiare
qualsiasi cosa di base è andata e basta
questo perché il nostro servizio fornisce ma
allora dovremo anche gestire il
complessità dei sistemi e cioè a
problema Ho parlato con molti CEO
su questo ho avuto praticamente ogni
domanda che puoi immaginare non lo so
tutte le risposte abbastanza felici di avere un
dialogo con te ma in realtà il migliore
le domande vengono spesso da quei pionieri
se non stai davvero giocando con questo
e chiedendo e tu stai solo chiedendo
domande per scoprire se ne vale la pena
giocando con ho intenzione di dire andare via
giocare e poi tornare con
domande ci sono un sacco di tutorial
là fuori per mostrarti
e vale la pena dare un’occhiata, ma CTO
sono il posto giusto con cui giocare
questa è una tecnologia interessante quindi
quello che sto per fare ora è solo saltare
attraverso i vari diversi bit e
darti alcuni vantaggi e svantaggi così
funziona come un servizio è chiunque sia
giocato con AWS lambda o uno dei
altri buoni, alcuni di voi è così
è stato intorno dal 2014 ma è ancora un
molto nuova idea nella mente di molte persone
perché è così diverso che non c’è
semplice analogico ai tuoi sistemi
che tu corri ora con i server che sono
perché è un po ‘diverso una cosa
è un mio amico mi ha detto che è un po ‘
come crack che si prova una volta e
poi ci provi di nuovo e poi ci provi
di nuovo e all’improvviso non puoi
torna a farlo nel modo precedente così
Io so che lo sai solo dirti questo
succede ma come ho detto siamo ancora
in una fase pionieristica ce ne sono alcuni
le cose veramente interessanti che si possono
guarda l’ apice in particolare, penso
c’è del lavoro davvero interessante
succedendo lì, ma anche l’altra
le tecnologie intorno a Apache open wisk è
molto buono per il tipo di cose on-prem
intorno a questo quindi non ci sono servizi
là fuori che vale la pena esplorare adesso
i vantaggi sono cose molto simili
costano i nostri costi per l’esecuzione su larga scala
i sistemi sono minuscoli che non posso dirti
esattamente quanto sono venuti a chiedere
io dopo ti dirò via il
registrare ma si sarebbe stupito di come
poco abbiamo effettivamente spendere dobbiamo anche
pensa a disaccoppiare la logica
ti incoraggia a pensare alle cose
distribuito Lee si finisce per dover
progettare i sistemi in un modo diverso e
uno dei veri vantaggi dell’uso
funzionano come un servizio sono i tuoi errori
effettivamente contenuto nel tuo sistema
sei il proprietario se i tuoi errori non ci sono
intero server in modo che invece di avere
qualcosa accade su un server che poi
scende il tutto si passa poi a
l’altro e lo lascia cadere poi alla fine
il tuo sistema scende fondamentalmente lambda
prende un errore è l’un piccolo bit di
la buca e quella piccola punta si fermano
lavorando ed è abbastanza carino quando questo
succede perché puoi aggiustare quel bit
senza dover influire su nient’altro
si ottiene anche la scala di tutto basato su
come il tuo provider esegue il ridimensionamento e
è davvero utile che tu possa andare da piccolo
molto grande fin dall’inizio
non ci sono quadri davvero voluminosi
là fuori e cosa intendo per un ingombrante
quadro è che se in realtà hai un
guarda la maggior parte dei sistemi
ci sono cose come lo sviluppo web basato
in Java o in Python o in Ruby o
qualunque cosa tu abbia effettivamente visto l’importo
del codice che hai lì in realtà sei
prendendo una quantità estrema di tecnici
debito nel tuo sistema ora non può
sentirsi come se fosse un open-source
sistema e va bene, ma in realtà voi
stai letteralmente facendo il porting tecnico
debito nei tuoi sistemi potresti essere in grado
per risolvere il problema potrebbero essere in grado di risolverlo ma
in realtà non lo sai mai mai
una volta che hai preso l’ idea dei quadri
essere ridotto e effettivamente utilizzato
funziona come un servizio la tua logica di base
e riducendo al minimo l’utilizzo della libreria e
cose del genere in realtà finisci
senza quella massa e senza il
perdita di quelli l’introduzione di
debito tecnico quindi una delle cose che
facciamo molto con gli eventi e le code
a volte possiamo vedere questo come
messaggi e code di messaggi ed eventi
di ciò che chiamiamo all’interno dell’AWS
mondo ora interessante quando ho iniziato
parlando del più e parlare di
senza server e come funziona uno dei
le prime persone che sono venute da me erano a
questo vecchio ragazzo con i suoi capelli grigi anni ’60 inizia
Parlando di me abbiamo già risolto
tutti questi problemi e ho detto cosa fare
intendi e ha detto bene già
li fisso negli anni ’80 e disse
perché avevamo piccole cose che avevamo
parlare tra loro e abbiamo dovuto
capire come fare sostanzialmente un sacco di
piccoli bit in un sistema distribuito ma
questo è un problema hardware e ha detto
è lì che abbiamo il punto che è
dove abbiamo imparato a fare tutte queste
cose quindi ti suggerirei se tu se tu
avere persone dell’hardware a cui farli arrivare
impara alcune di queste cose ne vale la pena
farlo ora potrebbe averlo sentito
fare lamdaur AWS simile è un
approccio microservizi vorrei in realtà
non sono d’ accordo Penso che sia diverso e
sottile ma è molto diverso perché
verrà, tornerò su questo più tardi
ma essenzialmente l’errore vincolava il
il limite di errore è diverso all’interno di a
sistema di micro servizi all’interno di un lambda
sistema e ci sono probabilmente più cose
per parlare più tardi, ma non è il
stessa cosa chiunque dice che sono io
penso che si sbagliano
per molte persone questo sembra un
passo indietro ma quando inizi a usare
le idee di eventi e spunti e morti
spunti alle lettere e mettere in coda le cose che conosci
FIFO spunti e tutto quel genere di cose
in realtà finisci per essere più efficiente
e finisci per avere una maggiore capacità di recupero
sistema è più complicato da fare ma
è più resiliente e in realtà tu
può scoprire che è più facile uscire
parti di un sistema quindi se qualcosa non lo è
facendo abbastanza la cosa giusta è
in realtà è molto facile cambiare un po ‘
senza dover cambiare il tutto e io
pensa che questa sia la chiave se puoi
capire questo e in realtà un sacco di
la gente capirà questo è solo
che non li useranno necessariamente
parole e convenzioni di denominazione penso
questa è la chiave per usare senza server
funziona davvero bene come un servizio
bello è solo piccoli pezzi di logica ma
usando eventi e segnali che tornano a quello
idea penso che sia la chiave ora quando parliamo
sui dati
la maggior parte delle persone guarderà questo e andrà
beh , lo useremo solo a
database relazionale e non ci preoccuperemo
a tale proposito penso che sia sbagliato
approccio quando inizi a fare qualcosa
servizio a cui stai pensando
l’inizio e quando pensi
su scala sin dall’inizio
il database relazionale è in realtà cessato
essere utile
sono buoni fino a un certo punto e
allora devi solo chuck di più e
più cose in là gestiscono di più e
più roba e si inizia ad avere a
pensa davvero a cose come leggere e
scrivi cosa stai ottimizzando i tuoi dati
perché lo stai facendo guidato dai dati
il design diventa davvero importante in questo
punto e in realtà si può finire con a
scenario in cui hai effettivamente
diversi database da fare diversi
le cose e scalano per te così noi
in realtà abbiamo per esempio che abbiamo
DynamoDB è il nostro database giusto e quindi
quando vogliamo fare un sacco di roba da leggere
portiamo tutto in s3 e lo facciamo
riferendoci su di esso , spingiamo tutti gli interessi
3 e utente Athena ora sono cose di te
può o non può aver mai sentito parlare di ma
essenzialmente stanno riconoscendo che a
il database relazionale è a
approccio unico per dati e dati
quello che abbiamo fatto è andare bene questi
bit diversi hanno bisogno di quel tipo di
dati forse è un sistema giusto e questi
tipi di bit
hanno bisogno di leggere e questo tipo di bit
stanno segnalando bit e ci siamo divisi
su e può sembrare più di un
incubo ma in realtà significa che il
sistema funziona il sistema funziona molto
meglio l’altra cosa è che in realtà
è molto più facile da capire
un dato identificato in riposo e dati in
dati di movimento a riposo e dati in movimento
puramente perché tu sei in realtà
limita la quantità di dati che hai e
non stai cercando di fare tutto con
un sistema quindi penso che i dati effettivamente
richiede te e pensare di più
distribuito ed è interessante
problema da avere ma è davvero a
divertente da afferrare in realtà così um come
probabilmente puoi capire uno dei
le grandi cose sono intorno a questo non è questo
server dimenticare quei fino a quando ne avete bisogno
capisci solo che questo è un
infrastruttura come problema di codice CRO quindi
per esempio puoi usare al giorno d’oggi che puoi
usa la formazione di nuvole su AWS nel cloud
la formazione non era molto buona quando noi
iniziato a farlo, che è stato un lungo periodo
fa e così abbiamo raccolto terraforma
terraform è stato brillante per noi e
terraform è come gestiamo i nostri sistemi e
come distribuiamo e come facciamo un intero
un sacco di cose intorno all’infrastruttura e
Penso che se hai effettivamente guardato il nostro
terraform si sarebbe effettivamente piangere e andare
oh mio Dio, questo è enorme perché
deve solo racchiudere il tutto
cosa ma quando ti rendi conto che è un
sistema distribuito ti rendi conto che
in realtà sono tutti disgiunti da ciascuno di essi
altro e lo rende molto di più
comprensibile è solo che non lo facciamo
hanno davvero gli strumenti per farlo
cliente e DevOps è il nostro genere
le modifiche che devi fare agli sviluppatori
impara più ops e le tue persone DevOps
tipo di ottenere riassunto così diventa
più di un ops dev non ha un problema DevOps
col passare del tempo perché le tue operazioni diventano
più interessante che abbiamo scoperto
in realtà è più facile addestrare le persone
è più facile assumere un junior e poi
spiegare loro di infrastrutture e
quindi dì ora usa il codice che hai
ho imparato a conoscere il tuo Java e il tuo
JavaScript il codice che hai imparato
costruisci piccoli pezzi di logica ma costruisci me
un sistema e sembrano tipo
che essi
capisci che è un po ‘di più se tu
tira fuori l’idea di tutto ciò che è necessario
sii un server e inizi a pensare
distribuito Lee in realtà diventa un
problema molto molto meglio per qualcuno che
è nuovo per cercare di capirlo, non posso
Piuttosto metto il dito sul perché, ma lo fa
sembra funzionare una delle cose che sono
difficile è che è più difficile da testare
ci arriveremo in un minuto ma
essenzialmente sì
il test è molto molto diverso perché
delle parti mobili perché non puoi
davvero prova su un sistema live nello stesso
modo e non puoi fare quello che puoi fare
con i contenitori che sai di avere
loro in esecuzione sul proprio sistema
non funziona in quel modo e tipo
ha parlato un po ‘di titolo
delle grandi cose utili sei tu
in realtà stai consegnando parte
del tuo problema di sicurezza al fornitore
quindi usiamo gateway API per esempio per
tutta l’interazione HTTP per lambda così un api
gateway fa un sacco di lavori
non ho bisogno di sapere di cui preoccuparsi
denial of service e la gestione di quelli che
si sa che si dà cura
i tuoi vari cookie e bilanciamento del carico
e tutto quel tipo di cose che fa
lavoro utile a tale riguardo e significa
che non devi mantenere e
gestire e non è un approccio server
è un approccio diverso è un servizio
approccio penso quando si guarda
sicurezza e una delle cose che
l’uso è AWS kognito utilizzato da chiunque
Cognito chiunque ha sentito parlare di Cognito due
persone tre quattro eccellenti
così poche persone e Cognito è giusto
fondamentalmente un’autenticazione
servizio di autorizzazione che funziona con
AWS è la gestione dell’autenticazione
gestione identità e autenticazione I
sono e ciò che significa veramente per me è
che posso dire che stiamo solo andando
istituire una piscina di kognito qui persone
può accedere al proprio pool Cognito e
automaticamente sono un utente e
identità all’interno di AWS che ora posso limitare
la sua interazione con il solo gateway API
così invece di dover dargli un server
con accesso HTTP e tutti questi altri
cose
tutto ciò che facciamo è andare bene per quella persona
identità tutto quello che possono fare è questo
strato e che tocca appena su piccolo
bit di codice piccoli bit di logica in
lambda quindi rende solo la sicurezza
molto più stretto e molto meno capace
come se non pensassi dove puoi
ma è molto difficile che tu non capisca
cose come tentativi di hacking nello stesso
modo ci sono diversi tipi di hacking
i tentativi sono probabilmente migliori perché
tutti i contenitori che eseguono il
lambda sono di breve durata
quindi finisci con un sacco di sicurezza
costruito in cui è veramente utile
strumenti di distribuzione a cui ho parlato a
un po ‘di questo già ci sono
una delle cose che abbiamo trovato è quella
il dispiegamento è abbastanza buono, va bene
è esattamente lo stesso che puoi usare
degli strumenti che puoi usare ti terraformato
può fare tutti questi diversi
cose e tu puoi creare lo stesso tipo
di pipeline CI CI che puoi fare
altrove ma uno dei problemi che abbiamo
trovato di recente è quello perché abbiamo un
gran numero di funzioni lambda se a
dispiegamento per qualsiasi motivo vada
in parte sbagliato e può solo
perché è un sistema distribuito si
può finire con mezzo sistema e mezza
sistema che non è sincronizzato e quindi come
allora aggiorni e distribuisci qualcosa
è corretto
ed è molto difficile anche cose come
che implementare messo in scena è fondamentalmente cosa
Sto parlando che in realtà è molto
difficile non ci sono gli strumenti là fuori per
fallo così non abbiamo il set completo di
strumenti per essere in grado di fare tutto questo a
nel momento anche canariano blu / verde
schieramenti che devi rotolare
proprio perché il modo in cui tutto il
i fornitori di servizi hanno costruito lambda è
in modo che non si dispone di questa cosa che
ti consente di indirizzare il traffico del centro della città
laggiù nel 90% laggiù non lo fanno
hai quello e anche devi fare molto
intorno alla scoperta del servizio quindi il primo
la conversazione che ho avuto quando sono arrivato qui era
sulla scoperta del servizio come un problema e
Penso che in realtà finisce con un
problema più grande con il servizio di assistenza
scoperta qui e l’idea del servizio
maglie e ho scritto qualcosa
sull’instradamento degli eventi in modo da poter avere un
AR come DNS
scenario in modo che potrebbe essere in grado di aiutare
ma ci stiamo provando nel mezzo
capire tutte queste cose , ma per
la maggior parte dei sistemi andrà bene
con gli strumenti di distribuzione che hai
già avuto
ma non è un sistema perfetto per testare noi
è all’interno del test del mondo server è
una specie di problema risolto che conosciamo
che cosa sappiamo che facciamo TDD lo sappiamo
tutte queste altre cose quando ti muovi
diventa un test di sistema distribuito
un problema leggermente diverso semplicemente
perché il tuo test è diverso è
molto diverso ora puoi fare ammontare un
quantità di unità test molto facilmente
questo è solo un piccolo pezzetto di logica nel tuo
lambda quando esegui test di integrazione
devi fare un sacco di cose
beffarsi è molto frustrante perché
non puoi davvero farlo funzionare a meno che tu non lo abbia
eseguire un intero ambiente di staging che
sembra esattamente come la tua produzione
ambiente ma anche allora si può ottenere
colto fuori e il veramente interessante
cosa è che ho scritto ho scritto un altro blog
post su questo ci penso lì
è la sensazione che il test diventi
diverso e forse più facile è il
Fatto sta che puoi effettivamente fare unità
testare su una funzione lambda e poi farlo
test end-to-end dell’intero sistema e
in realtà i bit in mezzo a causa di
il limite di test intorno a lambda è
in realtà molto diverso non si dispone di
più limiti del test è è a
è qualcosa che posso parlare con un po ‘
un po ‘di più ma in realtà è un it’s
un punto interessante due test non lo è
necessariamente meglio o peggio è
diverso
Penso che sia forse un po ‘meglio
ma non abbiamo ancora gli strumenti e
hai davvero bisogno di un’infrastruttura come codice
essere in grado di costruire la tua produzione
sistema in un conteggio diverso in modo che tu
sappi che puoi almeno testare a
punta al tuo ambiente di produzione
quindi è difficile ma c’è
venendo um come ho detto prima persone io
pensa a inserire le persone nel sistema
Penso ci voglia un paio di settimane a
una specie di testa, ma se
prendi qualcuno che non ha avuto 15 anni
di lavorare con i server e lavorare con
basi di codice di grandi dimensioni e persino grandi monoliti
se sono piccoli monoliti in micro
servizi penso che sia in realtà più facile così
forse persone giovani e di medio livello possono
in realtà finiscono per essere migliori in questo
perché non hanno il bagaglio di
i grandi sistemi e anche perché
stai costruendo piccoli pezzi di logica te
finiscono per essere più produttivi di più
rapidamente così mentre questo lo sai
Non stiamo tipo di andare in giro tutto il
cosa di servizio al momento e ora
facciamo una specie di pausa veloce
grande cosa di cui tutti parlano perché
stai fondamentalmente usando i servizi di
un fornitore in Europa in pratica
salta all in e c’è il lock-in del fornitore
tuttavia direi che per il
maggioranza dei casi e per la maggioranza
di sistemi di blocco del venditore non è un grande
problema il problema con il blocco del venditore
è che se il venditore decide di no
come voi, allora sai di avere a che fare
con esso ma se il venditore non piace
tu penso che tu non stia andando molto bene
lavoro comunque il problema con il venditore
il lock-in è che stai costruendo
molte e molte e tante cose in lotti
di diversi servizi e in realtà tu
può avere lock-in di terze parti fornitore voi
puoi farti conoscere la tua analisi forse?
da qualche altra parte la tua prevenzione antifrode potrebbe
essere da qualche altra parte, qualunque cosa tu possa
avere diversi tipi di lock-in del fornitore
qualunque cosa tu faccia devi solo lavorare
fuori se il commercio fuori di avere
qualcuno costruisce i sistemi che vuoi
è quello giusto per la tua azienda e
il più delle volte suggerirei
certamente all’interno di un ambiente di avvio
che è dove siamo io non saremmo
toccandolo con un bargepole
stiamo andando a chiamare qualcun altro
togliere il carico e in futuro se
vogliamo fare qualcosa di bello e intelligente
e assolutamente lo costruiremo
noi stessi e noi gireremo fuori dal
venditore in cui siamo bloccati ma io
pensa che il blocco del venditore sia un po ‘di
un’aringa rossa è davvero una cosa
non dovresti preoccuparti di dovresti
basta scegliere un venditore e andare avanti con esso
quindi l’unica cosa importante nel servirci
per noi è che non c’è bisogno di
mantenere molto da mantenere
l’ infrastruttura come codice ovviamente ma
il tuo codice base è significativamente più piccolo
è anche molto meno abbinato se tu
non fare chiamate sincrone tra
lambda funziona tra funzioni o
sistemi di servizio allora il tuo sistema è
in realtà molto meno accoppiati di a
il sistema normale potrebbe essere
centinaia di funzioni ma perché
sono meno accoppiati e non stanno andando
essere gli errori di follow-on e prendere cuore
grandi pezzi di sistemi e anche voi
non è necessario patchare nulla e si
non devo averlo già detto ma
non si dispone di patchare qualsiasi cosa
non devi preoccuparti della sicurezza
aggiorna quel provider per te
e fidati di me
questa è davvero una bella cosa, specialmente se
sei una start-up perché puoi farlo
spingerlo fuori e non preoccuparti
in 21 mesi ho dovuto affrontare
problemi tecnici di una sera o a
fine settimana penso a tre volte tre
tempi in 21 mesi non abbiamo noi
non abbiamo lo stesso tipo di problemi che noi
avere problemi diversi ne abbiamo altri
problemi ma in realtà preferisco avere
quegli altri problemi al dover
mantenere i server semplicemente non ne hanno bisogno
più
così gentile di questo è il mio genere di generale
tipo di pro e contro ti lascerò
capisco che uno fuori penso che ci siano
alcune cose davvero buone, ma penso
non siamo ancora lì è ancora
territorio pioneristico per il servizio e
non siamo ancora qui, quindi dove
dovremmo andare da qui così ho fatto
tipo di dato una panoramica generale di
quale servizio è e il tipo del prossimo
un po ‘è bene dimmi come usarlo
per me, a cosa serviranno i sistemi
questo per la maggior parte del tempo suggerirei
è una soluzione appropriata per
ambienti client-server non penso
è difficile prenderlo in ballo non credo
è difficile da fare anche una piccola cosa
Io in realtà penso che sia davvero un bene per
gestione del flusso di lavoro e così quando
stai cercando di farlo , se lo hai fatto
mai visto nulla a che fare con lambda o
o una qualsiasi di queste funzioni o servizi
sistemi hanno un tutorial in cui tu
Chuck un file in qualcosa e poi
fanno i due cambiandoli in vari
diverse dimensioni e mettendoti
altrove e non penso che sia il
miglior caso d’uso ma è abbastanza buono per
spiegando come fare vari semplici
cose che conosco un’azienda che fa virus
controllando ognuno di essi
e-mail che entrano nel suo sistema così
ricevono la loro e-mail in un sistema di chuck
in questo e poi usano lambda per
controllo del virus qualunque sia l’allegato
e poi dicono sì o no e poi vanno
da lì penso che sia un utile cosa
sai che è un dietro le quinte
Caso d’uso del flusso di lavoro penso che ce ne siano molti
modi diversi di farlo non posso
davvero ti danno tutti i sistemi ma
come dico io penso che il 99% del
cose che facciamo come tecnologi, quindi penso
Probabilmente tu puoi farli in servizio
tuttavia ci sono alcuni problemi con esso
ora quando hai un
un sistema solare essenzialmente quello che sei
fare sta funzionando molto molto piccolo
contenitori che sono molto molto veloci
caricare in modo da riconoscere che sono ancora
potrebbe essere se hai freddo
iniziando ci sarà un breve
tempo a seconda della tecnologia voi
scegliere Java è abbastanza lento da caricare
il nodo è notevolmente veloce da caricare anche
se stai usando qualcosa come un’API
gateway in modo poi che aggiungerà
qualche latenza nel sistema, quindi se
stai guardando qualcosa per un reale
il sistema del tempo probabilmente non è il migliore
approccio
tuttavia vorrei ancora suggerire che il
numero di volte in cui hai effettivamente bisogno di vero
i sistemi in tempo reale sono limitati a un mucchio
di casi d’uso molto specifici in una banca o
da qualche parte in questo modo
e quindi probabilmente puoi ancora andartene
con esso la maggior parte del tempo in qualsiasi tipo di
richiedere uno scenario di risposta nel cellulare
che è quello che facciamo la rete non è mai
sarà molto buono e perfetto così noi
riesco sempre a farla franca con un po ‘di
la latenza comunque non è un problema per
i nostri sistemi ora sono ad alta intensità di calcolo
le cose che non puoi davvero fare è
è avviare una funzione come servizio
funzione e fare un sacco di cose
molto intensivo di calcolo
perché tu perché loro limitano tutti
i fornitori di servizi limitano le dimensioni di
i contenitori che caricherete e
e penso che sia davvero una buona cosa
perché ti fa iniziare a pensare
sull’esecuzione sequenziale e parallela
compiti in un modo diverso così invece di
andando ho questo grande carico di cose
qui e sto solo andando a buttarlo a
server e andra ‘, lo farň
farlo e poi buttare qualcosa fuori a
l’altra estremità quello che puoi effettivamente fare
va bene questo processo è 14
compiti diversi se ho appena passato a
l’ inizio e poi solo quelli 14
compiti in sequenza o fare qualche tipo di
MapReduce quindi puoi fare un po ‘
cose interessanti come un caso rapido
nel punto AWS ha un piccolo repo github
che ha una soluzione lambda MapReduce di AWS
vale la pena guardare semplicemente perché tu
non c’è bisogno di sapere nulla come Hadoop
hai solo bisogno di sapere un po ‘di
codice e funziona aperto più veloce ed è
più economico I tipi di che valga la pena
guardando se stai guardando i big data
cose
è sicuramente vale la pena guardare ma
in termini di materiale ad alta intensità di calcolo
bisogno di essere alla ricerca di istanze o addirittura
in poi conosci il tuo computer in-prem
conosci le cose fisiche che avresti bisogno di essere
pensando a quelli in un modo diverso
roba mission-critical ora questo arriva
torna ad essere nuvole ed essere super
il cloud avanzato è molto semplice se non lo fai
vuoi che i tuoi sistemi scendano perché AWS
ha avuto un errore è andato per qualsiasi cosa
ragione allora è sorta di avere un
soluzione diversa ma sappi che lo sei
andando a dover gestire quella soluzione così
il trade-off è mission-critical
ma ho bisogno di gestirlo se non lo fai
bisogno se non è mission-critical voi
probabilmente non c’è bisogno di preoccuparsene se
va giù nel momento molto occasionale
quindi il tuo fornitore di servizi cloud va giù così
ricorda con tutte queste cose che è
ancora il tuo servizio che hai ancora avuto
preoccupano gli utenti che lo usano
se pensate che gli utenti non stanno andando a
come se si scende mai allora sei
andando a dover inventare un modo di
gestendo quello e quello non è
il failover semplice è in realtà
davvero importante ma cose come il caching
e funzionalità al bordo diventano di
interesse a questo punto e poi a un altro
scenario in cui probabilmente non vuoi
di fare è dove è necessario un importo
di controllo spesso per cose come
motivi normativi dove è necessario
sapere esattamente dove c’è qualcosa per il
governo o chiunque sia e tu
in realtà bisogno di essere in grado di camminare
e punto alla casella non c’è probabilmente
lo scenario migliore ma puoi andare in giro
alcune di quelle cose se hai il
giusto se i fornitori hanno il diritto
rapporto con il governo per
esempio e ma anche dove hai bisogno di a
configurazione specifica e speciale così
allora staresti guardando i contenitori
e tu guarderesti ad altre cose
ma la maggior parte di quegli scenari te
potrebbe probabilmente prendere come bordo di piccole parti
casi all’interno di un intero non si passa
fuori tutti quei bit per quello che sai
questa potrebbe essere una parte del problema
piuttosto che l’ unico modo, ma di nuovo quando
dovresti usare il servizio o eventualmente farlo
dovrebbe essere quando puoi usare
il servizio probabilmente lo usa la maggior parte del tempo
non è completamente necessariamente
pronto per tutti coloro che sono chi
cercando la solidità e tutto il resto
ma penso che sia probabilmente più o meno
lì per voi conosci i pionieri e
oltre a iniziare davvero a guardare tutti
queste cose ora sono solo una rapida soluzione
come abbiamo un mio amico e io ho
istituire una conferenza della comunità ed è
molto molto semplice molto molto
semplice siamo molto economici e
non ne ricaveremo alcun profitto
Dillo solo perché ne abbiamo alcuni
Altoparlanti molto interessanti in ed è
è stato in meno di un mese ed è buono
divertimento e sarò lì e cercando di
dì a tutti quanto sia straordinario il servizio
di nuovo ma altrimenti quando dovresti usare
un approccio al servizio
Direi circa il 99% delle volte grazie
molto
[Applausi]

Please follow and like us: