IBM Call for Code 2020 Korea Hackathon Review

IBM Call for Code Korea 2020 후기 공유드립니다. (Top 3에 선정되었습니다. :tada: Thanks IBM! ) IBM Call for Code Korea 2020 콜포코드 2020 해커톤은 **“코로나와 기후변화 문제를 IT를 활용하여 효과적으로 해결할 수 있을지, 할 수 있다면 어떻게 할 수 있을지”**에 대한 아이디어를 공유하고 실제 프로토타입까지 개발해서 서로 발표하고 공유하는 자리였습니다. 총 50개 팀이 참여했으며 온라인으로 진행하였습니다. 즉 팀마다 알아서 장소를 구하고 해당 장소에서 같이 2일 동안 해커톤을 진행하는 형식이었는데요, 행사 공식 일정(주최 측의 안내사항 공지, 팀별 발표, 멘토 피드백 등)은 모두 Cisco Webex Meetings를 사용하여 진행하였습니다....

June 13, 2020 · 4 min · 656 words · Denver

Golang Korea Online Meetup Review

고랭 코리아 5월 온라인 밋업 후기 공유드립니다. 저에게 발표할 수 있는 기회를 주신 Golang Korea 정말 감사합니다. 🙌 Golang Korea Online Meetup 온라인 발표 영상링크: Go와 Python의 이점을 둘 다 누릴 수 있는 마이크로 서비스 아키텍처 올해 2월부터 5월까지 열심히 개발했던 Threat Intelligence API 서비스 개발 경험을 정리해서 고랭 코리아 온라인 밋업에서 발표를 했습니다. (위 링크를 클릭하시면 발표 내용을 만나보실 수 있습니다.) 평소 Go언어에 정말 관심이 많고 꼭 회사 프로젝트에서도 사용해보고 싶었습니다....

May 28, 2020 · 1 min · 187 words · Denver

How to renew entire table's rows safely?

안전하게 테이블의 내용을 갱신하는 방법에 대해 공유드립니다. 1. Introduction 이름은 동일하지만 매일 혹은 주기적으로 완전히 새로운 내용으로 갱신되어야 하는 MySQL 테이블이 있으신가요? 혹시 TRUNCATE TABLE important_table 를 한 뒤에 새로운 데이터를 삽입해주는 프로세스를 진행하고 있진 않으신가요? 만약 그렇다면 TRUNCATE 이후 에러가 발생하면 사실상 빈 테이블이 되는 것이고 서비스 장애상태가 발생하게 되는데, 어떻게 하면 안전하게 테이블을 새로운 데이터로 깔끔하게 교체할 수 있을까요? 위와 같은 고민을 하고 계시다면 이 글이 도움이 되실겁니다! :raised_hands:...

May 19, 2020 · 2 min · 329 words · Denver

Go RESTful API(gRPC Client) + Python gRPC server

Go와 Python을 활용한 마이크로 서비스 아키텍처 활용 사례를 공유드립니다. 1. Introduction 얼마 전 런칭한 클라우드브릭의 Threat Intelligence API는 Go RESTful API (gRPC Client)와 Python gRPC Server (with pandas)로 만들어졌습니다. 본 글에서는 왜 Go RESTful API와 Python gRPC Server의 조합으로 서비스를 만들었는지를 공유하고자 합니다. :eyes: 비슷한 고민을 하시는 분들께 도움이 되었으면 좋겠습니다. :pray: 2. Design 2.1. Requirements Threat Intelligence API를 개발할 때, 아래와 같은 요구사항이 있었습니다. 가볍고 빨라야 한다. 서버의 리소스를 적게 사용하면서 사용자들의 요청을 빠르게 처리해야 합니다....

April 21, 2020 · 4 min · 794 words · Denver

Huge Improvement of performance in pandas

1. Introduction pandas는 파이썬에서 사용되는 데이터 분석 라이브러리입니다. 데이터를 처리하는데 매우 빠르고 능합니다. :car: 그러나 결국 pandas도 하나의 라이브러리, 도구이기 때문에 잘못 사용하는 경우 프로그램 성능이 급격하게 안좋아질 수 있습니다. 본 글에서는 제가 클라우드브릭에서 Malicious IPv4 서비스를 개발 중에 겪었던 실제 사례를 통해 어떻게 하면 성능 저하가 심해지는지, 그리고 이를 어떻게 극복했는지를 공유드리고자 합니다. :muscle: 2. Body 2.1. 상황 설명 특정 아이피가 얼마나 위험한지에 대한 정보를 담고 있는 ildf(=intrusion log DataFrame)라는 DataFrame이 있습니다....

April 1, 2020 · 3 min · 551 words · Denver