Встречается на 2% собеседований по Java

Какая архитектура БД на текущем проекте: Master-Slave или Master-Master

На текущем проекте используется архитектура Master-Slave для обеспечения отказоустойчивости и распределения нагрузки.

Master обрабатывает все операции записи (INSERT, UPDATE, DELETE), а Slave реплицирует данные с Master и обслуживает запросы на чтение (SELECT). Это снижает нагрузку на Master и повышает производительность.

Пример конфигурации в Spring Boot:

java
@Configuration
@EnableJpaRepositories(basePackages = "com.example.repository")
public class DbConfig {
    @Bean
    @ConfigurationProperties("spring.datasource.master")
    public DataSource masterDataSource() {
        return DataSourceBuilder.create().build();
    }
text
@Bean
@ConfigurationProperties("spring.datasource.slave")
public DataSource slaveDataSource() {
    return DataSourceBuilder.create().build();
}

@Bean
public DataSource routingDataSource() {
    var routingDataSource = new RoutingDataSource();
    var dataSources = new HashMap<Object, Object>();
    dataSources.put("master", masterDataSource());
    dataSources.put("slave", slaveDataSource());
    routingDataSource.setTargetDataSources(dataSources);
    return routingDataSource;
}

}

text
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы