Architecture Intermediate
Database per Service¶
DatabaseMicroservicesData 3 min read
Proč by měla mít každá mikroservisa vlastní databázi a jak řešit dotazy napříč službami.
Principle¶
Jedna služba = jedna databáze. Žádné sdílení schématu. Datová izolace je klíčová.
Advantages¶
- Nezávislý vývoj — změna schématu neovlivní ostatní
- Technologická svoboda — PostgreSQL, MongoDB, Redis
- Nezávislé škálování
- Fault isolation
Cross-service dotazy¶
// API Composition
async function getOrderWithCustomer(orderId) {
const order = await orderService.getOrder(orderId);
const customer = await customerService.getCustomer(order.customerId);
return { ...order, customer };
}
Summary¶
Database per Service komplikuje dotazy, ale umožňuje skutečnou nezávislost. Řešte čtení přes API Composition nebo CQRS.
Need Help with Implementation?¶
Our team has experience designing and implementing modern architectures. We’re happy to help.