eigr.io – a Serverless Runtime on the BEAM (ACM SIGPLAN, ICFP 2021 Erlang Workshop)

M
eigr.io – A Serverless
Runtime on the BEAM
ACM SIGPLAN, ICFP Erlang Workshop 2021
Marcel Lanz, August 26th 2021
• eigr.io – Eigr Functions
• A Serverless Runtime on the BEAM
• Highlights
• Inversion of State, a Protocol, being Polyglot
• Current State & Challenges
eigr.io – A Serverless Runtime on the BEAM
ACM SIGPLAN, ICFP Erlang Workshop 2021
Agenda
• Serverless Runtime
• that enables General Purpose Applications to be built
• Open Source Project
• Bases on a concept of another open source project
• Inactive at the moment
• Implementation of a Cloudstate Service Proxy
• Based on a Protocol
• Polyglot SDKs
ACM SIGPLAN, ICFP Erlang Workshop 2021
Eigr Functions
eigr.io – A Serverless Runtime on the BEAM
ACM SIGPLAN, ICFP Erlang Workshop 2021
Highlights
• A Service Proxy
• with managed State
• Cloud Native deployment (k8s)
• A Protocol
• gRPC based, with a spec and a TCK
• Polyglot Programming Model
• SDKs in
JavaScript, Python, Kotlin, Java,
Go, C#, Dart, Elixir, …
• … and it runs on the BEAM :)
eigr.io – A Serverless Runtime on the BEAM
• “Message IN, Message OUT”
• eigr/massa
• Implemented in Elixir
• Kubernetes Operator
• Sidecar Proxy
ACM SIGPLAN, ICFP Erlang Workshop 2021
Service Proxy
eigr.io – A Serverless Runtime on the BEAM
• FaaS is usually stateless
• State is brought to the
function.
• State Model to choose
• Action
• Eventsourcing
• CRDTs
• Value Entity (CRUD)
ACM SIGPLAN, ICFP Erlang Workshop 2021
Inversion of State
eigr.io – A Serverless Runtime on the BEAM
• Eigr Functions implements the Cloudstate Protocol
• Abstracts State
• defines these State Models in *.proto files
• gRPC based
• based on HTTP/2
• enables Streaming
• Protocol spec defined in *.proto (protocol buffer)
• Technology Compatibility Kit (TCK)
• ensures proxy and SDKs compatiblity
ACM SIGPLAN, ICFP Erlang Workshop 2021
A Protocol to use
eigr.io – A Serverless Runtime on the BEAM
• SDK support for all gRPC enabled languages possible
• gRPC compiler available
• JavaScript, Java and Go with 100% TCK coverage
• Python, Kotlin, Java, Go, C#, Dart, Elixir with at least Support for
Eventsourcing
ACM SIGPLAN, ICFP Erlang Workshop 2021
Polyglot Programming Model
eigr.io – A Serverless Runtime on the BEAM
• Service Proxy in Elixir (eigr/massa)
• gRPC Reflection ☑
• Discovery and Action Protocol ☑
• Next Challenges
• Implement State Models
• CRDT, Eventsourcing, CRUD
• Enhance and Improve SDKs
• Focus on JS, Java, Python and Go
• Enhance the TCK
ACM SIGPLAN, ICFP Erlang Workshop 2021
Current State & Challenges
eigr.io – A Serverless Runtime on the BEAM
ACM SIGPLAN, ICFP Erlang Workshop 2021
Marcel Lanz, August 26th 2021
Thanks!
eigr.io
github.com/eigr
@eigr_io
❤ 🙌 thanks to all contributors and supporters:
Adriano Santos, Alain-Michel Chomnoue Nghemning, GratefulTony, Guy Youansi, Weslei Juan Moser Pereira,
Jonathan Nagy, Peter Vlugter, Vladimir Korenev, Ursula Hitz, Viktor Klang, Cloudstate.io and many more…
1 of 10

Recommended

