Välkommen till Callista Enterprise blogg - här finns tekniska artiklar, presentationer och nyheter om arkitektur och systemutveckling. Håll dig uppdaterad genom att följa oss på Twitter.

Callista Enterprise medarbetare Erik Lupander

ArchConf, dag 1 - Machine learning workshop

// Erik Lupander

En delegation från Callista har lämnat snöstormar och julhets bakom sig och tagit sig till Clearwater Beach, Florida, för att under fyra dagar vara på ArchConf 2017. Här kommer en liten rapport från den heldagsworkshop om Machine Learning undertecknad deltog i under dagen.

Callista Enterprise medarbetare Alexander Gunnerhell

Arkitekturblogg del 8: Fortsättning på UML – Arkitektens skruvmejsel

// Alexander Gunnerhell

I föregående inlägg i den här bloggserien om arkitektur, gick vi igenom klassdiagram.

Klassdiagram tillhör en kategori av diagram i UML som används för att beskriva olika typer av mjukvarurelaterade strukturer. På svenska kallas denna kategori av diagram ibland för statiska diagram. Strukturella/statiska UML-diagram är alltid oberoende av tid och rum.

I detta inlägg fortsätter vi med att gå igenom det ofta använda sekvensdiagrammet.

Callista Enterprise medarbetare Magnus Larsson

Building Microservices, part 8. Centralized logging with the ELK stack

// Magnus Larsson

A major challenge in a distributed system (e.g. a system landscape of microservices) is to understand what is going on and even more importantly – what is going wrong, where and why. In this blog post we will see how we can use the ELK stack (i.e. Elasticsearch, Logstash and Kibana, ) from Elastic to aggregate log events from our microservices in the blog series - Building Microservices into a centralized database for analysis and visualization.

Callista Enterprise medarbetare Erik Lupander

Go Microservices blog series, part 9 - Messaging with RabbitMQ and AMQP

// Erik Lupander

In part 9 of the Go microservices blog series, we’ll examine messaging between Go microservices using RabbitMQ and the AMQP protocol.


Microservices is all about separating your application’s business domain into bounded contexts with clearly separated domains, running with process separation where any persistent relations across domain boundaries has to rely on eventual consistency rather than ACID-like transactions or foreign key constraints. A lot of these concepts comes from or has been inspired by Domain-driven design (DDD). That’s yet another huge topic one could write a blog series about.

Callista Enterprise medarbetare David Ström

Rapport från Spring I/O 2017

// David Ström

Got Flux? Den frågan ställdes på Spring I/O 2017 konferensen i Barcelona, och även om jag inte har svaret så har jag iaf fått massor av information och inspiration här.

Callista Enterprise medarbetare Magnus Larsson

Building Microservices, part 6. Adding a Configuration Server

// Magnus Larsson

The more microservices we get in our system landscape, the harder it gets to perform configuration management. If each microservice have its own configuration, typically in a local property or yaml file, it can quickly become a nightmare to maintain. Let’s add a Configuration Server to centralise management of all the configuration files!

Callista Enterprise medarbetare Jonas Behmer

Lessons learned from a year with AWS.

// Jonas Behmer

For more than a year, since the end of 2015, I’ve been working on a project based on Amazon web services (AWS). One important design decision for the project was to not allow any “traditional” servers in the backend as the customer wanted to move away from maintaining servers on their own, thus we aimed to be serverless. Cloud container platforms like AWS EC2 was off limits to us and that meant that AWS Lambda was the only option we had.

Callista Enterprise medarbetare Erik Lupander

Go microservices, part 6 - health checks.

// Erik Lupander

As our microservices and the landscape they operate in grows more complex, it also becomes increasingly important for our services to provide a mechanism for Docker Swarm to know if they’re feeling healthy or not. Therefore, we’ll take a look at how to add health checks in this sixth part of the blog series.