Siner's Blog


awscheat sheetcomputer sciencecontainercrawlingdartdatabasedjangodockergitgolanggraphqlhrhttpiacjavakubernetesmapmonitoringnestjsnetworknodeooppythonsecurityserverlessstorageterraformttbkktypescript,javascriptuxvalidation

https://user-images.githubusercontent.com/34048253/134799280-8708fa31-c456-48e6-b9d2-9d7ccd7845ec.png
떡볶이맵 제작기 #2 - 에러 모니터링
홈서버가 죽었을때 슬랙으로 모니터링하기
6 min read2021.9.26

문제점 떡볶이맵의 백엔드 서버는 홈서버에서 운영되고 있기 때문에 해당 서버의 헬스체크는 홈서버 내에서 이루어질 수 없었고, 이로 인해 정전 등의 이유로 컴퓨터가 꺼지는 등의 장애 상황을 신속하게 파악하기 힘들었습니다. 해결방안 이러한 문제점을 해결하기 위해 외부에서 홈서버의 건강상태를 체크해주는 API를 만들어야 했습니다. 떡볶이맵 서버와 상관없는 홈서버 자체의 API를 만들어서 헬스체크를 할 수도 있었지만, 좀더 다양한 상황에 유연하게 대처가 가능하도록 떡볶이맵 클라이언트에서 api 요청시에 실패하는 경우에 모니터링을 받는 식으로 구축을 하고 싶었습니다. 두가지 방식이 생각이 났는데, sentry를 frontend에 연동하는 방법이 있고, 다른 하나는 api 요청 실패시 serverless api를 통해 슬랙으로 노티를 받는 방법이 있었습니다. sentry vs slack sentry를 사용하는건 간단하지만 실시간으로 noti를 받으려면 team plan…

https://user-images.githubusercontent.com/34048253/115137416-f99c3280-a060-11eb-8998-29af27199b93.png
프로덕션 레벨의 크롤러 개발 회고
python은 과연 크롤링하기 좋은 언어인가
15 min read2021.4.18

지난 25일동안 지인의 부탁으로 특정 게시판의 게시글들을 전부 크롤링하는 외주를 진행했었다. 이를 진행하면서 얻게 된 크롤링 관련 경험에 대해 적어보려고 한다. 지금까지 나의 크롤러 프로젝트는 python으로 개발이 되어있었는데, 이번엔 typescript로 작성해달라는 요구사항을 받아서 진행했고, 내가 느낀 python 크롤링과 javascript 기반 언어의 크롤링의 차이점에 대해서도 적어볼 수 있겠다. 회고는 크게 3가지 주제로 나눌 예정이다. python 크롤링 vs javascript(typescript) 크롤링 (크롤링 환경 구성) production(컨테이너) 레벨에서의 죽지않는 크롤러 만들기 (컨테이너의 메모리 관리 aka 브라우저 캐시데이터 관리) 크롤러를 만든다는 것 (해당 사이트의 개발 히스토리를 모두 파악하는 것) 1. python 크롤링 vs javascript(typescript) 크롤링 python을 사용한 크롤링 환경 구성시 google-chrome…

https://user-images.githubusercontent.com/34048253/61307238-ef645900-a828-11e9-860c-21eb3bf9f7ab.png
장고(Django)에서 S3 연동하기
Amazon Web Service S3
4 min read2019.7.17

출처 : django 에서 S3에 Static, media 파일 저장하고 사용하기 소셜미디어 프로젝트를 준비하면서, Static 파일들에 대한 트래픽 부담을 줄이기 위해 S3를 도입하고자 하였다. Django에서 S3를 연동하기 위해서는 boto라는 라이브러리를 사용해야 한다는 것은 이미 알고 있었으나, 정확한 사용 방법을 몰라서 찾아보았고, 나중에도 사용할 때 까먹지 않기 위해 포스팅으로 작성하려 한다. 1. 버킷 생성 image 버킷 이름을 작성하고 image 넘어가고 image 모든 유저가 읽을 수 있게 Block 설정을 해제해주자 image 최종 확인 후 생성한다 image 버킷이 생성되었다 2. Policy 설정 image Bucket 선택후 Permissions - Bucket Policy 에서, 아래처럼 내용을 작성한다 BUCKET-NAME은 Bucket Policy 설정페이지에서 확인이 가능하고, USER-ARN은 https://console.aws.amazon.com…

1