微服务中的数据存储实现
在微服务系统中,数据存储是一个关键环节。下面将详细介绍如何在微服务中实现数据存储,包括存储微服务所拥有的数据以及存储微服务引发的事件。
1. 新技术介绍
在实现数据存储的过程中,会用到以下几种新技术:
| 技术名称 | 简介 |
| ---- | ---- |
| SQL Server | 微软的 SQL 数据库,可在相关文档中找到安装信息。 |
| Dapper | 轻量级对象关系映射器(ORM),是 micro ORMs 库家族的一部分,专注于简单易用和快速,支持 SQL。在本章中,将使用 Dapper 与 SQL Server 进行交互,它也适用于其他 SQL 数据库,如 PostgreSQL 和 MySQL。 |
| Event Store | 专门用于存储事件的开源数据库服务器,将事件存储为 JSON 文档,假设这些文档是事件流的一部分。除了存储事件,还具备读取和订阅事件的功能。 |
2. 存储微服务所拥有的数据
以购物车微服务为例,它拥有用户的购物车数据并负责存储这些数据。以下是存储购物车数据的步骤:
1. 创建数据库 :创建一个用于存储购物车的简单数据库,该数据库包含两个表,一个表存储每个购物车的信息,另一个表存储购物车中每个商品的信息。可以在代码下载中的 create-shopping-cart-db.sql
脚本中找到创建数据库的 SQL 代码,在 SQL Server Management Studio 中执行该脚本即可创建数据库。
2. 使用 Dapper