Go!

Development / Go

주력 언어를 Go로 바꿔볼까 한다. 가장 큰 이유는 CPython의 성능 이슈인데, 최근 회사에서 특정 프로젝트를 Go로 만들어보았더니 성능이 기하급수적으로 상승했기 때문이다. 이건 PyPy도 못 따라왔으리라 생각된다. 컴파일 언어의 위대함을 다시 한 번 느낀다. 여하둥둥 Go는 생산성과 성능을 동시에 잡은 멋진 언어라는 생각이 든다. (더불어 강력한 문법적 제약조건과 '하나의 문제에는 하나의…

TIL: 2017.11.17.

Development / Css / TIL / SQLAlchemy / Redis / Aerospike / Flexbox

Python SQLAlchemy 사용시, create_engine()으로 반환받은 engine 객체에 직접 .execute()하는 것은 Anti-pattern. 각각의 .execute() 마다 DB Pool에서 connection을 가져다 쓸 뿐만 아니라, 사용 후 Transaction을 마무리하기 위해 무조건 rollback 혹은 commit을 해야되기 때문에 굉장히 많은 리소스를 사용하게 됨. (아무것도 안하는 SELECT ~ 쿼리에 대해서도 Pool 반환 전에 전 트랜잭션이…

무제.

Thought

아주 춥고.. 지치는구만..…

TIL: 2017.11.08

Development / TIL / Apache Kafka / Apache Ambari

Kafka & Ambari Apache Ambari를 이용해서 쉽게 Hadoop Eco-system에 대한 클러스터와 호스트들을 관리할 수 있다. 일단은 작업 due-date 때문에 J님이 설치해놓은 Ambari를 이용하기로 하고, 직접 설치는 나중에 해보는걸로. 기존 데이터들은 Message queue 기반으로 움직였으나, 데이터 양이 너무 많아지고 뒷단 프로세싱이 너무 복잡해진 관계로 data stream화 하기로 함. 기존 Message queue는…

TIL: 2017.11.07

Development / AWS / MySQL / TIL / AWS DMS / AWS RDS

대용량 MySQL 마이그레이션기 4TB 정도의 AWS RDS 상의 MariaDB를 AuroraDB로 Reverse-Migration 하려고 함. 예전에 AuroraDB에서 I/O 가격 이슈 때문에 넘어온 적 있음. 이 때에는 2TB 정도 되었기 때문에, mysqldump를 이용해서 전량 덤프 후에, Read Replica화 해서 Sync 맞추고 무중단 이전 했었음. 그런데 용량이 넘 커서 mysqldump에 진짜 진짜 애를…