+ All Categories
Home > Technology > GoSF Summerfest - Why Go at Apcera

GoSF Summerfest - Why Go at Apcera

Date post: 06-May-2015
Category:
Upload: derek-collison
View: 1,113 times
Download: 0 times
Share this document with a friend
Description:
In 2012, Derek Collison (Founder and CEO, Apcera) predicted that “Go will become the dominant language for systems work in IaaS Orchestration, and PaaS in 24 months.” Today, he feels his prediction wasn't too far off. In this 20 minute lightning talk from Gopher Summerfest, Derek talks about why his team chose Go and how they’ve implemented it. https://www.youtube.com/watch?v=qC9WhjmewIk
20
at Apcera GoSF - SummerFest 6/23/2014
Transcript
Page 1: GoSF Summerfest - Why Go at Apcera

at ApceraGoSF - SummerFest

6/23/2014

Page 2: GoSF Summerfest - Why Go at Apcera

Architected/Built TIBCO Rendezvous and EMS Messaging SystemsDesigned and Built CloudFoundry at VMwareCo-founded AJAX APIs group at GoogleDistributed SystemsFounder of Apcera, Inc. in San Francisco, CA@[email protected]

Derek Collison

About

Page 3: GoSF Summerfest - Why Go at Apcera

Apcera is a managed service technology company that provides innovative organizations the tools they need to

successfully take advantage of groundbreaking technology.

Continuum is a deployment platform that empowers IT to seamlessly implement policy amidst agile innovation.

Page 4: GoSF Summerfest - Why Go at Apcera

I was wrong

Page 5: GoSF Summerfest - Why Go at Apcera

Not by much though IMO!

Page 6: GoSF Summerfest - Why Go at Apcera

It will happen!

Page 7: GoSF Summerfest - Why Go at Apcera
Page 8: GoSF Summerfest - Why Go at Apcera

source: https://code.google.com/p/go-wiki/wiki/GoUsersMany, Many More!

Who really uses it?

Page 9: GoSF Summerfest - Why Go at Apcera

Why Go?• Simple Compiled Language

• Good Standard Library

• Concurrency

• Synchronous Programming Model

• Garbage Collection

• STACKS!

Page 10: GoSF Summerfest - Why Go at Apcera

Why Go?

• Not C/C++

• Not Java (or any JVM based language)

• Not Ruby/Python/Node.js

Page 11: GoSF Summerfest - Why Go at Apcera

Why Go at Apcera?

Page 12: GoSF Summerfest - Why Go at Apcera

Why Go at Apcera?• Best choice for distributed systems IMO

• Can test majority of system via Go routines

• Good core language, great(ish) performance

• easy to hire talent, because..

• easy to understand and grok in short period of time (its not erlang)

• Good standard library support - Get better faster!

• Great tooling that is built-in - a critical part of our CI

• go vet, go fmt, go test -race, etc

Page 13: GoSF Summerfest - Why Go at Apcera

How do you build a Cloud OS?

Page 14: GoSF Summerfest - Why Go at Apcera

Building a Cloud OS• Messaging System

• Distributed Scheduling System

• Orchestrator

• Policy Engine

• Isolation - Secure Perimeter Networking

• Semantically Aware Communications (for us)

Page 15: GoSF Summerfest - Why Go at Apcera

Building a Cloud OS• Messaging System!

• NATS - High Performance (> 5M msgs/sec) and Secure

• Distributed Scheduling System!

• DDSS - Drop Dead Simple Scheduler (Mesos, Omega, Kubernates, Diego)

• Orchestrator!

• Own chef server, own Golang vSphere and OpenStack APIs.

• Policy Engine!

• pEngine: new policy language (dconf), secure distribution, pluggable enforcement

• Isolation - Secure Perimeter Networking!

• cgroupContainer (w/ user namespaces, networking) -> libContainer

• Semantically aware communications!!

• Transparent Semantic Pipelines and extensible frameworks

Page 16: GoSF Summerfest - Why Go at Apcera

Where are we headed?

Page 17: GoSF Summerfest - Why Go at Apcera

Go 1.3• Better GC

• Stacks now contiguous

• Defer is more performant

• Faster race detector - Please USE THIS!

• Go on Android and ChromeOS via NaCL

• My favorite: []byte -> string and vice versa is free

Page 18: GoSF Summerfest - Why Go at Apcera

Why Go?

Page 19: GoSF Summerfest - Why Go at Apcera

Its Simple! Its Getting Better Faster!

Page 20: GoSF Summerfest - Why Go at Apcera

Its time for us to give back! !

Stay Tuned!


Recommended