🕸️ Web
HTTP/1.1 vs HTTP/2 - 동시 요청 처리 방법에 따른 대용량 트래픽 처리
프론트엔드 개발에서는 요청을 동시적으로 처리해야 하는 경우가 빈번합니다.이때 HTTP 1.1과 HTTP 2의 처리 방식 차이를 이해하는 것이 중요합니다.참고로, Spring에서는 HTTP/2를 수동으로 활성화해야 사용 가능합니다. HTTP/2는 Server에 의존하기 때문입니다.또한 HTTP/2는 TLS 위에서 작동하기 때문에 아래와 같은 키스토어를 만들어주고 시작해야합니다.> keytool -genkeypair -alias multiflexing -keyalg RSA -keysize 2048 -storetype PKCS12 -keystore src/main/resources/keystore.p12 -validity 3650 -storepass password -dname "CN=localhost, OU..
Cloud Database Service(2) - Firebase의 Realtime Database 규칙
이전 글에도 설명했다시피 Realtime Database를 선택할 일은 거의 드물다. 그래서 Realtime Database 규칙에 관한 글을 찾기에도 꽤나 정보가 부족했다.(사실 아예 없었다) 그래서 혹여나 Realtime Database를 사용할 사람이 있다면 아래와 같은 규칙으로 사용하면 된다. 직접 코드부터 보고 싶다면 예시부터 확인하는 게 좋다. 규칙 { "rules": { ".read": false, ".write": false } } 초기 권장 설정으로 진행하면 해당 DB에 대한 읽기 쓰기 권한을 다 false로 설정이 된다. { "rules": { ".read": "auth != null", ".write": "auth != null" } } 그리고 Firestore의 인증 서비스를 이용해..
Cloud Database Service(1) - 클라우드 DB의 종류
이게 왜 필요할까? 이 글의 고민은 아래의 생각에서 시작한다. "나는 DB를 좀 더 쉽게 쓰고싶어." 어플리케이션을 좀 구축해본 사람이라면 느끼는 부분이 있다. 어떠한 어플리케이션을 만드느냐에 따라 서버 구축의 형태는 다 다를 수 있다는 점이다. 나는 개인적으로 서버가 존재하지 않는 어플리케이션을 만들고자 하는 열망이 있다. 실제로 서버가 존재하지 않는 어플리케이션이 한 해 영업이익 100억을 돌파하는 경우를 봤기 때문이다. 근데 그건 그렇다쳐도 서버가 존재하지 않으면 만들 수 있는 어플리케이션이 한정적인건 변함없는 사실이다. 그럴때 서버를 어떻게 구축할 지에 대한 고민은 빠지지 않는다. 그럴때마다 아래의 일련의 고민이 튀어나온다. "간단하게 만들거라 서버가 필요하긴 한데 전기세 감당하기도 싫고 서버에 ..
SOP(Same Origin Policy)와 CORS(Cross Origin Resource Sharing)의 차이
SOP(Same Origin Policy) 같은 출처에서만 리소스를 공유할 수 있다. 즉, 자신의 프로젝트 내에 있는 리소스만 공유가 가능하다는 정책이다. 에선 클라이언트에 head 요청 헤더에 origin을 담아 서버에 보내고 다시 클라이언트로 가져온 값과 비교를 해야하는데, 비교 결과가 같으면 Same Origin( 프로토콜, 포트, 호스트 모두 일치해야 Same Origin ) 다르면 Cross Origin으로 판단하고 불러오질 못한다. CORS(Cross Origin Resource Sharing) 교차 출처 리소스 공유라는 뜻이다. 예를들어 내 프로젝트에서 다른 프로젝트의 자원을 요청하는 것을 말한다. CORS는 html 태그인 link(css), img, script, iframe 등에서는 기..