티스토리 뷰
1. DB의 동시 커넥션은 DB 엔진 타입과 DB 인스턴스 클래스의 Memory 할당량에 따라 다르다.
2. RAM이 16 GiB(17,179,869,184 bytes)인 인스턴스의 경우 DBInstanceClassMemory가 자동적으로 OS 시스템과 RDS 프로세스를 위한 용량을 빼고 나머지 용량을 12,582,880으로 나눈다(약 1295개).
*DB 인스턴스 타입, 인스턴스 사이즈, DB 엔진에 따라 상이
3. 방법
- max connection 잡힌 값 확인 방법 : SHOW GLOBAL VARIABLES LIKE 'max_connections' 명령어로 확인
- max connection 늘리는 방법 : 1) 인스턴스 클래스 스케일 업 - 다운타임이 발생하나, best practice
2) 인스턴스가 활용하는 custom parameter group의 max_connection 값을 기존 잡힌 값보다 더 크게 잡고 저장
4. Best Practice
- buffer pool 등의 메모리 소비자들을 고려하여 디폴트 값들이 지정되어 있으므로 값을 올리는 것보다 더 많은 max connection을 제공하는 인스턴스 클래스로 스케일 업(다만, 다운타임 존재)하는 것이 best practice
- Performance Schema를 사용할 경우 max_connection 값을 디폴트 값으로 두는 것이 best practice
* Performance Insights를 활성화한 경우 Performance Schema 자동 활성화
- max_connections 파라미터 튜닝 시 [wait_timeout, interactive_timeout, net_read_timeout, net_write_timeout, max_execution_time, max_connect_errors, and max_user_connections] 등의 MySQL 연결과 관련된 파라미터 재 확인 필요.
관련 AWS 문서 : https://aws.amazon.com/ko/premiumsupport/knowledge-center/rds-mysql-max-connections/
AWS 유튜브 영상 : https://www.youtube.com/watch?v=YoMVlJc8kaI
'AWS > RDS' 카테고리의 다른 글
RDS for MySQL binlog 파일 S3로 업로드 스케쥴 하는 방법 (0) | 2022.08.17 |
---|---|
AWS 데이터베이스 (0) | 2021.08.31 |
RDS Multi-AZ 구성 후 Failover 확인 (0) | 2021.07.26 |
AWS Aurora (0) | 2021.07.20 |
AWS Relational Database Service(RDS) (0) | 2021.07.20 |