What we do with Go by
What we do with GoWhat we do with Go
What we do with GoMarcelLanz
51 views38 slides
Henrique Rodrigues (NotOnTheHighStreet.com) - Building a Future-Proof Infrast... by
Henrique Rodrigues (NotOnTheHighStreet.com) - Building a Future-Proof Infrast...Henrique Rodrigues (NotOnTheHighStreet.com) - Building a Future-Proof Infrast...
Henrique Rodrigues (NotOnTheHighStreet.com) - Building a Future-Proof Infrast...Outlyer
697 views23 slides
CICD Azure DevOps by
CICD Azure DevOpsCICD Azure DevOps
CICD Azure DevOpsSergey Seletsky
149 views14 slides
Next generation pipelines by
Next generation pipelinesNext generation pipelines
Next generation pipelinesAlex Landa
193 views14 slides
TechTalk - Building Serverless Applications with IBM Bluemix by
TechTalk - Building Serverless Applications with IBM BluemixTechTalk - Building Serverless Applications with IBM Bluemix
TechTalk - Building Serverless Applications with IBM BluemixJanakiram MSV
509 views16 slides
Owain Perry (Just Giving) - Continuous Delivery of Windows Micro-Services in ... by
Owain Perry (Just Giving) - Continuous Delivery of Windows Micro-Services in ...Owain Perry (Just Giving) - Continuous Delivery of Windows Micro-Services in ...
Owain Perry (Just Giving) - Continuous Delivery of Windows Micro-Services in ...Outlyer
499 views36 slides

More Related Content

What's hot

Matt Chung (Independent) - Serverless application with AWS Lambda by
Matt Chung (Independent) - Serverless application with AWS Lambda Matt Chung (Independent) - Serverless application with AWS Lambda
Matt Chung (Independent) - Serverless application with AWS Lambda Outlyer
671 views21 slides
Celery workshop by
Celery workshopCelery workshop
Celery workshopEswar Vandanapu
498 views12 slides
Building CI/CD Pipelines with Jenkins and Kubernetes by
Building CI/CD Pipelines with Jenkins and KubernetesBuilding CI/CD Pipelines with Jenkins and Kubernetes
Building CI/CD Pipelines with Jenkins and KubernetesJanakiram MSV
2.9K views10 slides
ONAP on Vagrant by
ONAP on VagrantONAP on Vagrant
ONAP on VagrantVictor Morales
366 views18 slides
Cross Community CI project by
Cross Community CI projectCross Community CI project
Cross Community CI projectVictor Morales
186 views14 slides
Introduction to OpenFaas by
Introduction to OpenFaasIntroduction to OpenFaas
Introduction to OpenFaasGDG Cloud Bengaluru
179 views23 slides

What's hot(19)

Matt Chung (Independent) - Serverless application with AWS Lambda by Outlyer
Matt Chung (Independent) - Serverless application with AWS Lambda Matt Chung (Independent) - Serverless application with AWS Lambda
Matt Chung (Independent) - Serverless application with AWS Lambda
Outlyer671 views
Building CI/CD Pipelines with Jenkins and Kubernetes by Janakiram MSV
Building CI/CD Pipelines with Jenkins and KubernetesBuilding CI/CD Pipelines with Jenkins and Kubernetes
Building CI/CD Pipelines with Jenkins and Kubernetes
Janakiram MSV2.9K views
Detailed Introduction To Docker by nklmish
Detailed Introduction To DockerDetailed Introduction To Docker
Detailed Introduction To Docker
nklmish1.2K views
How to contribute to an open source project and don’t die during the Code Rev... by Victor Morales
How to contribute to an open source project and don’t die during the Code Rev...How to contribute to an open source project and don’t die during the Code Rev...
How to contribute to an open source project and don’t die during the Code Rev...
Victor Morales122 views
Validating latest changes with XCI by Victor Morales
Validating latest changes with XCIValidating latest changes with XCI
Validating latest changes with XCI
Victor Morales197 views
Confoo - DevOps & Agile Infrastructure by Will Stevens
Confoo - DevOps & Agile InfrastructureConfoo - DevOps & Agile Infrastructure
Confoo - DevOps & Agile Infrastructure
Will Stevens975 views
Who needs containers in a serverless world by Matthias Luebken
Who needs containers in a serverless worldWho needs containers in a serverless world
Who needs containers in a serverless world
Matthias Luebken263 views

