본문 바로가기

Python

Redis, Sentinel 고가용성(HA) 설정과 운용방법, Python Client example Redis(레디스; REmote DIctionary System)은 요즘 각광 받고 있는 In-memory Data(key-value) Store이다. 언제고 한 번 다뤄 봤으면 했는데, 마침 비슷한 기회가 주어져서 고가용성을 확보할 수 있는 중요한 설정 방법을 찾아보고 Redis 를 활용하는 아주 간단한 Python Client 예제를 정리하여 실전을 위해 기록해 두고자 한다. "쓰다 보니 내용이 좀 많습니다. 2편 정도로 나누려 했으나, 다루려고 하는 내용을 한 편에 모아서 구성하는 편이 더 좋다고 생각했으니 스크롤 압박이 심하더라도 양해 바랍니다" - Barracuda - "Redis 는 DBMS 인가?", "임시 데이터 저장용 캐시라고도 하던데..." 하는 잡다한 얘기는 여기서는 생략하자. 자주 .. 더보기
Python GUI 프로그래밍을 위한 PySide 1.2.2, Linux/Windows 에 설치하기 Python을 활용한 GUI 프로그래밍에 꼭 한 번씩 거론되는 것이 있다. 오픈소스 프로젝트로서, Python을 위한 C++바인딩인 PySide 프로젝트가 그것이다. 참고로, 기존의 PyQt4에는 API Level 1과 API level 2 가 각각 존재하고 있으며, 그에 비해 PySide는 PyQt API level 2 만을 고려하여 구현되어 있다(PySide 쪽이 LGPL이 적용되어 PyQt 보다 저작권 면에서 더 자유롭다...정도만 얘기하고, Qt의 역사나 핀란드의 노키아, 디지아 등 잡다한 궁금한 점들은 구글링으로 해결하자). 서두가 너무 길었다. 간단히 글 게재의 목적만 말하자면, PySide 1.2.1 버전은 대다수 리눅스 배포판 등의 소프트웨어 다운&설치 명령들(yum, zypper, apt.. 더보기
Linux OpenSUSE 13.* 에서 Pycharm 사용하기 : update-alternatives 활용 OpenSUSE 13.2 에서 python 개발환경을 구성할 경우에 거쳐가야 할 몇 가지 단계들이 있다. 아마도 대다수 OpenJDK를 채택한 Linux들에도 해당될 듯 한데, Pycharm이 Linux를 위한 구현을 java 로 하였기 때문에 발생하는 일종의 패키지 충돌 문제를 만나게 된다. 다시 말하면, Opensource 진영에서 채택한 OpenJDK는 OpenSUSE 뿐 아니라 Ubuntu 등 대다수 Open Linux 배포판들이 java 플랫폼을 위해 기본으로 포함하고 있다. 그러나 Linux용 Pycharm은 Oracle-Sun jdk/jre 기반으로 만들어져 있으며, 이 문제는 update-alternatives 라는 유틸리티로 극복할 수 있다. 이를 잘 활용하면, 서로 다른 버전의 gcc가.. 더보기