Slide 1

Slide 1 text

Microsserviços usando Go Kit https://eltonminetto.dev

Slide 2

Slide 2 text

Por que Go kit?

Slide 3

Slide 3 text

Go é uma ótima linguagem de uso geral, mas microsserviços exigem uma certa quantidade de suporte especializado. Segurança, RPC, observabilidade do sistema, infraestrutura e até mesmo design de arquitetura. Go kit preenche as lacunas deixadas pela biblioteca padrão e torna o Go uma linguagem de primeira classe para escrever microsserviços em qualquer organização. https://gokit.io

Slide 4

Slide 4 text

Arquitetura

Slide 5

Slide 5 text

No content

Slide 6

Slide 6 text

Service Os serviços são onde toda a lógica de negócios é implementada. No Go kit, os serviços são normalmente modelados como interfaces e as implementações dessas interfaces contêm a lógica de negócios. A lógica de negócios não deve ter conhecimento dos conceitos de das outras camadas. Por exemplo, seu serviço não deve saber nada sobre cabeçalhos HTTP ou códigos de erro gRPC.

Slide 7

Slide 7 text

Endpoint Um endpoint é como uma action/ handler em um controller. Um endpoint expõe um método/ função de serviço para o mundo externo usando a camada de transporte. Um único endpoint pode ser exposto usando vários transportes.

Slide 8

Slide 8 text

Transport O domínio de transporte está vinculado a transportes concretos como HTTP ou gRPC. Em um mundo onde os microsserviços podem oferecer suporte a um ou mais transportes, isso é muito poderoso; você pode oferecer suporte a uma API HTTP e um serviço RPC mais recente, tudo em um único microsserviço.

Slide 9

Slide 9 text

TALK IS CHEAP, SHOW ME THE CODE!

Slide 10

Slide 10 text

No content

Slide 11

Slide 11 text

https://github.com/eminetto/talk-microservices- gokit

Slide 12

Slide 12 text

Referências

Slide 13

Slide 13 text

Go kit Go Microservices with Go kit: Introduction Pattern: Microservice chassis

Slide 14

Slide 14 text

https://eltonminetto.dev https://trybe.gupy.io https://twitter.com/eminetto