Similar to eigr.io – a Serverless Runtime on the BEAM (ACM SIGPLAN, ICFP 2021 Erlang Workshop)

eigr.io A Serverless Runtime on the BEAM V1.3 by
eigr.io A Serverless Runtime on the BEAM V1.3eigr.io A Serverless Runtime on the BEAM V1.3
eigr.io A Serverless Runtime on the BEAM V1.3MarcelLanz
18 views20 slides
Continuous Deployment into the Unknown with Artifactory, Bintray, Docker and ... by
Continuous Deployment into the Unknown with Artifactory, Bintray, Docker and ...Continuous Deployment into the Unknown with Artifactory, Bintray, Docker and ...
Continuous Deployment into the Unknown with Artifactory, Bintray, Docker and ...Gilad Garon
1.2K views47 slides
Seattle Spark Meetup Mobius CSharp API by
Seattle Spark Meetup Mobius CSharp APISeattle Spark Meetup Mobius CSharp API
Seattle Spark Meetup Mobius CSharp APIshareddatamsft
866 views53 slides
Develop and deploy Kubernetes applications with Docker - IBM Index 2018 by
Develop and deploy Kubernetes  applications with Docker - IBM Index 2018Develop and deploy Kubernetes  applications with Docker - IBM Index 2018
Develop and deploy Kubernetes applications with Docker - IBM Index 2018Patrick Chanezon
3K views58 slides
Microservices at Mercari by
Microservices at MercariMicroservices at Mercari
Microservices at MercariGoogle Cloud Platform - Japan
17.2K views72 slides
OSGi on Google Android using Apache Felix by
OSGi on Google Android using Apache FelixOSGi on Google Android using Apache Felix
OSGi on Google Android using Apache FelixMarcel Offermans
3.4K views40 slides

Similar to eigr.io – a Serverless Runtime on the BEAM (ACM SIGPLAN, ICFP 2021 Erlang Workshop)(20)

