[기술블로그] 4월 4주 주간 기술블로그 Follow Up
4/23 ~ 4/29 기간에 포스팅 된 주요 기술 블로그의 포스팅을 요약하여 공유합니다.
F/U 하는 기술 블로그 목록은 이 링크를, 지난주 포스팅은 이 링크를 참고하세요.
추천 포스팅은 요약을 해두었습니다.
NHN Cloud MeetUp!
SolidJS와 함께 되짚어보는 반응형 프로그래밍
게시일 | 분류 | 주요 기술 |
---|---|---|
22.04.25 | 라이브러리 소개 | JavaScript, TRP, 반응형 웹, SolidJS |
TRP의 signal, effect, memo를 기본 구성요소로 갖는 SolidJS 소개
불변 객체와 immer
게시일 | 분류 | 주요 기술 |
---|---|---|
22.04.25 | 문법 소개 | JavaScript, React, immer |
react에서 immer를 통해 불변 객체를 생성하는 방법과 필요성, 복사의 동작 등을 설명
LINE Engineering
(추천) 일본 1위 배달 앱, 바닥부터 다시 짠다 – Recode 프로젝트
게시일 | 분류 | 주요 기술 |
---|---|---|
22.04.25 | 사업 진행 과정 | 프로젝트 설계, refactor |
프로젝트의 레거시 소스를 걷어내는 과정을 담은 글이다. 짧은 템포로 간결하게 잘 작성되어 있어 쉽게 읽힌다.
당근마켓 팀 블로그
우아한형제들 기술 블로그
신입 백엔드 개발자 혼돈의 파일럿 프로젝트 돌아보기 (feat.정산플랫폼팀)
게시일 | 분류 | 주요 기술 |
---|---|---|
22.04.25 | 프로젝트 진행 과정 | 프로토타이핑, 교육 |
우아한 형제들에서 수행하는 신입 교육인 파일럿 프로그램에서 진행한 프로젝트의 회고이다.
취준생이나 신입이 놓치기 쉬운 내용이 많다. IT 기업이라면 이런 신입 교육 프로그램이 필요하다 생각한다.
Google Developers
GDE community highlight: Nishu Goel
How GDSC students are using their skills to support communities in Ukraine
How can App Engine users take advantage of Cloud Functions?
What is black and white and read all over?
Amazon Science Blog
Amazon at ICLR: Graphs, time series, and more
Advances in trustworthy machine learning at Alexa AI
Improving unsupervised sentence-pair comparison
THE NETFLIX TECH BLOG
ebay Tech Blog
eBay’s 3rd University Machine Learning Competition: Predicting Shipping Delivery Dates
Engineering at Meta
SQL Notebooks: Combining the power of Jupyter and SQL editors for data analytics
slack engineering
Slack’s Incident on 2-22-22
게시일 | 분류 | 주요 기술 |
---|---|---|
22.04.27 | 트러블 슈팅 | cache, datastore |
22년 2월 22일에 발생한 대규모 슬랙 클라이언트 실패 건에 대한 원인에 대한 회고이다.
3개의 원인으로 인해 발생한 복잡한 문제이다. 대규모 시스템에서의 대규모 장애를 구경할 수 있다.
(추천) Continuous Load Testing
게시일 | 분류 | 주요 기술 |
---|---|---|
22.04.29 | 도구 소개 | load testing |
Slack에서 도입한 Koi Pond 부하 테스트 도구를 입맛에 맞게 설정하는 과정이다.
목표
- 실제 최대 고객 사용량을 반영하는 데이터 저장소 구축
- 주기적으로 쉽게 테스트 할 수 있도록 구현
- 부하 테스트를 release cycle 에 추가
고려사항
Safety (안정성)
부하 테스트 환경은 고립되어 있지만 인프라는 일부 공유하기 때문에 실 서비스에 영향을 줄 수 있다
→ Automatic Shutdown : Trickster 를 이용해 metric을 수집해 stop signal을 발생시킨다.
api 성공률이 95% 미만이 되면 모든 부하 테스트를 중지한다.
Resilience (탄력성)
Koi Pond는 초경량의 in memory applicationd 인데, 부하테스트는 영속 데이터 시나리오를 포함하고 있고, 부하테스트 도중에 죽는 경우의 상태를 기록해야 한다.
→ Kubernetes에 구성 : 기본적으로 7일마다 재기동하고, 보안 fetch 등이 있으면 자동으로 빌드.
→ database 구성 : 부하테스트 실행 기록을 Dynamo DB에 기록한다.
→ process 자동화 : 테스트 시 token 발급 과정등을 cron job을 통해 자동화하여 주기적으로 실행
Release (출시)
신뢰할 수 없는 플랫폼은 사내 플랫폼이더라도 사용되지 않는다
→ 신중한 roll out : 바로 큰 부하 테스트가 아니라 조금씩 강하게 바꾸었고, 인프라 팀과 협업
→ 비용 산정 : 일회성 테스트를 통해 비용을 산정해 운영 비용 계산
→ 모니터링 대시보드 작성 : 소규모 팀에서는 부하 테스트를 트레이싱 하기 어려우니 관련 대시보드를 만들어 공유
성과
- 최대 고객의 4배 부하테스트 가능
- 품질과 성능 테스트를 단일 기능 테스트 뿐 아니라, 대규모 이벤트에도 적용 가능
- release cycle 추가에도 성공. 사고에 대한 초기 신호도 포착
포스팅이 없는 블로그
네이버 D2 : 4/18
kakao Tech : 4/14
WATCHA 팀 블로그 : 4/20
무신사 기술 블로그 : 4/11
야놀자 : 4/14
직방 TECH : 3/31
SK DEVOCEAN : 4/14
Linked in Engineering : 3/7
댓글남기기