Modern Software Architectures increasingly rely on the network for parts of applications to communicate with each other. In the minds of many software developers the network will never fail. But when L Peter Deutsch wrote the “Fallacies of Distributed Computing” paper back in 1994, he was probably never more right than today. One of the hardest things when designing and testing for distributed failures is that most issues such as slow networks and lost packets will only be found in production environments. In this talk we will show you how to deal with distributed dependencies. We’ll discuss setting and dealing with time-outs, connection monitoring, connection pooling, thread pools, queue sizes, and latency. Moreover we’ll cover a strategy for improving fault tolerance in distributed architectures. The topics covered are especially relevant if your application has a lot of dependencies that it communicates with over a network i.e. microservices. It is even more applicable if your application is deployed to an environment which is prone to failure on a regular basis e.g. a “cloud”.
Bert Ertman Fellow at Luminis, working from Rotterdam, Netherlands. Besides his day job, Bert served as the Java User Group leader for NLJUG, the Dutch Java User Group (~4000 members) for the past decade. A frequent speaker on Java and Software Architecture related topics as well as an author and member of the editorial advisory board for Dutch software development magazine: Java Magazine. In 2008, Bert was honored by being awarded the coveted title of Java Champion by an international panel of Java leaders and luminaries. Bert is also the co-author of the book ‘Building Modular Cloud Apps with OSGi’, published by O’Reilly in 2013. Bert is a JavaOne 2012 Rock Star Speaker and a 2013 Duke’s Choice Award winner.
Willem Dekker
Willem is fascinated with computers as long as he can remember. He started coding when he was eight years old and began his professional career as a Full Stack developer in 2000. After 16 years he has built up a tremendous amount of experience in building enterprise systems for large and smaller companies. His current job is an architect at a big bank in the Netherlands. Willem follows the quote: “Keep things as simple as possible, but no simpler”. As a pragmatist, he is always seeking for the balance between quality, functionality and not to forget: fun!