여러 개의 독립된 mariadb 사용: 여러 개의 컨테이너 또는 하나의 컨테이너?격리 대 효율성?
건축에 관한 질문이 있습니다.
시스템에 여러 개의 서브시스템이 있다고 가정합니다.A
,B
기타 등등.이들 서브시스템은 각각 데이터를 유지해야 하며 모두MariaDB
·서브시스템A
필요할 수 있다database
(와 같이)create database ...
)가 호출했다.a_db
및 서브시스템B
라고 하는 데이터베이스가 필요할 수 있습니다.b_db
또, 데이터 공유도 행해지지 않습니다.A
그리고.B
마이크로서비스와 도커가 도입되기 전의 일원화된 세계에서는, 1개의 중앙을 셋업 하는 것이 일반적입니다.MariaDB
각 서브시스템에 해당 인스턴스를 사용하도록 요청하고 사용자 고유의 인스턴스를 사용하도록 합니다. database
공유 인스턴스(즉,A
사용하다a_db
,B
사용하다b_db
, 등)
도커를 사용하면 여러 개의 mariadb 컨테이너를 가동시켜 각각의 볼륨을 저장용으로 매핑할 수 있다고 생각합니다(예:/data/mdb_a
그리고./data/mdb_b
(각각).
분명한 장점은 두 회사 사이의 완전한 격리일 것입니다.A
그리고.B
...라는 걱정은 없습니다.A
잘못해서 망칠 수도 있다B
의 데이터입니다.또한 두 하위 시스템은 독립적으로 자체 MariaDB 컨테이너를 종료/재시작하거나 MariaDB 바이너리를 업그레이드할 수도 있습니다.
한편, 몇몇 동료들은 여러 MariaDB 컨테이너를 실행하는 것은 비효율적이며, 이러한 접근 방식은 자원의 낭비를 초래한다고 주장합니다.
그들의 좋은 경험적 측정과 기사는 두 접근법 사이의 트레이드오프를 논하고 있는가?
컨테이너화된 환경에서 영속적인 스토리지는 아직 초기 단계에 있으며, 여러 데이터베이스 복제본(이 경우 mariadb)을 실행할 때 트래픽이 많은 환경에서 문제가 발생할 수 있습니다.
사용하는 데이터베이스 수에 관계없이 공유 영구 데이터 스토리지(예: NFS)를 사용하여 여러 mariadb 복제본을 실행하면 일부 손상 문제가 발생할 수 있습니다.
나 자신도 이런 일을 경험한 적은 없지만, 컨테이너에서 실행되는 데이터베이스를 더 연구한 후 실제 작업을 수행해야 합니다.인터넷에는 이에 대한 기사가 많이 올라오고 있다.
많은 사람들이 여전히 VM 또는 베어메탈에서 데이터베이스를 실행하고 로컬 개발 전용 컨테이너에서만 데이터베이스를 실행합니다.
언급URL : https://stackoverflow.com/questions/46694888/multiple-independent-mariadb-usages-multiple-containers-or-one-isolation-vs-ef
'programing' 카테고리의 다른 글
Vue Async 구성 요소를 사용하려면 어떻게 해야 합니까? (0) | 2023.02.04 |
---|---|
PHP zip 확장자를 사용한 도커 이미지 빌드에 "bundled libzip is decommended" 경고가 표시됨 (0) | 2023.02.04 |
SQL - SELECT의 이상한 문제 (0) | 2023.02.04 |
Node.js 네이티브 Promise입니다.병렬 또는 순차적으로 모든 처리를 수행합니까? (0) | 2023.02.04 |
MariaDB 스테이트먼트의 UNION 조항을 대체하는 방법에 대한 생각 (0) | 2023.02.04 |