MENU

Fun & Interesting

Single-Process Microservice Architectures using Dapr Actors and F# by Jonas Juselius

Func Prog Sweden 1,638 6 months ago
Video Not Working? Fix It Now

In this presentation we build a monolithic microservice application using Dapr Actors in F#. The quintessential micro-service is a small, stateless unit of functionality, often defined ad hoc. Actors on the other hand, are formally specified, (stateful) units of computation, with well defined semantics for concurrency and state management. Functional programming is a great fit for both microservices and the actor model. But as all practitioners of microservices secretly know, deploying and operating 5 services is 10 times harder than deploying one. Using actors, we can easily build single process microservice architectures, with the benefit of being almost trivial to split into multiple services later, if need be. Jonas Juselius On a mission to make high-quality oceanographic modeling globally available to anyone. Areas of interest include aquaculture, shipping, marine pollution and plastics, oil spills, sailing, fishing, leisure, and much more. I started my career as a researcher in quantum chemistry, working on theoretical models for molecular magnetic properties and the development of numerical methods for solving quantum mechanical problems. Eventually this took me into the field of High-Performance Computing, working on computational oceanography, oil spill and ecosystems modeling. After 15 years in academia I got an offer to head the software development group at Serit Tromsø. During this period I got deeply involved in functional programming and professional software engineering, leading my team from working in a traditional object-oriented setting to becoming full-stack, razor-sharp, functional programmers. Functional programming has over and over again enabled us to deliver bug free, quality software, on time, within budget. In 2022 I returned to oceanographic modeling when we launched Oceanbox. As CTO I have the overall responsibility for all our development efforts, architecture and technology stack. At Oceanbox we use functional programming in F# for developing almost all our back- and front-end systems, Dapr as a distributed application runtime, and Kubernetes as our deployment and delivery platform. https://www.linkedin.com/in/jonas-juselius/ Video sponsor – Ada Beat https://adabeat.com Merch If you want to spread functional programming and support the channel, buy something from the shop:https://funcprogsweden.myspreadshop.net/ 00:00 Welcome Jonas Juselius 00:31 Single-Process Microservice Architectures using Dapr Actors 00:48 Me, Functional Programming and F# 03:27 Oceanbox.io 06:55 Microservices everywhere 08:58 Bottom Line 10:24 Actors 12:53 Why DAPR 14:59 Monolithic microservices with DAPR 18:58 Monorail demo 27:59 Don’t be too Taliban 29:12 Q&A #funcprogsweden

Comment