Why choose microservices (and why not to)
Microservices are often seen as a default architecture for numerous new projects, as well as a target architecture for legacy systems migration. But in reality it’s not always suitable approach. In this post we’ll review advantages and drawbacks of the microservices architecture.
Structuring events in a messaging system
This post describes some general principles that can be used to create an event structure for a messaging system. They can be applied to any practical domain assuming that “events” concept is part of it.
Domain Specific Containers (DSC): Concept
Domain specific containers (DSC) are building blocks of domain platform model described in previous post. DSC allow applications to be executed in a safe way that guarantees data ownership will be retained by the platform.
App Ecosystems and Data Ownership
This blog post describes concept that allows companies to build application ecosystems while retaining control over sensitive user data.
How to Build Secure Callback URLs
Some API integrations require work with callback URLs for proper data exchange. In this post we’ll review some techniques that allow to use this integration feature securely. This is important for projects containing sensitive information such as personal, medical or financial records.
RESTful API Security Principles
This is an excerpt from the “API Security” book I am working on. It explains how high level security design princples can be applied to RESTful APIs. Hope you find it interesting!
How to Dockerize Java RESTful API Application
DC/OS: local deployment using Vagrant
DC/OS (Datacenter Operating System) is an open source platform enabling enterprises to easily build and run modern apps in production. It literally abstracts datacenter into a single computer. DC/OS is suitable for various application types and infrastructure agnostic by design. It runs on top of any bare-metal, private or public clouds. Even local deployment on a single machine is possible and quite easy (useful for testing, development and demo purposes).
Google Cloud Platform for static website hosting
Kafka or RabbitMQ: depends on your messages nature
Message queue is a well known architectural pattern that provide an asynchronous communication protocol. It means that sender and receiver of the message are completely detached, they do not need to interact with a queueing system at the same time.