목록전체 글 (53)
웹풀스택 공부 중
StorageWB내 저장WB의 DB같은 느낌Storage 등장전에는 Cookie만 섰어야 했다Storage: WB의 저장소유저에 의한 변겅된 옵션 상태 등 필요에 따른 조회가 필요할 때 (진짜 저장소)WB에서만 사용 가능한 큰 정보를 담는다 (만료시간이 없다!)저장 가능 용량: 10MB범위: 지정된 Domain내에서 모두 유효보안: WB내에서만 접근 가능Script로도 접근 가능하다브라우저간 공유 불가능ex.) 마지막에 어떤 계정으로 로그인 했는지 저장하고, 1년 뒤 로그인할때 표시가능Cookie: WS에게 WB가 매번 전달할 특정 정보를 위하 저장소 (Stateful)로그인 인증 정보 등, WS가 매번 요청할때마다 필요한 정보를 WB에 넣어두고 전달받아 쓰기 가능하다WS에게 반복적으로 전달하기 위한 작..
복습!HTTPHTTP is a stateless ProtocolStateless (무상태성):다음 프로세스는 누가(WB) 어떤 요청을 했는지 알 수 없음매번 요청할 때 마다 인증이 필요하다구현하기 위해 JWT (JSON Web Token)이 필요하다최소한의 자원으로서버 유지를 가능하게 한다Stateful (상태성):다음 프로세스가 이전에 누가(WB) 어떤 요청을 했는지 알 수 있음요청마다 별개의 작업 수행 및 결과 반환 가능서버가 여러개일 경우, 어떤 서버를 호출해도, 서버에 장애가 생기더라도 다른 서버가 역할을 대신할 수 있다매번 요청할 때 마다 인증이 필요없다최초의 한번만 필요하다WS가 WB에게 최초로 전달해줄때: WS 응답(Response) 헤더 Set-Cookie로 전송한다WB가 이후로 웹 서버에..
신청한지 거의 두달만에 연락이 와서 당황했었다...풀스택 과정 준비하다보니 코테에서 살짝 손 때자마자 연락이 오다니.. 코딩 테스트는 크게 3가지 부분으로 나눠져있었으며, 코딩 테스트 할 수 있는 시간은 한시간, 총 3문제를 풀어야했다.나머지 2.5~3시간은 인성검사와 적성검사로 나눠졌었다. 코딩 테스트는 부랴부랴 준비했던 DFS, BFS, Mapping 쪽에서 하나도 안나오고 오히려 String, List쪽에서 나와 난이도가 생각보다 어렵진 않았다! (물론 String, List쪽도 높은 수준의 알고리즘을 원해 어렵긴했다) 근데 문제는 인성검사 부분3시간짜리 인성검사는 생각보다 많이 힘들었다. 딱히 준비할 수 있는 부분도 아니고, 3시간이나 주길래 좀 불안했었다.불안은 틀리지 않았고, 개인적으로 코테..
서버 부하 완하 및 보안 (요청/응답 변조)를 위함Proxy 사용 이유보안:IP 숨기기 및 프록시 서버를 방화벽으로 사용가능 (= Proxy Firewall: 프록시 방화벽)속도 (캐시):동일 요청이 들어오면 서버에 따로 접속할 필요 없이 (Proxy Server에) 저장된 Cache 자원을 반환한다전송 시간 절약 및 외부 트래픽을 줄여 네트워크 병목 현상 방지 = 서비스의 속도를 높여준다네트워크 병목 (Bottleneck) 현상: 전체 시스템의 성능이나 용량이 하나의 요소로 인해 제한 받는 현상ACL (Access Control List):사이트 접근 범위 정책 정의: Proxy Server에 접속할 수 있는 범위를 설정하는 옵션Subnet 단위의 방화벽이다Log / Audit:리포트, 모니터링 용도회..
HTTP Cache (캐시)HTTP Cache란?웹 성능 개선을 위함매 요청에 따른 WB와 WS의 부하를 줄여준다WB: 이전에 받았던 응답을 저장 후, 매번 요청할시 저장해놓은 응답을 재사용하여 반환을 한다결과적으로 결과 반환 비용 (시간 + 네트워크)를 줄일 수 있다네트워크 트래픽 및 비용 감소유저 경험 증진 (로딩 없이 바로 사용가능)WS: 이전에 반환한 응답을 저장 후, 매번 요청 받을시 저장해놓은 응답을 재사용하여 반환한다결과적으로 결과 생성 비용 (노동, 자원)을 줄일 수 있다결과를 만드는 CPU나 Memory를 사용하지 않아도 된다서버 자원을 사용하지 않지만 네트워크만 발생한다어찌됬든 결과를 반환해야되니까블특정 다수의 WB에게도 캐시된 자원 제공이 가능하다물론 WB의 캐시는 WB의 유저만 활용..
Longest Common Subsequence: Top-Down Approach Given two strings text1 and text2, return the length of their longest common subsequence. If there is no common subsequence, return 0. A subsequence of a string is a new string generated from the original string with some characters (can be none) deleted without changing the relative order of the remaining characters. For example, "ace" is a subseque..