인터넷에서 찾아보니 기본적으로 서버의 설정을 확인하는 공식(?) 같은 것이 있어 한 번 만들어보았습니다
아래 수치는 수 십만건의 파일을 내부에서 개발한 FTP 프로그램이 서버에 올리면서 발생하는 데이터를 테이블에 INSERT하고 UPDATE 하는 과정을 수행한 후 조회한 것입니다
참고로 FTP 클라이언트는 동시에 20개를 실행했으며,
서버의 메모리는 4GB,
Table의 개수는 21개(부하가 많이 걸리는 테이블은 5개 정도),
View는 10개이며,
테이블은 모두 InnoDB Engine을 사용하고 있습니다
mysql> show variables like '%max_connection%';
+-----------------+-------+
| Variable_name | Value |
+-----------------+-------+
| max_connections | 500 |
+-----------------+-------+
1 row in set (0.00 sec)
+----------------------+--------+
| Variable_name | Value |
+----------------------+--------+
| Aborted_connects | 2 |
| Connections | 209584 |
| Max_used_connections | 25 |
| Threads_connected | 6 |
+----------------------+--------+
4 rows in set (0.00 sec)
mysql> show status like '%threads%';
+------------------------+-------+
| Variable_name | Value |
+------------------------+-------+
| Delayed_insert_threads | 0 |
| Slow_launch_threads | 0 |
| Threads_cached | 19 |
| Threads_connected | 6 |
| Threads_created | 25 |
| Threads_running | 1 |
+------------------------+-------+
6 rows in set (0.00 sec)
mysql> show status like '%clients%';
+-----------------+-------+
| Variable_name | Value |
+-----------------+-------+
| Aborted_clients | 1219 |
+-----------------+-------+
1 row in set (0.00 sec)
* Cache Miss Rate: (25 / 209584 ) * 100 = 0.0119%
* Connection Miss Rate: (2 / 209584 ) * 100
* Connection Usage: (6 / 500) * 100 = 1.2%
Aborted_clients 라는 부분의 수치가 무척 높아서 너무 신경이 쓰이는데 왜 유독 Aborted_clients 만 수치가 높을까요?
크게 문제되는 부분이 아니라면 그냥 둬도 되겠는데 수치가 몇 천 건을 넘으니 걱정이 되네요
고수님들 한 번 살펴보시고 조언 좀 부탁드리겠습니다
|