Slide 1

Slide 1 text

s3wf.com @jeffotoni GO Meetup BH, Ago 28 2018 Jefferson Otoni Serverless Go

Slide 2

Slide 2 text

@jeffotoni O que é Serverles ? Lambda.Start(Handler) go get deploy / var Sam *PublicBeta 01 02 03 Quanto Custa $ ? 04 Limites & concorrência 05 Microsserviço vs Lambda 06

Slide 3

Slide 3 text

O que é Serverless? s := &Serverless{Event:”S3”}

Slide 4

Slide 4 text

go func(p chan bool){ p<- true }(pizza)

Slide 5

Slide 5 text

type Serverless struct { Web *Event}

Slide 6

Slide 6 text

type Containers struct{ Pod *Node}

Slide 7

Slide 7 text

L := &Serverless{ l *Lambda}

Slide 8

Slide 8 text

func main() { lambda.Start(HandleRequest) }

Slide 9

Slide 9 text

func AuroraServerless(bd *Mysql){ bd.Aws{Ativar: true, Time: 5, ACUs: 0.06}}

Slide 10

Slide 10 text

O que é FaaS? func GoHello(event MyEvent) (*MyResponse, error) {}

Slide 11

Slide 11 text

func FaaS(e MyFaaS) (*MyResponse, error) { return &MyResponse{Body: e.Name, nil }

Slide 12

Slide 12 text

func Plataformas_Open_SourceFaaS( P map[string]interface{}) { f := (*T).Name }

Slide 13

Slide 13 text

S3Event(s, f, function(result) { s3List(result, function(result) { s3Records(result, function(result) { …... }); }); }); O que é Lambda?

Slide 14

Slide 14 text

func Get(c *Serverless){c.Domain = “serverless.com”)}

Slide 15

Slide 15 text

Lambda.Start(Handler) gohello.go

Slide 16

Slide 16 text

publishLambda <- awscli

Slide 17

Slide 17 text

awsconsole <- createFunction

Slide 18

Slide 18 text

awsconsoleList <- true

Slide 19

Slide 19 text

actions <- struct{}

Slide 20

Slide 20 text

Qualifiers <- AliasVersion

Slide 21

Slide 21 text

NetWorkFila <- List

Slide 22

Slide 22 text

Execute <- true

Slide 23

Slide 23 text

TimeDuration <- true

Slide 24

Slide 24 text

LambdaLog <- true

Slide 25

Slide 25 text

Graficos <- true

Slide 26

Slide 26 text

publishLambda <- awscli

Slide 27

Slide 27 text

creteIAM <- awscli File: trust-policy.json

Slide 28

Slide 28 text

creteIAM <- awscli

Slide 29

Slide 29 text

attachRolePolicy <- iamExecutaor

Slide 30

Slide 30 text

functionName <- createFunction

Slide 31

Slide 31 text

LambdaInvoke <- gohello

Slide 32

Slide 32 text

LambdaPublish <- gohello

Slide 33

Slide 33 text

Deploy := &Serverless{...}

Slide 34

Slide 34 text

Serverless := &Install{...}

Slide 35

Slide 35 text

Serverless := &create{...}

Slide 36

Slide 36 text

Serverless := &Deploy{...}

Slide 37

Slide 37 text

Serverless := &Invoke{...}

Slide 38

Slide 38 text

Simulation := &SamBeta{...}

Slide 39

Slide 39 text

Simulation := &SamBeta{...}

Slide 40

Slide 40 text

Simulation := &SamCode{...}

Slide 41

Slide 41 text

CustoInvoke := &AwsLambda{...}

Slide 42

Slide 42 text

CustoInvoke := &SendValDolar{...}

Slide 43

Slide 43 text

CustoInvoke := &SendValDolar{...}

Slide 44

Slide 44 text

Calcular := &Lambda{...}

Slide 45

Slide 45 text

AwsLambdaInvoke := &Limites{...}

Slide 46

Slide 46 text

AwsLambdaDeploy := &Limites{...}

Slide 47

Slide 47 text

microServiços := &vsLambda{...}

Slide 48

Slide 48 text

codeApiServer := &Requests{...}

Slide 49

Slide 49 text

microServiços := &vsLambda{...}

Slide 50

Slide 50 text

Thanks := &Obrigado{...} Obrigado... github.com/jeffotoni instagram.com/jeffotoni https://t.me/devopsbh https://t.me/go_br https://t.me/awsbrasil