프로그래밍

리눅스 서버 cpu 부하관련 질문

기업에서 db를 이용하여 어플리케이션 서비스를 제공받고 있습니다

서버는 리눅스 서버를 이용하고 있구요 어플리캐이션은 채팅어플 입니다

 

예를들어 삼성에서 카카오톡 서비스를 산거라고 보시면 됩니다

그러다가 채팅 어플에서 패치 작업을 했는데 갑자기 cpu가 엄청 올라가더라고요

 

이럴 경우 왜 cpu가 엄청 올라가는지 알 수 있는 방법이 있을까요?

top 명령어를 쓰면 cpu 높게 나오는 프로세스만 나오지

 

왜 그 프로세스가 cpu를 많이 차지하는지는 안나오더라구요

그리고 웃긴게 서버를 재시작 했더니만 원상태로 복구되는것도 좀 의아하네요

(진짜 서버를 재시작만 한건지 아님 뭔 조치를 취했는지는 모르겠습니다)

 

혹시 엔지니어나 개발자 분들 있으면 이럴경우 어떻게 cpu 분석하는지 좀 알 수 있을가요?

 

아 참고로 OutOfMemoryError 나 heap outofmemoryerror 이런 에러가 발생했던거 같습니다 

12개의 댓글

2023.12.11

그거 알려면 메모리 프로파일링 툴이던가 그런거 써서 메모리같은거 어디서 새나 봐야함

아마 누가 패치하다가 메모리 관리 잘못해서 그럴수도 있음

0
2023.12.11
@번한강행

메모리 프로파일링 툴을 쓰면 현재 실행중인 프로그램의 cpu나 메모리 확인이 되나요?

근데 메모리는 괜찮은데 cpu 사용률만 높아진건데

메모리와도 관계가 있나요?

0
2023.12.11
@그러네요

마지막에 오류코드가 메모리니까…

OoM은 보통 메모리 한계까지 다쳐먹어서 죽으거거든요

0
2023.12.11
@번한강행

확실한건 아니지만

메모리는 다 차거나 그런건 아닌거같았고

cpu만 100퍼 이렇게 찼던거 같은데 (cpu 다 찬건 확실합니다)

메모리가 다 차도 cpu에 과부하가 오는가보네요?

 

뭐 어쩃든 그걸 파악할려면 메모리 프로파일링 툴을 써야된다는 말씀이죠?

그리고 마지막으로 궁금한게 메모리가 누수중일때만 확인이 되나요?

지난 날짜나 시간의 상황은 분석이 안된건가요?

오늘 cpu가 과부하 걸렸고 cpu 과부하 문제를 해결 했습니다

그리고 내일 분석할려고 하면 분석이 안되나요?

0
2023.12.11
@그러네요

넹 프로파일링 툴은 실행중인 코드의 뭐.. 예를 들면 malloc같은 시스템 콜들을 추적하는거다 보니까 실행중에만 가능합니다

지나간 날짜에 대한건 가끔 로그가 남는(OS가 강종시킨경우) 경우 아니면 알아내기가 어렵죠

0
2023.12.11
@번한강행

그리고 혹시 리눅스 서버에 대해 혹시 좀 아시나요?

여쭤볼게 있는데 질문좀 될까요?

0
2023.12.11
@그러네요

답변 가능한거면요…

0
2023.12.11
@번한강행

unix aix 서버로 서비스를 운영중이고

해당 내용들은 db로 저장하고 있습니다

 

쉘 스크립트를 이용해서 db내용을 export 백업과 hot백업을 하고 있었습니다(참고로 티베로 db입니다)

이 백업은 매일마다 이루어지고 백업 내용은 다시 백업 프로그램과 백업 서버를 이용해서

따로 백업을 진행하였고 백업이 다 이루어지면 서버에서 백업되었던 내용은 자동으로 삭제가 되도록 했습니다

 

문제는 어느 하루날에 백업 내용이 생성되었고 백업이 400gb정도 되어서 400gb정도 백업 파일이 생성되는데

(참고로 400gb 생성되는건 엔지니어가 그렇게 생성된다고는 하는데 400gb생성이 맞는건지 의문입니다)

800gb의 백업 파일이 생성되었고 심지어 파일이 삭제되지 않는 상황입니다

 

여기서 질문드릴게 있습니다

1. 일단 db 백업 내용이 400gb인지 어떻게 확인하는 방법이 없을까요?

2. 그리고 왜 800gb가 생성되었는지는 알 수 있는 방법이 없을까요?

3. 그리고 백업 내용이 자동삭제되어야 하는데 왜 삭제가 안되었는지 로그 같은거 확인하는 방법이 없을까요?

