JuliaCon 2020 (times are in UTC)

Building microservices and applications in Julia
07-25, 14:00–17:30 (UTC), Red Track

While Julia started as a "fresh approach to technical computing", it has blossomed into a powerful general-purpose language fit for much more than "just" linear algebra and automatic differentiation. This workshop will walk-through an architecture of microservices in Julia, and a broad spectrum of high-quality packages to aid in the process.

Join via Zoom: link in email from Eventbrite. Backup Youtube link: https://youtu.be/uLhXgt_gKJc.


This workshop will have three phases:

  • General overview of microservices and their architecture; what are the purposes and goals of a microservice; need for web, service, and persistence layers; which layer takes care of which pieces of functionality; how does the object model definitions relate to each layer. Included will be a discussion of why a microservice can be more general purpose and accessible than a script, and how one could move a script computation into the framework of a full microservice.

  • How does the rubber meet the road; step-by-step walk-through of building a simple Julia microservice; implementation of object model definitions and packages that help in customizing object representations; implementing web, service, and persistence layers and packages available to aid in layer-to-layer object transfer; how to run the service and writing a simple client to test; quick example of "packaging" the service as a docker container for maximum portability and flexibility

  • Advanced topics in building microservices; solutions to common problems like logging, context setting and management, middleware setup, authentication, caching, connection pooling, config management, threaded worker task execution, docker container considerations, and using PackageCompiler.

Every microservice is unique and will always require customization and tooling, but with a set of high quality swiss-army packages and best practices, more time can be focused on domain logic instead of service setup and tooling.

A long-time Julia user, developer, and enthusiast, Jacob works at Domo on large data analytics tasks.

This speaker also appears in: