목록Home (246)
without haste but without rest
allowPublicKeyRetrieval 디비와 통신 중 디비의 패스워드를 보호하기 위해 TLS(Transport Layer Security)를 사용한다. 이때 TLS를 사용하지 못하는 경우 RSA 암호화를 사용한다. 공개키 암호를 사용하려면 해당 옵션은 TRUE 로 설정해주어야 한다. 단 이때 MITM 공격이 가능해지므로 주의가 필요하다. 따라서 기본은 false다. MITM 은 중간 탈취 공격으로 중간에서 암호를 가로채는 해킹 방법이다. MITM https://en.wikipedia.org/wiki/Man-in-the-middle_attack Man-in-the-middle attack - Wikipedia From Wikipedia, the free encyclopedia Jump to navig..
설치 # Install pyenv brew install pyenv brew install pyenv-virtualenv # Add pyenv initializer to shell startup script echo 'eval "$(pyenv init --path)"' >> ~/.zshrc echo 'eval "$(pyenv virtualenv-init -)"' >> ~/.zshrc # Reload your profile source ~/.zshrc 파이썬 특정 버전 설치 pyenv install 메인 파이썬 버전 설정 pyenv global 3.6.12 특정 프로젝트를 위한 파이썬 버전 설정 pyenv virtualenv 3.n.n 3.n.n 버전으로 virtualenv-name으로 가상환경 설정 ..
파이썬 클린코드 SRP - Single Reponsibility Principle 소프트웨어 컴포넌트가 단 하나의 책임을 져야한다는 원칙이다. 즉 클래스는 하나의 구체적인 일만을 담당한다. 따라서 도메인의 문제가 변경되면 클래스를 변경하게 되며 그 이외의 이유로 클래스를 수정해야한다면 추상화가 잘못 되어서 클래스에 너무 많은 책임이 있다는 것을 뜻한다. SRP를 지키지 않은 예 class SystemMoniter: def load_activity(self): """ 소스에서 처리할 이벤트를 가져오기""" def identify_events(self): """ 가져온 데이터를 파싱해서 도메인""" def stream_events(self): """파싱한 이벤트를 외부 에이전트로 전송""" 이 클래스의 문제..
https://cs.uwaterloo.ca/~m2nagapp/courses/CS446/1195/Arch_Design_Activity/Layered.pdf Presentation Layer 인터페이스로, 요청에만 집중하고 내부 비지니스 로직은 신경쓰지 않는다. Business Layer 로직 처리에 집중한다. 이때 변경 및 추가사항의 일관성(받는 요청의 형태와 리턴하는 결과의 형태의 일관성)이 필요하다. Persistent Layer business layer로부터 전달 받은 결과를 저장하는 것에 집중한다.
https://stackoverflow.com/questions/30604846/docker-error-no-space-left-on-device Docker error : no space left on device I installed docker on a Debian 7 machine in the following way $ echo deb http://get.docker.io/ubuntu docker main > /etc/apt/sources.list.d/docker.list $ sudo apt-get update $ curl -sSL https:/... stackoverflow.com 도커 볼륨이 가득차서 inode가 full인 상태라 발생하는 에러다. 터미널에서 'df -l ' 명령어를 입력하면..
https://zeppelin.apache.org/docs/0.10.0/quickstart/docker.html
파이썬 클린코드 파이썬은 프로퍼티가 없다. private, protected를 강제할 수는 없지만 밑줄 하나를 통해 이를 관습적으로 사용한다. 밑줄을 두 개 쓰면 외부에 감출 수는 있지만, 맹글링을 통해 전혀 다른 이름을 생성하므로 주의가 필요하다. class Connector: def __init__(self, source): self.source = source self._timeout = 60 위 클래스에서 source를 파라미터로 받고 timeout은 self._timeout 속성은 밑줄을 추가해서 프라이빗한 필드임을 명시했다. 다만 외부에서 접근은 가능하다. class Connector: def __init__(self, source): self.source = source self.__time..
요약 LocalStack 0.13.0 버전부터는 /tmp/localstack 디렉토리를 마운트 해도 데이터들이 정상적으로 마운트 되지 않는다. 0.12.n 버전을 사용하면 정상적으로 볼륨이 마운트 된다. 원인 0.13.0 커뮤니티 버전에서는 persistent volume 서비스를 제외했다. 0.12.20 버전을 사용하면 위 문제를 해결할 수 있다. localstack on k8s 템플릿 https://github.com/jinyes-kim/localstack-on-k8s/blob/master/localstack-on-k8s.yml GitHub - jinyes-kim/localstack-on-k8s Contribute to jinyes-kim/localstack-on-k8s development by c..