(앞서 말했다 싶이 unix aix 서버입니다)

4. 백업파일 800gb로 인하여 디스크 용량이 100퍼가 찼다면

그 이후의 날짜부터는 백업 파일이 생성 안되는게 맞을까요? 이걸 확인하는 방법이 없을까요?

5. 쉘 스크립트가 제대로 실행되었는지 확인하는 방법은 없을까요? 로그확인방법이라든지 등

0
2023.12.11
@그러네요

헙… 이건 제가 답변하기 어렵네요

3번은 글쎄요… dmesg같은거 보고 디스크 폴트난거나 문제 있는지 보는게 최선일듯 합니다

4번은 일단 디스크 풀나면 네 안되는게 맞읍니다

5번은 error code 확인하도록 쉘 스크립트를 고치는게 좋을듯 아니면 확인이 좀 어려움

0
2023.12.11
@번한강행

그리고 마지막 질문인데

댓글말고 카카오톡 비유한

메신저 관련인데

 

서버를 재기동하면 cpu부하가

해결이 되나요 왜 껏다 키면

cpu 부하가 해결되는지 의문이네요

0
2023.12.11
@그러네요

뭔가 자원을 계속 먹거나 하는 버그가 어디 존재해서 그럴 수 있어요 아니면 커널 모듈이랑 뭔 충돌이 있어서 쌓이고 쌓인다던가…

원인은 개발사만이 알아낼 수 있겠죠…

0
2023.12.12

스크립트 내에서 파일을 어디로 하는지 확인해서 용량이랑 생성 날짜 확인하고

단순 배치스크립트라면 재기동이나 cpu 쳤을 때 백업 끊기면서 삭제 하는 부분이 실행 안됐을 수도있을듯

보통 시퓨 쳤을때 재기동으로 해결되는건 세션이 몰려서일 가능성이 높음

0
무분별한 사용은 차단될 수 있습니다.
번호 제목 글쓴이 추천 수 날짜 조회 수
5694 [프로그래밍] 아 시발 퇴사마렵다 7 인간지표 0 59 분 전 125
5693 [프로그래밍] C#이 ㅈ사기 언어인 이유 17 ye 4 10 시간 전 620
5692 [프로그래밍] 요즘 모바일 개발은 어떤 걸 사용하나요? 13 커피좋아용 0 2 일 전 318
5691 [프로그래밍] 취준생 안드로이드 팀플 주제 머할까요... 8 조강현 0 3 일 전 222
5690 [프로그래밍] 공통코드테이블은 대체 왜 만드냐 9 잠적자 0 4 일 전 426
5689 [프로그래밍] 토이프로젝트 주제 선정 3 개드립눈팅1세대 0 4 일 전 225
5688 [프로그래밍] 엥 구글 플러터 유기각 재는거임?? 4 최수연 0 7 일 전 351
5687 [프로그래밍] 반도체 장비 업계인 있음? 9 캡틴띠모 0 7 일 전 296
5686 [프로그래밍] 안드로이드 책 추천좀 6 집에가게해줘 0 8 일 전 158
5685 [프로그래밍] 폰 스크리닝 해 본 사람 있어? 3 무지개빛푸딩 0 9 일 전 393
5684 [프로그래밍] jsp 트리메뉴 만들고있는데 구상한게가능한지 의견좀물어볼께 11 평택국 0 9 일 전 173
5683 [프로그래밍] JPA 도와줘어억 ㅠ 10 모그리또 0 9 일 전 261
5682 [프로그래밍] 의사는 뽑는 인원 제한하는데 부캠은 왜 제한 안 할까 5 조강현 0 11 일 전 377
5681 [프로그래밍] 그 혹시 게임쪽 종사자 있음? 17 god79ii 0 15 일 전 636
5680 [프로그래밍] 코린이 ㅅㅂ 뭐가 문젠지 모르겠어요 9 집에가게해줘 0 15 일 전 458
5679 [프로그래밍] Dear Imgui 라고 아시나요? 2 년째모쏠 0 16 일 전 249
5678 [프로그래밍] 현업개발자분들 주말엔 편하게 쉴수있나요? 10 키로 0 16 일 전 881
5677 [프로그래밍] 무엇이든 물어보세요. 28 변현제 0 18 일 전 421
5676 [프로그래밍] 개발자보단 엔지니어가 취업이 잘됨 5 iillillill 2 19 일 전 759
5675 [프로그래밍] 프론트엔드 개발자 연봉 1억 넘는 사람 있어? 13 잠적자 0 20 일 전 659