TPS 높거나 데이타 사이즈가 큰 업무를
처리하는 프로세스를 운영하다보면
로그파일 한개 사이즈가 수십 기가바이트 또는
많게는 2~3백 기가바이트까지 사용하는 경우가 생기기도 해요.
이렇게 용량이 큰 파일에서 문자열을 검색하게 되면
서버에 부하를 가중하게 되면서 프로세스가 느려지거나
처리를 못하고 에러가 발생하는 상황이 종종 생기게 되더라구요.
아..ㅋ 당연히 로그파일을 작게 생기게끔
로그 파일 생성 스케줄링을 잘하면 될거에요.
하지만 일 하다보면 관리가 안되는 케이스도 본의아니게 생기조.ㅋㅋ
테스트용으로 일시적이라던가 또는 이벤트용 업무들은 정규 프러세스 규칙에서
예외처리 해야 되는 경우도 있고 등등...
시키는데로 해야 되는 입장이라 ㅋ
암튼 보통 문자열 검색시 grep 인데요.
grep 명령어는 내부적으로 [정규식 표현]까지
검사하게 작동됩니다.
그러니 문자열 한개 찾는데도 내부적으로 정규식 체크 로직까지
수행되다보니 느리거나 부하가 많이 생기게 됩니다.
작은 사이즈 파일이야 문제 없지만 수십 기가바이트 이상이면
큰영향을 받게 됩니다.
이럴때 [정규식 표현] 수행을 배제한 검색이 바로 fgrep 입니다.
50~60GB 일때 grep는 1분 정도 걸리는데
fgrep 는 15~20초안에 끝나더라구요.
엄청나조.!!!
사용법은 grep과 동일합니다.
fgrep 문자열 파일
그리고 grep 에 -F 옵션과 동일한 기능이에요.
리눅스 명령어마다 옵션이 많다보니 기본적인 사용법 외에는
잘 사용하지 않게되는걸 알고
아예 명령어를 따로 만든거 같아요.
잊지말고 용량 큰 파일은 fgrep 사용하세요.
상용 서버에서 특히요. 명심.
여기까지입니다.
오늘도 무사히 일 끝나길...ㅋ
반응형
'IT > LINUX' 카테고리의 다른 글
리눅스 SORT 명령어 정렬하기 (4) | 2020.08.30 |
---|---|
리눅스 프로세스 기동 시간 (4) | 2020.08.29 |
리눅스 계정 암호 만료일 확인 (4) | 2020.08.27 |
crontab 쉘스크립트 실행 안되는 현상 (4) | 2020.08.23 |
리눅스 방화벽 오픈 확인 명령어 Telnet (6) | 2020.08.22 |
댓글