eigr.io A Serverless Runtime on the BEAM V1.3 by MarcelLanz
eigr.io A Serverless Runtime on the BEAM V1.3eigr.io A Serverless Runtime on the BEAM V1.3
eigr.io A Serverless Runtime on the BEAM V1.3
MarcelLanz18 views
Continuous Deployment into the Unknown with Artifactory, Bintray, Docker and ... by Gilad Garon
Continuous Deployment into the Unknown with Artifactory, Bintray, Docker and ...Continuous Deployment into the Unknown with Artifactory, Bintray, Docker and ...
Continuous Deployment into the Unknown with Artifactory, Bintray, Docker and ...
Gilad Garon1.2K views
Seattle Spark Meetup Mobius CSharp API by shareddatamsft
Seattle Spark Meetup Mobius CSharp APISeattle Spark Meetup Mobius CSharp API
Seattle Spark Meetup Mobius CSharp API
shareddatamsft866 views
Develop and deploy Kubernetes applications with Docker - IBM Index 2018 by Patrick Chanezon
Develop and deploy Kubernetes  applications with Docker - IBM Index 2018Develop and deploy Kubernetes  applications with Docker - IBM Index 2018
Develop and deploy Kubernetes applications with Docker - IBM Index 2018
Patrick Chanezon3K views
OSGi on Google Android using Apache Felix by Marcel Offermans
OSGi on Google Android using Apache FelixOSGi on Google Android using Apache Felix
OSGi on Google Android using Apache Felix
Marcel Offermans3.4K views
Ultimate Guide to Microservice Architecture on Kubernetes by kloia
Ultimate Guide to Microservice Architecture on KubernetesUltimate Guide to Microservice Architecture on Kubernetes
Ultimate Guide to Microservice Architecture on Kubernetes
kloia722 views
Eugene Bova "Dapr (Distributed Application Runtime) in a Microservices Archit... by LogeekNightUkraine
Eugene Bova "Dapr (Distributed Application Runtime) in a Microservices Archit...Eugene Bova "Dapr (Distributed Application Runtime) in a Microservices Archit...
Eugene Bova "Dapr (Distributed Application Runtime) in a Microservices Archit...
LCU14 310- Cisco ODP v2 by Linaro
LCU14 310- Cisco ODP v2LCU14 310- Cisco ODP v2
LCU14 310- Cisco ODP v2
Linaro4K views
Xpdays: Kubernetes CI-CD Frameworks Case Study by Denys Vasyliev
Xpdays: Kubernetes CI-CD Frameworks Case StudyXpdays: Kubernetes CI-CD Frameworks Case Study
Xpdays: Kubernetes CI-CD Frameworks Case Study
Denys Vasyliev184 views
Knative with .NET Core and Quarkus with GraalVM by Mark Lechtermann
Knative with .NET Core and Quarkus with GraalVMKnative with .NET Core and Quarkus with GraalVM
Knative with .NET Core and Quarkus with GraalVM
Mark Lechtermann2.6K views
How we scale up our architecture and organization at Dailymotion by Stanislas Chollet
How we scale up our architecture and organization at DailymotionHow we scale up our architecture and organization at Dailymotion
How we scale up our architecture and organization at Dailymotion
Stanislas Chollet695 views
Kubernetes for java developers - Tutorial at Oracle Code One 2018 by Anthony Dahanne
Kubernetes for java developers - Tutorial at Oracle Code One 2018Kubernetes for java developers - Tutorial at Oracle Code One 2018
Kubernetes for java developers - Tutorial at Oracle Code One 2018
Anthony Dahanne787 views
Replace your Docker based Containers with Cri-o Kata Containers for better se... by NETWAYS
Replace your Docker based Containers with Cri-o Kata Containers for better se...Replace your Docker based Containers with Cri-o Kata Containers for better se...
Replace your Docker based Containers with Cri-o Kata Containers for better se...
NETWAYS222 views
COP_RoR_QuArrk_Session_Oct_2022.pptx by Nitesh95975
COP_RoR_QuArrk_Session_Oct_2022.pptxCOP_RoR_QuArrk_Session_Oct_2022.pptx
COP_RoR_QuArrk_Session_Oct_2022.pptx
Nitesh959754 views
18th Athens Big Data Meetup - 2nd Talk - Run Spark and Flink Jobs on Kubernetes by Athens Big Data
18th Athens Big Data Meetup - 2nd Talk - Run Spark and Flink Jobs on Kubernetes18th Athens Big Data Meetup - 2nd Talk - Run Spark and Flink Jobs on Kubernetes
18th Athens Big Data Meetup - 2nd Talk - Run Spark and Flink Jobs on Kubernetes
Athens Big Data138 views
21o. RubyFloripa - Maintaining legacy Rails app and introducing Elixir by Weverton Timoteo
21o. RubyFloripa - Maintaining legacy Rails app and introducing Elixir21o. RubyFloripa - Maintaining legacy Rails app and introducing Elixir
21o. RubyFloripa - Maintaining legacy Rails app and introducing Elixir
Weverton Timoteo522 views
Hybrid Apache Spark Architecture with YARN and Kubernetes by Databricks
Hybrid Apache Spark Architecture with YARN and KubernetesHybrid Apache Spark Architecture with YARN and Kubernetes
Hybrid Apache Spark Architecture with YARN and Kubernetes
Databricks404 views

Recently uploaded

