본문 바로가기

2018/03

원더 휠 (2018) - 우디앨런 빛으로 감정을 표현하는게 참신하다 !
노팅힐 (1999) 휴그랜트 머리색으로 염색하고싶다 ㅎㅅㅎ 20년전인데 1도 안촌스럽다! 염색 뽐뿌 영화 핑크 셔츠 사고싶다 ㅎㅅㅎ 20년전 영화인데도, 촌스럽지않고 영상, 배경이 이쁜 영화였다 :) 휴그랜트가 훈남이였단걸 이 영화를 보고 알았다 ㅎㅎ
[CMP]광고 시안 만드는 단순 반복 작업을 줄여주는 툴 CMP (Creative Management Platform)CMP는 광고 소재를 대량으로 만드는 것을 자동화해주는 플랫폼이다. 템플릿은 같지만, 아이템들이 다른 경우 보통 디자이너분들이 포토샵으로 복붙해서 광고 시안을 만든다.이런 경우, CMP 툴을 사용하면 반복 작업을 줄일 수 있을 것 같다. Thunder사의 CMP 제품 시뮬레이션 서비스 업체 찾아봤는데 국내에는 CMP 솔루션 업체가 없는거같다. 구글링을 해보니 Thunder의 CMP 자료만 나오는걸 보면, 이 회사가 CMP를 제일 잘하는 것 같다. 데모버전은 여기에서 신청하면 된다. ( 가격은 모르겠다 )
TDD와 테스트코드의 장점 회사 내에서 Ruby On Rails 테스트 코드인 Rspec을 공유하는 세션을 하게 되었다. 그래서 TDD를 하고, 테스트코드를 작성하면서 경험한 장점들을 정리해봤다. TDD의 장점 이미지 참고 1. 단계별로 어떤 기능을 구현해야하는지 쉽게 정리할 수 있다나는 기능 구현을 할 때, 필요한 테스트 항목들을 Description으로 나열한다. 그러면 내가 어떤 기능을 단계적으로 만들야하는지 정리할 수 있다.TDD를 하면, 테스트 케이스를 기능 구현과 동시에 작성하게 되는거다. 그러다보니 예외 케이스를 빨리 인지할 수 있다. 2. 개발 사이클이 짧아진다테스트를 자동화하면, 기대하는 값을 바로 확인할 수 있다. 그러다보면 개발 주기가 짧아진다.서버 개발을 할 때, 주로 API를 구현한다. 그래서 이걸 테스트하..
(Strangler Pattern/스트랭글러 패턴) 레거시 코드를 마이크로 서비스 아키텍처로 개선하기 Strangler Pattern모놀리틱 아키텍처로 된 시스템이 계속 자라나면, 더이상 관리할 수 없는 수준이 된다.그리고 아키텍처가 복잡해지거나, 비즈니스 로직이 파편화되면 코드를 관리하기 어려워진다. 그러다보면 배포하기도 까다로워지고, 배포가 무서워지기도 한다. 이럴 땐 버티거나, 서비스 아키텍처로 코드를 리팩토링해야한다. 서비스 아키텍처로 서비스를 한번에 옮기는 것은 리스크가 있다. 시스템은 정상적으로 돌아가면서, 점진적으로 서비스 아키텍처로 코드를 분리해나가는 디자인 패턴이 Strangler Pattern이다. 개선 방법1. 분리해내야하는 도메인을 Service Layer으로 리팩토링을 해야한다. 2. 그리고 분리해낸 도메인의 API가 호출되면, Proxy 단에서 라우팅을 분기처리해준다. 3. 신규..
(AWS) S3 SELECT - S3 파일에 쿼리 날려서 필요한 데이터만 다운받기 AWS S3 SELECT란? AWS s3 / glacier에 저장된 데이터에 쿼리를 날려서, 필요한 데이터만 다운받을 수 있게 해주는 기능이다. 2018년 3월 기준, glacier select는 모든 리전에서 사용할 수 있지만, s3 select는 아직 프리뷰 상태이다. 프리뷰버전에서는 CSV와 JSON 포맷만 지원한다. 그리고 압축 포맷으로는 GZIP만 지원한다. 샘플 코드 import boto3 from s3select import ResponseHandler class PrintingResponseHandler(ResponseHandler): def handle_records(self, record_data): print(record_data.decode('utf-8')) handler = Pri..