3 ms·
This is only possible if you can precisely draw business domain boundaries. Micro-services add large operational overhead. If you slice you application in wrong
by Chyzwar 9y ago
This is only possible if you can precisely draw business domain boundaries. Micro-services add large operational overhead. If you slice you application in wrong way you will suffer...
IMO it is better to start from monolith and then extract services.
- yogthos 9y agoThere aren't any micro-services in our applications. However, drawing business boundaries is much easier to do in Clojure than most languages I've used. You have a common set of data structures that all functions operate on. To create a piece of domain logic, I simply need to create a namespace, and put the related functions there. This style of code is highly composable. Since majority of functions are doing generic transformations, the domain specific logic is expressed by chaining these functions in a particular way to get a desired transformation. When I need a different kind of transformation, then I just chain the functions in a different order. My experience is that the business logic naturally bubbles up to a thin layer at the top.