CloudStack and GitOps at Enterprise Scale - Alex Dometrius, Rene Glover - AT&T by
CloudStack and GitOps at Enterprise Scale - Alex Dometrius, Rene Glover - AT&TCloudStack and GitOps at Enterprise Scale - Alex Dometrius, Rene Glover - AT&T
CloudStack and GitOps at Enterprise Scale - Alex Dometrius, Rene Glover - AT&TShapeBlue
152 views34 slides
Webinar : Desperately Seeking Transformation - Part 2: Insights from leading... by
Webinar : Desperately Seeking Transformation - Part 2:  Insights from leading...Webinar : Desperately Seeking Transformation - Part 2:  Insights from leading...
Webinar : Desperately Seeking Transformation - Part 2: Insights from leading...The Digital Insurer
90 views52 slides
The Role of Patterns in the Era of Large Language Models by
The Role of Patterns in the Era of Large Language ModelsThe Role of Patterns in the Era of Large Language Models
The Role of Patterns in the Era of Large Language ModelsYunyao Li
85 views65 slides
TrustArc Webinar - Managing Online Tracking Technology Vendors_ A Checklist f... by
TrustArc Webinar - Managing Online Tracking Technology Vendors_ A Checklist f...TrustArc Webinar - Managing Online Tracking Technology Vendors_ A Checklist f...
TrustArc Webinar - Managing Online Tracking Technology Vendors_ A Checklist f...TrustArc
170 views29 slides
DRBD Deep Dive - Philipp Reisner - LINBIT by
DRBD Deep Dive - Philipp Reisner - LINBITDRBD Deep Dive - Philipp Reisner - LINBIT
DRBD Deep Dive - Philipp Reisner - LINBITShapeBlue
180 views21 slides
What’s New in CloudStack 4.19 - Abhishek Kumar - ShapeBlue by
What’s New in CloudStack 4.19 - Abhishek Kumar - ShapeBlueWhat’s New in CloudStack 4.19 - Abhishek Kumar - ShapeBlue
What’s New in CloudStack 4.19 - Abhishek Kumar - ShapeBlueShapeBlue
263 views23 slides

Recently uploaded(20)

