Adrian is an active member of cloud interoperability, REST, and DevOps circles. He is the founder of a few popular open source projects, notably Apache jclouds and Netflix denominator, both of which java libraries that help create portable cloud deployments. Adrian maintains the http/2 implementation of Square okhttp. Adrian's currently focused on cloud computing at Twitter.
Dependency injection in java has come a long way since Spring popularized the concept 10 years ago. Today, many, if not all DI libraries support writing config in JVM languages as opposed to XML. The new Dagger library changes the game again, this time pushing DI straight into the java compiler.
This session will review what Dagger does and doesn't do, how to use it, and how it works. We'll also touch on what it is like to contribute to an open source library with a “less is more” ethic. Come prepared with a basic understanding of Guice, and leave knowing the latest on dependency injection.
Whether it's HBase, Cassandra or one of the many others, you've probably already heard about NoSQL. Perhaps you have a continuous test flow dependency, yet are concerned about learning curve or
infrastructure required for the NoSQL store you need.
During this talk, you'll see how you can transform infrastructure clouds such as Amazon EC2 or GoGrid into your data cluster using Apache Whirr.
We'll start by reviewing cloud provisioning and how Whirr adds service management to the underlying jclouds ComputeService API. You'll then learn whirr syntax and how to use it from the commandline or via a Java API. Finally, we'll discuss patterns for workflow integration. When you leave, you'll know how to setup and use NoSQL stores with a lot less work.
Learn about HTTP/2 and its relationship to HTTP 1.1 and SPDY through an open source project from Square called okhttp. Understand how HTTP/2 works at a network level and how things like header compression matter. Leave with a solid understanding of what HTTP/2 buys you and how it impacts how to design HTTP Apis.
Developers choose HTTP for its ubiquity. HTTP’s semantics are cherry-picked or embraced in the myriad of apis we develop and consume. Efficiency discussions are commonplace: Does this design imply N+1 requests? Should we denormalize the model? How do consumers discover changes in state? How many connections are needed to effectively use this api?
Meanwhile, HTTP 1.1 is a choice, as opposed to constant. SPDY and HTTP/2 implementations surface, simultaneously retaining semantics and dramatically changing performance implications. We can choose treat these new protocols as more efficient versions HTTP 1.1 or buy into new patterns such as server-side push.
This session walks you through these topics via an open source project from Square called okhttp. You’ll understand how okhttp addresses portability so that you can develop against something as familiar as java’s HTTPUrlConnection. We’ll review how to use new protocol features and constraints to keep in mind along the way. You’ll learn how to sandbox ideas with okhttp’s mock server, so that you can begin experimenting with SPDY and HTTP/2 today!
You may have heard about cloud storage offerings such as Amazon S3, OpenStack or Microsoft Azure. While conceptually similar, these offerings have different apis and behaviour that place the “write once
(run|test) anywhere” mantra at risk. The jclouds open source java and clojure library aims to eliminate cloud vendor lock-in, exposing easy to use, portable, and powerful APIs. Bring your laptop, armed with
latest revs of Eclipse, git, and maven, and we'll walk through getting you setup to hack jclouds java or clojure BlobStore applications in a collaborative fashion.
During this workshop, you'll discover the value and key gotchas of cloud storage providers first hand. By the end of this session, you'll be writing testable code that creates and manages containers and
blobs, and understand how cloud storage can fit into your architecture.
Learn about HTTP/2 and its relationship to HTTP 1.1 and SPDY. Understand core features and how they benefit security and browser efficiency. More that a “what's new” this talk will leave you with an understanding of why choices in HTTP/2 were made. You'll leave knowing what HTTP/2 is and why it is better for clients and servers.
HTTP/1.1 was released 1999 through years of interoperability driven largely by browsers of the time. HTTP/2 will be a proposed standard by the end of this year, driven largely by browsers of our time.
This presentation will overview interoperability with HTTP/1.1, and how security and efficiency is improved from both the client and server side. We'll also review sources of overhead and some circumstances where efficiency could be perceived worse! We'll then deep dive into topics that cover aspects relevant to browsers, such as how cache push works, how connections are negotiated, and priority. Then, we'll circle around and dive into a server-centric view, discussing connection features such as flow-control and ping, as well how error states are addressed.
We'll wrap up with an example of how you can test http/2 using a current web browser and how to participate in HTTP/2 community. You'll leave knowing what HTTP/2 is and why it is better for clients and servers.
Learn about how Netflix manages tens of thousands of endpoints that form the edge of its streaming services. Get an introduction to Denominator, an open source java library for portable DNS management.
Life on the edge is innovating a system that is ultimately responsible for 1/3 of all internet bandwidth usage in the US. Even wonder how Netflix does it? This talk will overview a combination of services and open source projects that comprise the edge network, including Neflix Denominator. Discussions will include how we deal with DNS, distributed load balancing as well discovery of mid-tier services.
You'll understand which service components are involved with edge traffic management. When you leave, you'll have enough context to create your own life on the Edge with NetflixOSS!
Life on the edge is innovating a system that is ultimately responsible for 1/3 of all internet bandwidth usage in the US. Even wonder how Netflix does it?
This talk will overview a combination of services and open source projects that comprise the edge network, including Netflix Denominator. Discussions will include how we control advanced features of DNS to facilitate migrations, product testing, and failover scenarios. During the session, you'll see the open source java and command-line tools we use to make this work.
Key/value stores are the most common storage offerings in the cloud today. While conceptually similar, BlobStores present different programming models and consistency models that must be considered in
application design. After this session, you'll understand these differences, and know how to use jclouds to avoid cloud lock-in and increase testability without restricting access to cloud-specific features.
We'll start by comparing public cloud services like Amazon S3 or Microsoft Azure and private cloud software like OpenStack Swift or Eucalyptus Walrus from a feature and code/API level. We'll then
review java and clojure calls to the open source jclouds BlobStore API, abstracting away these differences. We'll finish with a review of integration patterns in production today you can consider while
designing your cloud architecture.