Web(26)
-
[Web.dev] Web Security (2)
Overview web.dev에서 소개하는 Web Security에 대한 내용들을 2부에 걸쳐서 정리합니다. 모든 내용들을 다 다루지는 않고, 개인적으로 중요하다고 생각하는 부분들을 추려서 중점적으로 정리했습니다. 자세한 내용들은 아래 Table of Contents의 링크를 통해 확인하실 수 있습니다. Table Of Contents 정보 유출 방지 Browser sandbox Same-origin policy Cross-Origin Resource Sharing (CORS) Making your website "cross-origin isolated" using COOP and COEP Why you need "cross-origin isolated" for powerful features Prote..
2022.02.18 -
[CloudWatch] Alarm & Events Usecases
UseCase CloudWatch Alarm을 사용하여 EC2 인스턴스를 자동 복구하려면 어떻게 해야 하는가? CloudWatch Events를 사용하여 데이터베이스 rollover등의 Cron job을 정기적으로 수행하기 위해서는 어떻게 해야 하는가? CloudWatch Alarm CloudWatch Alarm은 AWS 리소스에 대한 실시간 모니터링을 제공하고, Alarm 하나당 CloudWatch Metric하나를 모니터링하다가 사용자가 설정한 임계치를 돌파했을 경우 "In Alarm" 상태로 바뀌어 이후 동작을 수행하게 됩니다. SNS Topic을 사용해서 Slack, Email등을 통해 알림을 주기도 하고 기본적으로 제공하는 Action을 통해 인스턴스를 복구하거나, 재시작하는 등의 동작을 수행할..
2021.07.22 -
React Deep Dive - React Event System (1)
위 아티클은 React 17버전(17.0.1) 기준으로 작성되었습니다. 17버전 이전(16버전 이하)에서는 조금 다르게 동작할 수 있으며, 이 차이점에 대해서는 이어지는 시리즈(2)에서 다룰 예정입니다. Overview 리액트로 웹 애플리케이션을 개발하다보면 사용자와 유연하게 상호작용하는 컴포넌트를 만들기 위해 onClick, onChange등의 이벤트 핸들러(Eventhandler)를 사용해야 합니다. 크로스 브라우저 대응 등을 위해 리액트 자체적으로 제공하는 안정성 있는 이벤트 핸들링 시스템 덕분에 대부분의 경우 핸들러를 붙이기 원하는 컴포넌트에 다음과 같은 형태로 이벤트 핸들러를 넣어주면 되지만, 컴포넌트들이 복잡하게 상호작용하고 있는 대형 애플리케이션의 경우, 때로는 이 이벤트 핸들러들로 인해 의..
2021.07.19 -
개발일지 (4 & 5월 회고)
Overview 4월 회고를 쓰려고 보니 5월이 다 지나가 버렸다. 별 수 없이 4~5월 회고를 쓰기 위해 키워드를 정리하는데 생각보다 이것저것 배운 게 많은 것 같아서 회고할 타이밍을 굉장히 잘 잡았다는 생각이 들었다. 초당 수만 ~ 수십만 건의 대용량 트래픽이 발생하는 애플리케이션의 최전선에서 여러 버저닝을 관리하고 예측하기 어려운 에러들을 핸들링하는 기회가 모든 개발자들에게 찾아오는 건 아닐 것 같은데, 이런 경험을 쌓아나간 것 같아서 감사한 마음이 들었다. FrontEnd Service With Million Traffics 900만명 가까운 사용자가 접속하는 웹 프로젝트를 맡아 개발하는 데에는 참 많은 책임이 따른다는 걸 배웠다. 이전에는 TF에서 맡은 컴포넌트만 몇 개 만든 다음에 QA 돌려보..
2021.05.31 -
[Optimization] using JSX props
Kent. C Dodds의 'One simple trick to optimize React re-renders'를 Reference 하였습니다. Overview React를 사용해서 Web Application을 만들 때, 퍼포먼스의 향상하기 위하여 여러 가지 렌더링 최적화 기법들을 시도합니다. 대표적인 방법이 React.Memo를 사용하여 불필요한 리렌더링을 방지하기, 상태(State)를 업데이트 하는 로직은 최대한 하위 컴포넌트로 내리기등이 있습니다. 이번 포스팅에서는 자주 사용되고, 또 자주 접할 수 있는 위 두 가지 최적화 방법 이외에도 JSX가 가지고 있는 특성을 사용해서 불필요한 리 렌더링을 방지하는 방법을 살펴보려고 합니다. JSX JSX는 Javascript의 확장 문법으로, React에서..
2021.04.04 -
개발일지 (1월 2주차 회고)
Overview 본격적으로 2021 1Q 업무를 수행하면서 개발하는 내용들이 구체적으로 정해지고, 그에 따라 공부해야 하는 내용들도 구체적으로 정해졌던 한 주였다. 지난주의 다짐에 따라 우선 주말에는 취미로 iOS 개발 공부를 시작했다. iOS개발을 하기 위한 여러 가지 방법 (Object C, Swift, React Native등) 들이 있지만 Stanford cs193p강의를 메인으로 삼았기 때문에 개발 내용은 Swift, SwiftUI로 진행하는 일이 대부분이었다. 좋은 학교에서 체계적으로 진행하는 수업이다보니 과제의 퀄리티도 굉장히 좋았고, 단순히 클론 코딩으로 가르치는 방식이 아닌 내부적으로 Swift라는 언어가 동작하는 방식까지 소개하는 수업이라 흥미가 있었다. 개인적으로는 OOP를 '지원'한..
2021.01.10