我用mysql创建了springboot应用程序和数据库。然后我把它放在码头上。下面显示我的docker-compse.yml
version: '2'
services:
seat_reservation_service:
image: springio/seat_reservation_service
ports:
- "8090:8090"
environment:
- SPRING_PROFILES_ACTIVE=docker
seat_reservation_sql:
image: mysql:5.7
ports:
- 33306:3306
environment:
- MYSQL_ROOT_PASSWORD=root
- MYSQL_DATABASE=seat-reservation-query
这是我的spring application.yml文件
server:
port: 8090
spring:
profiles: docker
main:
banner-mode: 'off'
datasource:
url: jdbc:mysql://seat_reservation_sql:3306/seat-reservation-query?useSSL=false
username: root
password: root
validation-query: SELECT 1
test-on-borrow: true
jpa:
show_sql: false
hibernate:
ddl-auto: update
dialect: org.hibernate.dialect.MySQL5
properties:
hibernate:
cache:
use_second_level_cache: false
use_query_cache: false
generate_statistics: false
data:
rest:
base-path: /api/
rabbitmq:
host: rabbitmq-1
username: test
password: password
logging:
level:
org.springframework: false
org.hibernate: ERROR
path: logs/prod/
axon:
amqp:
exchange: SeatReserveEvents
eventhandling:
processors:
statistics.source: statisticsQueue
我的问题是我需要更多的复制品 seat_reservation_service
服务。如果我扩大规模 seat_reservation_service
指的是同一个数据库。根据微服务架构,我需要为每个副本提供单独的数据库。我该怎么做?
如果我使用内存数据库,它可以
1条答案
按热度按时间whlutmcx1#
根据微服务架构,我需要为每个副本提供单独的数据库。我该怎么做?
这个“规则”指的是微服务类型,而不是同一个微服务的示例。因此,可以分别缩放
seat_reservation_service
以及seat_reservation_sql
. 例如,可以有4个seat_reservation_service
和3个seat_reservation_sql
(1个主设备和2个从设备或一个galera集群)。