Matt Ranney, Chief Systems Architect at Uber, gave an overview of their dispatch system, responsible for matching Uber's drivers and riders. Ranney explained the driving forces that led to a rewrite of this system. He described the architectural principles that underpin it, several of the algorithms implemented and why Uber decided to design and implement their own RPC protocol.
At QCon London 2015 Phil Calcado shared lessons learnt from SoundCloud’s move from a monolithic to microservices architecture, and stated that the core requirements for building a microservice platform include developing capabilities for rapid provisioning, basic monitoring and rapid application deployment.
After living with microservices for three years at Gilt we can see advantages in team ownership, boundaries defined by APIs and complex problems broken down. Challenges still exists in tooling, integration environments and monitoring, Yoni Goldberg explained in a presentation at the QCon London conference describing the challenges they encountered moving to a microservices architecture.
Microservices are conceptually too big; they conflate optimizing for organisational and technical factors, but solutions to problems of each type may not fit together very well, Phil Wills, senior architect at The Guardian, explained in a presentation at the QCon London conference promoting thinking about independent services and single responsibility applications, rather than microservices.
Twitter's Answers is an analytics service for mobile apps that has come to see five billion sessions per day. Ed Solovey, software engineer at Twitter, has described how their system works to provide "reliable, real-time, and actionable" data based on hundreds of millions of mobile devices sending millions of events every second.
The goal of software is to sustainably minimize lead time to positive business impact, everything else is detail, Dan North claimed in a presentation at the QCon London conference describing ways of reasoning about code and how this leads him into an architecture style that may fit microservices.
At the last QCon London, Michael Brunton-Spall, Technical Architect at the UK's Government Digital Service, expressed his views on how DevOps patterns are crucial to successfully operate microservices. Brunton-Spall identified the key ingredients to identify a microservice, explained how to build your first microservice and the necessary tools and practices to manage an ecosystem of microservices.
When designing and building Halo 4, the next version in a video game series, a new solution was created based on the Actor model implemented by the Orleans framework. Caitie McCaffrey told in a presentation at the QCon London conference talking about the work designing and building the services supporting the new game.
Measuring software complexity is a popular and common activity among the software development community, judging by the number of tools built over the years and the literature around the subject. Drawing from his blend of engineering and psychology backgrounds, Adam Tornhill proposed to its audience at QCon London to treat their code as a crime scene, with the help of version control tools.
Gene Kim (moderator), Gary Gruver, Andrew Phillips and Randy Shoup have discussed some of the benefits of microservices in a recent online panel.
Service-Oriented Architecture (SOA) made us think about breaking up monolithic systems into individual services but also encouraged building producer driven monster services with centralised control. With microservices we are going back to the underlying notions of why SOA made sense, Rebecca Parsons claimed in a presentation at the QCon London conference.
At QCon London 2015, Colin Garlick presented “An Architect’s World View”, which provided a set of values, principles and practices to act as guidance for a software architect. The core values included people, the big picture, teamwork and integrity. Garlick proposed that these values are essentially characteristics that can be prioritised in order to work as a successful software architect.
Pivotal recently released Spring XD 1.1 GA with new features including stream processing with Reactor, RxJava, Spark Streaming and Python. Additionally support for Kafka, batching and compression with RabbitMQ, and support for container group management when running on YARN are now featured.
The assumption that a large system must have a single environment, often with a one-to-one mapping between a project’s scope and the system built are challenged today Stefan Tilkov explains when looking into ways to split a large system into smaller parts and comparing the characteristics of systems, applications and microservices.
Google has opened sourced gRPC, a RPC framework used internally to connect cloud microservices. gRPC comes with support for 10 languages, making it attractive for creating back-end cloud services for mobile applications.