[Redis] 패턴을 통한 데이터 삭제 2015-03-31

Redis는 기본적으로 패턴을 활용한 삭제를 지원하지 않는다. SQL과 다른점이다.

Redis를 활용한 개발시 데이터를 초기화 하고자 할경우 개발언어로 스크립트를 구성할 수도 있지만 다음과 같이 패턴을 활용하여 삭제하면 편리하다.

 

For Linux

redis-cli keys "{PATTERN}" | xargs redis-cli del

 

For Windows : 삭제해야할 키값을 파일에 저장 후 루프문을 활용

{redisPath}\redis-cli keys "{PATTERN}" > C:\tmp.txt
FOR /F %k in (C:\tmp.txt) DO {redisPath}\redis-cli del %k

 

[Linux – CentOS] 디스크 마운트 2015-03-12

클라우드 서비스 이용중 디스크가 90%가 넘었다.

console> df -h

disk_mount1

분명 100G로 알고 있었는데…?

클라우드 설정에서 분명히 20G + 80G의 디스크가 사용중이다.

정상적으로 마운트 되지 않은것으로 보인다.

디스크가 정상인식되었는지 확인하자.

console> fdisk -l

disk_mount2

디스크는 인식되었으나 마운트 되지 않아 사용할 수 없는 상황이었다.

디스크 사용을 위해 다음과 같이 마운트 하자

 

# 디스크 형식에 맞춰 포맷
console> mkfs.ext4 /dev/xvdb

disk_mount3

# 디스크 마운트 : 폴더를 생성한 이후 마운트
console> mount /dev/xvdb /data

disk_mount4

# 디스크 마운트 확인

console> df -h

disk_mount5

console> mount

disk_mount6

# 이상태로 사용할 수 있으나 재부팅시 다시 마운트 해줘야 한다. 자동 마운트 되도록 설정한다
console> vi /etc/fstab

disk_mount7

# 설정이 완료되었다.

[Linux 명령어] process의 thread정보 확인 2014-10-08

> 서버 개발시에는 항상 스레드의 증가에 대해 고려를 해야한다. Linux 의 ps 명령어는 스레드 관련 문제시 빠른게 원인을 찾을 수 있도록 많은 옵션을 제공한다.

>>> 조회
# case 1 : 프로세스명으로 바로 조회
ps -ALF | grep {프로세스명}
# case 2 : 프로세스 번호로 조회
ps -aux | grep {프로세스명}
ps -p {프로세스PID} -T
>>>>>> description
– ‘e’ or ‘A’ : 모든 프로세스 선택
– ‘L’ : 스레드 정보인 LWP / NLWP 출력
– ‘f’ or ‘F’ : 보여질 수 있는 모든 정보 출력
>>> 결과확인
UID        PID  PPID   LWP  C NLWP STIME TTY          TIME CMD
root      1111  1110  1111  0   10 00:05 ?        00:00:00 ./service
root      1111  1110  1112  2   10 00:05 ?        00:00:00 ./service
root      1111  1110  1113  0   10 00:05 ?        00:00:00 ./service
root      1111  1110  1114  0   10 00:05 ?        00:00:00 ./service
>>>>>> description
– PID(Process ID) : 프로세스의 아이디
– PPID(Parent Process ID) : 부모 프로세스의 아이디
– LWP(Light Weight Process, is thread) : 스레드 고유아이디
– NLWP(Number Light Weight Process) : 해당 프로세스에서 동작하는 스레드의 총 갯수
ex) 위의 예에서 1111 ID의 프로세스는 총 10개의 thread가 동작한다.
>>> 스레드 정보 확인
strace -p {스레드ID : LWP}
>>>>>> description
– 스레드가 실행하는 시스템함수를 확인 할 수 있다.