질문/조언질답게시판
Extra Form
PHP PHP 7.0
CMS Rhymix

안녕하세요 최근에 동접이 늘면서ㅠㅠ

 

서버가 느릿느릿해지는데요

현재 서버 램 8G 입니다.

top명령어랑

free - m 명령어 참고해서 올립니다.

 

 

13.PNG

 

질문

 

1)

mysql 에 램을 4.7%밖에 제가 할당을 안한건가요?

 

이부분에서 mysql 램을 할당을 더 시키려면 어떻게 해야할지 잘 모르겠네요 ㅠㅠ

 

 

2)

innodb_buffer_pool_size

 

사이즈는 현재 메모리의 20%로 할당되어 있습니다.

이 용량을 늘려도 될지 의문입니다.

14.PNG

 

 

 

  • profile

    램은 넉넉합니다. 7987M 중 2689M 사용중이고, 스왑 사용량도 무시할 수 있는 수준입니다.

     

    innodb_buffer_pool_size를 램의 20%로 설정해 놓았는데

    실제로는 4.7%밖에 사용하지 않고 있다면 3가지 가능성이 있습니다.

     

    1. 설정 변경 후 MySQL을 재시작하지 않아서 적용이 안됨

    2. 대부분의 테이블이 MyISAM 형식이어서 InnoDB 설정이 적용이 안됨

    3. 실제 DB 용량이 너무 작아서 램 용량의 4.7%(약 375MB) 이상 쓸 일이 없음

  • profile ?
    CPU가 140%까지 막 올라가고도 그러는데 이것도 램 할당에 문제가 잇나요?
  • ? profile
    8코어 800% 중 140% 사용이라면 전혀 문제 없습니다.

    top 실행 후 1을 누르면 코어별 사용량을 따로 볼 수 있습니다.
  • ? profile

    님이 체감하기에 쿼리속도가 느리면 문제가 있는 것이고, 그렇지 않으면 몇%라도 상관없습니다.

    140%가 나온다는 것은 최소 2코어 서버라는 뜻이고, 2코어 이상에서 140%는 전혀 포화상태가 아니니...

     

    99% = 어이쿠 큰일났다!

    140% = 음 이거 좀 살펴봐야겠군


    그러나 MySQL의 CPU 점유율은 어느 정도까지는 램 할당량에 반비례하는 경향이 있고,

    솔까말 4.7%는 너무 적어 보이니 한번쯤 확인해 보시는 것이 좋겠네요.

  • profile ?
    1번부터 차근차근 해보려고 하는데요


    mysql 재시작 해보려고 합니다.

    #service mysqld restart


    혹시 재시작할때 웹사이트가 끊어질까요?

    그리고 MylSAM 형식인지는 어떻게 확인해야할까요?
  • profile ?
    다행이 8코어 입니다!
  • ? profile
    네, 접속 끊어집니다. 에러가 노출되지 않도록 아파치를 먼저 정지해 놓고 MySQL을 재시작한 후 아파치를 시작하는 것이 좋습니다.

    phpMyAdmin을 사용하거나, DB에 직접 접속하여 SHOW TABLE STATUS; 쿼리를 돌려보면 테이블들이 MyISAM인지 InnoDB인지 알 수 있습니다. XE에서 DB type을 mysqli_innodb로 변경하더라도 신규 생성되는 테이블에만 적용되고 기존 테이블은 MyISAM 그대로일 수 있습니다.
  • profile
    슈퍼캐쉬 적용 안하셨으면 한번 적용해보세요
  • profile ?
    슈퍼캐시는 사용중입니다.!

서버에 요청 중입니다. 잠시만 기다려 주십시오...