CloudStack and GitOps at Enterprise Scale - Alex Dometrius, Rene Glover - AT&T by ShapeBlue
CloudStack and GitOps at Enterprise Scale - Alex Dometrius, Rene Glover - AT&TCloudStack and GitOps at Enterprise Scale - Alex Dometrius, Rene Glover - AT&T
CloudStack and GitOps at Enterprise Scale - Alex Dometrius, Rene Glover - AT&T
ShapeBlue152 views
Webinar : Desperately Seeking Transformation - Part 2: Insights from leading... by The Digital Insurer
Webinar : Desperately Seeking Transformation - Part 2:  Insights from leading...Webinar : Desperately Seeking Transformation - Part 2:  Insights from leading...
Webinar : Desperately Seeking Transformation - Part 2: Insights from leading...
The Role of Patterns in the Era of Large Language Models by Yunyao Li
The Role of Patterns in the Era of Large Language ModelsThe Role of Patterns in the Era of Large Language Models
The Role of Patterns in the Era of Large Language Models
Yunyao Li85 views
TrustArc Webinar - Managing Online Tracking Technology Vendors_ A Checklist f... by TrustArc
TrustArc Webinar - Managing Online Tracking Technology Vendors_ A Checklist f...TrustArc Webinar - Managing Online Tracking Technology Vendors_ A Checklist f...
TrustArc Webinar - Managing Online Tracking Technology Vendors_ A Checklist f...
TrustArc170 views
DRBD Deep Dive - Philipp Reisner - LINBIT by ShapeBlue
DRBD Deep Dive - Philipp Reisner - LINBITDRBD Deep Dive - Philipp Reisner - LINBIT
DRBD Deep Dive - Philipp Reisner - LINBIT
ShapeBlue180 views
What’s New in CloudStack 4.19 - Abhishek Kumar - ShapeBlue by ShapeBlue
What’s New in CloudStack 4.19 - Abhishek Kumar - ShapeBlueWhat’s New in CloudStack 4.19 - Abhishek Kumar - ShapeBlue
What’s New in CloudStack 4.19 - Abhishek Kumar - ShapeBlue
ShapeBlue263 views
Backup and Disaster Recovery with CloudStack and StorPool - Workshop - Venko ... by ShapeBlue
Backup and Disaster Recovery with CloudStack and StorPool - Workshop - Venko ...Backup and Disaster Recovery with CloudStack and StorPool - Workshop - Venko ...
Backup and Disaster Recovery with CloudStack and StorPool - Workshop - Venko ...
ShapeBlue184 views
Import Export Virtual Machine for KVM Hypervisor - Ayush Pandey - University ... by ShapeBlue
Import Export Virtual Machine for KVM Hypervisor - Ayush Pandey - University ...Import Export Virtual Machine for KVM Hypervisor - Ayush Pandey - University ...
Import Export Virtual Machine for KVM Hypervisor - Ayush Pandey - University ...
ShapeBlue119 views
Live Demo Showcase: Unveiling Dell PowerFlex’s IaaS Capabilities with Apache ... by ShapeBlue
Live Demo Showcase: Unveiling Dell PowerFlex’s IaaS Capabilities with Apache ...Live Demo Showcase: Unveiling Dell PowerFlex’s IaaS Capabilities with Apache ...
Live Demo Showcase: Unveiling Dell PowerFlex’s IaaS Capabilities with Apache ...
ShapeBlue126 views
Business Analyst Series 2023 - Week 4 Session 7 by DianaGray10
Business Analyst Series 2023 -  Week 4 Session 7Business Analyst Series 2023 -  Week 4 Session 7
Business Analyst Series 2023 - Week 4 Session 7
DianaGray10139 views
Mitigating Common CloudStack Instance Deployment Failures - Jithin Raju - Sha... by ShapeBlue
Mitigating Common CloudStack Instance Deployment Failures - Jithin Raju - Sha...Mitigating Common CloudStack Instance Deployment Failures - Jithin Raju - Sha...
Mitigating Common CloudStack Instance Deployment Failures - Jithin Raju - Sha...
ShapeBlue180 views
Transitioning from VMware vCloud to Apache CloudStack: A Path to Profitabilit... by ShapeBlue
Transitioning from VMware vCloud to Apache CloudStack: A Path to Profitabilit...Transitioning from VMware vCloud to Apache CloudStack: A Path to Profitabilit...
Transitioning from VMware vCloud to Apache CloudStack: A Path to Profitabilit...
ShapeBlue159 views
Extending KVM Host HA for Non-NFS Storage - Alex Ivanov - StorPool by ShapeBlue
Extending KVM Host HA for Non-NFS Storage -  Alex Ivanov - StorPoolExtending KVM Host HA for Non-NFS Storage -  Alex Ivanov - StorPool
Extending KVM Host HA for Non-NFS Storage - Alex Ivanov - StorPool
ShapeBlue123 views
State of the Union - Rohit Yadav - Apache CloudStack by ShapeBlue
State of the Union - Rohit Yadav - Apache CloudStackState of the Union - Rohit Yadav - Apache CloudStack
State of the Union - Rohit Yadav - Apache CloudStack
ShapeBlue297 views
How to Re-use Old Hardware with CloudStack. Saving Money and the Environment ... by ShapeBlue
How to Re-use Old Hardware with CloudStack. Saving Money and the Environment ...How to Re-use Old Hardware with CloudStack. Saving Money and the Environment ...
How to Re-use Old Hardware with CloudStack. Saving Money and the Environment ...
ShapeBlue166 views
Keynote Talk: Open Source is Not Dead - Charles Schulz - Vates by ShapeBlue
Keynote Talk: Open Source is Not Dead - Charles Schulz - VatesKeynote Talk: Open Source is Not Dead - Charles Schulz - Vates
Keynote Talk: Open Source is Not Dead - Charles Schulz - Vates
ShapeBlue252 views
Declarative Kubernetes Cluster Deployment with Cloudstack and Cluster API - O... by ShapeBlue
Declarative Kubernetes Cluster Deployment with Cloudstack and Cluster API - O...Declarative Kubernetes Cluster Deployment with Cloudstack and Cluster API - O...
Declarative Kubernetes Cluster Deployment with Cloudstack and Cluster API - O...
ShapeBlue132 views

