background preloader

Microservices

Microservices
"Microservices" - yet another new term on the crowded streets of software architecture. Although our natural inclination is to pass such things by with a contemptuous glance, this bit of terminology describes a style of software systems that we are finding more and more appealing. We've seen many projects use this style in the last few years, and results so far have been positive, so much so that for many of our colleagues this is becoming the default style for building enterprise applications. Sadly, however, there's not much information that outlines what the microservice style is and how to do it. In short, the microservice architectural style [1] is an approach to developing a single application as a suite of small services, each running in its own process and communicating with lightweight mechanisms, often an HTTP resource API. To start explaining the microservice style it's useful to compare it to the monolithic style: a monolithic application built as a single unit. Related:  DWH/BI/PM Methodik & Konzeption

BI-Architektur – Konzepte und praktische Umsetzung – Winfwiki Aus Winfwiki 1 Einleitung 1.1 Zielsetzung und Abgrenzung Ziel der Fallstudie ist es in einem ersten Schwerpunkt, die Konzepte, die sich hinter dem Begriff "Business Intelligence" verbergen, zu beleuchten und ein Grundverständnis zunächst einmal des Begriffes selbst und anschließend der Architektur moderner BI-Systeme im Allgemeinen zu schaffen. Dabei liegt der Fokus auf den allgemeingültigen theoretischen Architekturkonzepten der Business Intelligence und es werden keine konkreten herstellerspezifischen Konzepte betrachtet. In einem zweiten Schwerpunkt werden Konzepte der praktischen Umsetzung vorgestellt, d.h. unter welchen Voraussetzungen sind gewisse Architekturkonzepte gut geeignet oder weniger gut geeignet. 1.2 Vorgehensweise Die Fallstudie hat zwei Themenschwerpunkte: "Konzepte" und "praktische Umsetzung". 2 Business Intelligence 2.1 Begriffsklärung Business Intelligence (Abkz. 2.2 Geschichte 2.3 Anwendungsgebiete für BI Abb. 1: BI-Framework 3 Architekturkonzepte 3.1 Fachliche Architektur

BoundedContext team organization · requirements analysis · application integration · domain driven design tags: Bounded Context is a central pattern in Domain-Driven Design. It is the focus of DDD's strategic design section which is all about dealing with large models and teams. DDD deals with large models by dividing them into different Bounded Contexts and being explicit about their interrelationships. DDD is about designing software based on models of the underlying domain. As you try to model a larger domain, it gets progressively harder to build a single unified model. In those younger days we were advised to build a unified model of the entire business, but DDD recognizes that we've learned that "total unification of the domain model for a large system will not be feasible or cost-effective" [1]. Bounded Contexts have both unrelated concepts (such as a support ticket only existing in a customer support context) but also share concepts (such as products and customers). . .

Building Microservices - O'Reilly Media Throughout the text, the author introduces many different topics that must be taken into account, such as testing, and monitoring, among others. Each chapter focuses on a specific subject. Here the author describes the problems of the old one huge application only and the benefits we get by moving towards microservices. He also covers the new challenges this new architecture brings with itself (nothing is free, after all). The whole thing is often coupled with real life anectods from the author's experience. As stated in the introduction, the book does not dive into any kind of platform or technology, thus ruling out becoming outdated in half a year. Building Microservices is a pleasant read. Overall, a good read. As usual, you can find more reviews on my personal blog: books.lostinmalloc.com.

Microservices architecture Did you Buy a Self-Service BI Fantasy? As I gaze outside my quiet home office window watching an alligator in the pond, I am reminded of my mostly isolated virtual reality. Not even a rare splurge on chocolate chip cookie dough cheered me up. Thank goodness for IT/Dev Connections next week! Even introverts need to socialize a little bit to stay sane. Speaking of sanity, I continue to hear insane expectations that self-service BI tools can replace the need for a data warehouse. “I like nonsense, it wakes up brain cells. Accurate Reporting Data Models have Not Changed While contemporary self-service BI tools are totally amazing and revolutionizing business intelligence everywhere with rapid, simple, visual reporting for everyone, data model design patterns for reporting accurate values over time, across multiple data sources in an organization have not changed. Self-service BI tools in the market today are ideal for personal and team level reporting, quick prototypes and fire-drill, on the spot insights.

Starbucks Does Not Use Two-Phase Commit - Enterprise Integration Patterns Hotto Cocoa o Kudasai I just returned from a 2 week trip to Japan. One of the more familiar sights was the ridiculous number of Starbucks (スターバックス) coffee shops, especially around Shinjuku and Roppongi. While waiting for my "Hotto Cocoa" I started to think about how Starbucks processes drink orders. Starbucks, like most other businesses is primarily interested in maximizing throughput of orders. More orders equals more revenue. Correlation By taking advantage of an asynchronous approach Starbucks also has to deal with the same challenges that asynchrony inherently brings. Exception Handling Exception handling in asynchronous messaging scenarios can be difficult. Write-off - This error handling strategy is the simplest of all: do nothing. All of these strategies are different than a two-phase commit that relies on separate prepare and execute steps. Conversations The coffee shop interaction is also a good example of a simple, but common Conversation pattern.

Microservices Book Microservices Guide "Microservices" became the hot term in 2014, attracting lots of attention as a new way to think about structuring applications. I'd come across this style several years earlier, talking with my contacts both in ThoughtWorks and beyond. It's a style that many good people find is an effective way to work with a significant class of systems. But to gain any benefit from microservice thinking, you have to understand what it is, how to do it, and why you should usually do something else. This is a guide to useful resources to find out more about microservices. How "Good" is Your Data Model?: Validating a Database Design to Pass the Test of Time - Safari Blog by Steve Hoberman Steve Hoberman is the author of the recently released “Data Model Scorecard: Applying the Industry Standard on Data Model Quality” which is published by Technics Publications. He also teaches the “Data Modeling Master Class” which is a leading data modeling course in the industry. He is the founder of the Design Challenges group, Conference Chair of the Data Modeling Zone conference, and recipient of the 2012 Data Administration Management Association (DAMA) International Professional Achievement Award. For many years I have been reviewing data models. A data model is a diagram (along with supporting documentation) that describes business terms (such as Order and Product) and the relationships between these terms (such as a Product may appear on many Orders). I created the Data Model Scorecard to proactively determine how “good” a data model, and therefore improve the structures before the database and code work have begun. To Learn More About Data Model Scorecards

Related: