Python 27

zeromq + pyzmq

1. Zero MQ란?ØMQ는 적은 노력으로 복잡한 통신 시스템을 설계할 수 있는 임베디드 네트워크 라이브러리 입니다. 다양한 메시징 전송, 기본 제공하는 다양한 패턴, 언어, 운영체제를 제공합니다.- 간편한 메시징 소켓 라이브러리- 클러스터 및 슈퍼 컴퓨팅 환경에서 TCP보다 성능 우수- 확장 멀티코어 메시지 전달 어플리케이션을 위한 비동기 I/O- 다양한 전송수단 (in-process, inter-process, TCP, and multicast)- 다양한 연결패턴 (fan-in/out, pub-sub, task distribution, and request-reply)- 다양한 프로그램 언어(C, C++, Java, .NET, Python, Objective-C 등 30+)- 다양한 운영체제 (Li..

Passion/Programming 2012.03.27

[Regular Expression] 날짜 찾기

스트링에서 날짜를 뽑는 regular expression import re filename = "management-server.log.2011-04-06.gz" # \d+ : 숫자가 연속적으로 있음 pattern = r'(\d+-\d+\d+)' tokens = re.search(pattern, filename) a = tokens.group() print a ㅇ re의 패턴에서 (괄호) 안에 묶으면 하나의 토큰으로 그룹핑을 한다. ㅇ 찾고자 하는 패턴이 한 줄에서 여러번 나올 경우, search 대신에 findall(pattern, filename)을 하면 결과를 리스트로 리턴한다. >>> a = "dfdf-2011-04-05 dfdfd d 2012-05-67.log" >>> pattern = r'(\..

Passion/Python 2011.05.13

[Python] ConfigParser

프로그래밍을 하다 보면 프로그램의 설정파일이 존재하고 이를 파싱하는 일은 귀찮은 일이다. 크게 두가지 형식으로 설정파일이 존재하는데 1) 가장 일반적인 것은 key=value 를 text로 나열하는 것이다. 2) xml 형식으로 설정값을 저장하는 법 텍스트 방식의 설정 파일을 쉽게 파싱해 주는 모듈이 ConfigParser 이다. 설정파일에는 ㅇ Section 형식: [Section 명] ㅇ 주석 형식: ; ㅇ key=value 형식: key=value [root@cnode09-m-exp ovs-agent]# more agent.ini ;!!edit with caution!! ;(--) -- not show in /etc/init.d/ovs-agent configure [security] ;ssl sup..

Passion/Python 2011.05.07

VNS 업데이트

1) 프로세스 kill 시 pid.kill() 대신에 os.kill(p.pid, signal.SIGKILL) 로 변경. 이는 kill -9 효과를 발휘함 2) Popen(cmd, shell=False) 의 의미 cmd 를 list 형태로 적으면 shell=False를 쓰고 cmd 를 하나의 string으로 적으면 shell=True를 써야 한다. cf) shell=True로 불러진 명령이 새로운 프로세스를 띄우는 거면 실제로는 2개의 프로세스가 뜨게 된다. 하나는 쉘이고 하나는 뜨우고자 한 프로그램이다. 따라서 스크립트가 아닌 프로세스를 띄우는거면 cmd를 리스트 형태로 만들고 shell=False로 하여서 실행하여야 한다. 나중에 죽을때 2개를 죽여야 하는가? 하나를 죽여야 하는가를 고생하게 되지 않기..

R&D/VRouter 2009.12.17