bcc-code / developer.bcc.no

BCC Developer Portal with technical documentation and other resources for developers
https://developer.bcc.no/
5 stars 5 forks source link

[ADR] Dapr or not Dapr #38

Open piotrczyz opened 2 years ago

piotrczyz commented 2 years ago

Context

Dapr is a very interesting option simplifying the whole communication between services and enabling additional flexibilities (Building Blocks) as messaging, etc.

Using Dapr we could get the high level alignment between our teams and decide to use same resources like Messaging Bus, common way of communication between our services, hosting.

Hot features for our products:

Decision

The configuration for daperizd application is quite flexible and work grateful with Azure Container Apps.

To rich high level alignment, we deciding to use Dapr with Azure Container Apps. We will wait with Dapr until it goes out from Preview version.

We see a huge advantage of standardisation for our application and Dapr will help us with that.

Consequences

Currently, either Cloud Run or Azure Container Apps are not ready to work with Dapr. The only option is to use Kubernetes that will give us possibilities to host it everywhere we want. But we won't use Kubernetes (even managed) as it may bring additional DevOps work.

Dapr requires to be familiar with the concept and settings for components for new services but once done, we can focus on business cases.

Alternatives

All serverless services that are able to handle a load in short time e.g. Cloud Run. But since our long-term strategy is to go Azure then we will not use Cloud Run.

Application Insights for Monitoring

We'll be using Application Insights for all our applications whether we use Dapr or not.

github-actions[bot] commented 2 years ago

Remember that ADRs are publicly available hence do not include any confidential information in the issue description! To read more about ADR please refer to documentation.