eigr.io – a Serverless Runtime on the BEAM (ACM SIGPLAN, ICFP 2021 Erlang Workshop)

  • 1. eigr.io – A Serverless Runtime on the BEAM ACM SIGPLAN, ICFP Erlang Workshop 2021 Marcel Lanz, August 26th 2021
  • 2. • eigr.io – Eigr Functions • A Serverless Runtime on the BEAM • Highlights • Inversion of State, a Protocol, being Polyglot • Current State & Challenges eigr.io – A Serverless Runtime on the BEAM ACM SIGPLAN, ICFP Erlang Workshop 2021 Agenda
  • 3. • Serverless Runtime • that enables General Purpose Applications to be built • Open Source Project • Bases on a concept of another open source project • Inactive at the moment • Implementation of a Cloudstate Service Proxy • Based on a Protocol • Polyglot SDKs ACM SIGPLAN, ICFP Erlang Workshop 2021 Eigr Functions eigr.io – A Serverless Runtime on the BEAM
  • 4. ACM SIGPLAN, ICFP Erlang Workshop 2021 Highlights • A Service Proxy • with managed State • Cloud Native deployment (k8s) • A Protocol • gRPC based, with a spec and a TCK • Polyglot Programming Model • SDKs in JavaScript, Python, Kotlin, Java, Go, C#, Dart, Elixir, … • … and it runs on the BEAM :) eigr.io – A Serverless Runtime on the BEAM
  • 5. • “Message IN, Message OUT” • eigr/massa • Implemented in Elixir • Kubernetes Operator • Sidecar Proxy ACM SIGPLAN, ICFP Erlang Workshop 2021 Service Proxy eigr.io – A Serverless Runtime on the BEAM
  • 6. • FaaS is usually stateless • State is brought to the function. • State Model to choose • Action • Eventsourcing • CRDTs • Value Entity (CRUD) ACM SIGPLAN, ICFP Erlang Workshop 2021 Inversion of State eigr.io – A Serverless Runtime on the BEAM
  • 7. • Eigr Functions implements the Cloudstate Protocol • Abstracts State • defines these State Models in *.proto files • gRPC based • based on HTTP/2 • enables Streaming • Protocol spec defined in *.proto (protocol buffer) • Technology Compatibility Kit (TCK) • ensures proxy and SDKs compatiblity ACM SIGPLAN, ICFP Erlang Workshop 2021 A Protocol to use eigr.io – A Serverless Runtime on the BEAM
  • 8. • SDK support for all gRPC enabled languages possible • gRPC compiler available • JavaScript, Java and Go with 100% TCK coverage • Python, Kotlin, Java, Go, C#, Dart, Elixir with at least Support for Eventsourcing ACM SIGPLAN, ICFP Erlang Workshop 2021 Polyglot Programming Model eigr.io – A Serverless Runtime on the BEAM
  • 9. • Service Proxy in Elixir (eigr/massa) • gRPC Reflection ☑ • Discovery and Action Protocol ☑ • Next Challenges • Implement State Models • CRDT, Eventsourcing, CRUD • Enhance and Improve SDKs • Focus on JS, Java, Python and Go • Enhance the TCK ACM SIGPLAN, ICFP Erlang Workshop 2021 Current State & Challenges eigr.io – A Serverless Runtime on the BEAM
  • 10. ACM SIGPLAN, ICFP Erlang Workshop 2021 Marcel Lanz, August 26th 2021 Thanks! eigr.io github.com/eigr @eigr_io ❤ 🙌 thanks to all contributors and supporters: Adriano Santos, Alain-Michel Chomnoue Nghemning, GratefulTony, Guy Youansi, Weslei Juan Moser Pereira, Jonathan Nagy, Peter Vlugter, Vladimir Korenev, Ursula Hitz, Viktor Klang, Cloudstate.io and many more…