Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Going towards multi-cloud microservices with Go Cloud

Going towards multi-cloud microservices with Go Cloud

How to deploy applications to multiple clouds without the hassle of writing specific code for each cloud? Go Cloud provides idiomatic interfaces that abstract storage or database access which makes switching cloud providers a piece of cake.

Markus Zimmermann

January 29, 2019
Tweet

More Decks by Markus Zimmermann

Other Decks in Programming

Transcript

  1. “Cloud is about how you do computing, not where you

    do computing” Paul Maritz, CEO of VMware
  2. Multi Cloud Strategy 86 % of enterprises employ a Multi-Cloud

    strategy Source: Max Lawton – unsplash https://www.techrepublic.com/article/why-86-of-enterprises-employ-a-multi-cloud-strategy-and-how-it-impacts-business
  3. Clean Architecture Principle Source: Mattia Battiston, under CC BY 4.0,

    https://github.com/mattia-battiston/clean-architecture-example
  4. Dependency Injection with Wire //+build wireinject func setup(c *Config) *App

    { wire.build( NewDB, NewRuntimeConfig, NewStorage, NewApp, ) return &App{} } func main() { c = &Config{} app = setup(c) }
  5. Still Alpha Not yet for production! Only supports the two

    major cloud providers Solves vendor lock-in problem BUT not multi-cloud resiliency API already looks promising
  6. Summary Cloud portability could be the future Abstract provider-specific code

    Automatically provision infrastructure Use cloud-agnostic tooling