본문 바로가기

공부 기록/영상 후기

(184)
[10분 테코톡] 제이의 Spring AOP https://youtu.be/Hm0w_9ngDpM 인프라 로직 => 부가 기능 - 애플리케이션의 전 영역에서 나타날 수 있음 - 중복 코드를 만들어낼 가능성이 있어 유지보수가 힘듦 - 비즈니스 로직과 함께 있으면 비즈니스 로직을 이해하기 어려워짐 AOP(Aspect-Oriented Programming) - OOP와 대비되는 개념이 아닌 보완하는 개념 - AOP 구현체 - Transactional, Interceptor, Filter ... AOP 용어 - Target : 어떤 대상에 부가 기능을 부여할 것인가 - Advice : 어떤 부가 기능을 부여할 것인가 - Before, AfterReturning, AfterThrowing, After, Around - Join point : 어디에 적용할 것..
[10분 테코톡] 하루의 실행 컨텍스트 https://youtu.be/EWfujNzSUmw Record로 JS 호이스팅 이해하기 - 선언문이 마치 최상단에 끌어올려진 듯한 현상. 선언 이전에도 에러가 나지 않고 변수를 참조할 수 있다. => 자바스크립트 엔진이 먼저 전체 코드를 스캔하면서 변수와 같은 정보를 실행 컨텍스트 어딘가에 기록해놓기 때문 => 환경 레코드(Environment Record), 식별자와 식별자에 바인딩된 값을 기록 - 생성 단계(Creation Phase) : 실행 컨텍스트 생성, 선언문만 실행해서 환경 레코드에 기록 - 실행 단계(Execution Phase) : 선언문 외 나머지 코드 순차적 실행, 환경 레코드를 참조하거나 업데이트 - 일시적 사각지대(Temporal Dead Zone) : let 또는 const로 ..
[10분 테코톡] 쿨라임의 HTTP/1.1, HTTP/2, 그리고 QUIC https://youtu.be/xcrjamphIp4 HTTP : 웹 상에서 클라이언트와 서버 간 통신을 위한 프로토콜 TCP(Transmission Control Protocol) => 3 Way Handshake. 신뢰성은 높지만 전송 속도가 느리다.(지연 불가피) UDP(User Datagram Protocol) => 신뢰성은 낮지만 전송 속도가 빠르다. HTTP/0.9 ~ /2 : TCP 사용 HTTP/1.0까지 => 커넥션 당 요청 1 & 응답 1. 매번 새로운 연결로 성능 저하, 서버 부하 비용 증가 HTTP/1.1 - Persistent Connection => 지정한 timeout 동안 커넥션을 닫지 않는다. - Pipelining => 하나의 커넥션에서 응답을 기다리지 않고 순차적인 여러 ..
[10분 테코톡] 코일의 Web Socket https://youtu.be/MPQHvwPxDUw 웹 소켓 - 두 프로그램 간의 메시지를 교환하기 위한 통신 방법 중 하나 - W3C와 IETF에 의해 자리잡은 표준 프로토콜 중 하나 - 현재 인터넷 환경(HTML5)에서 많이 사용된다. - 웹 소켓을 지원하는 브라우저의 경우 웹 소켓 프로토콜을 지원 특징 1. 양방향 통신(Full-Duplex) - 데이터 송수신을 동시에 처리할 수 있는 통신 방법 - 클라이언트와 서버가 서로에게 원할 때 데이터를 주고 받을 수 있다. - 통상적인 Http 통신은 클라이언트가 요청을 보내는 경우에만 서버가 응답하는 단방향 통신 2. 실시간 네트워킹(Real-Time Networking) - 웹 환경에서 연속된 데이터를 빠르게 노출 - ex. 채팅, 주식, 비디오 데이터..
[10분 테코톡] 디디의 Redis https://youtu.be/Gimv7hroM8A Redis(Remote Dictionary Server) : 외부에 있는(Remote) Dictionary라는 자료 구조를 사용하는 서버 - Database, Cache, Message broker - In-memory Data Structure Store - Supports rich data structure Cache : 나중의 요청에 대한 결과를 미리 저장했다가 빠르게 사용하는 것 In-memory Database : Database보다 더 빠른 Memory에 더 자주 접근하고 덜 자주 바뀌는 데이터를 저장하자. Java - Redis => 서버가 여러 대인 경우 Consistency의 문제 발생 Race Condition : 여러 개의 Threa..
[우아콘2020] 수십억건에서 QUERYDSL 사용하기 https://youtu.be/zMAX7g6rO_Y - JPAQueryFactory만 있으면 Querydsl을 사용할 수 있다. extends/implements를 다 제거해도 된다. - 동적 쿼리는 BooleanExpression 성능 개선 - Select exist 메서드 금지 SQL.exist는 조건에 맞는 값을 찾으면 바로 종료, SQL.count는 조건에 맞는 값을 찾아도 모두 스캔 Querydsl의 exists는 실제로 count() > 0 으로 실행된다. => exists를 직접 구현해야 한다. => limit 1로 조회 제한 cross join 회피 묵시적 join으로 cross join 발생(Hibernate 이슈라서 Spring Data JPA도 동일하게 발생!) => 명시적 join으..
MAC주소, IP주소, Port번호가 식별하는 것 https://youtu.be/JDh_lzHO_CA L4(전송 계층) --- Port 번호 L3(네트워크 계층) --- IP 주소 L1~L2 --- MAC 주소 MAC 주소 : NIC(Network Interface Card, 랜카드)에 대한 식별자 IP 주소 : Host(인터넷에 연결된 컴퓨터)에 대한 식별자 Port 번호 : 프로세스 식별자, 서비스 식별자, 인터페이스 식별자 ... 관점에 따라 다르게 해석할 수 있다. * NIC에 IP 주소가 여러 개 바인딩될 수 있다. => 컴퓨터 하나의 IP 주소가 여러 개일 수 있다. * MAC 주소(== 하드웨어 주소)는 변경 가능하다.
공유기의 IP주소는 왜 192.168.0.1이 되었을까요? | 쉽게보는 IT 상식, 디모의 테크 노트 https://youtu.be/cSA8sTYs4xY IPv4 => 0.0.0.0 부터 255.255.255.255 까지 총 4,294,967,296개의 주소를 나타낼 수 있다. 모두 인터넷을 사용하는 데 부여하는 것이 아니라 용도에 따라 나눠서 사용한다. ip 주소 고갈을 회피한 방법 - 사설 IP : 제한된 공간에서만 사용하는 사설 네트워크 허용. 인터넷에 직접 접속한 상태가 아닌 집이나 사무실 등에서 공유기나 라우터 등의 장비를 통해 내부에서 연결되어 있는 네트워크. 각각의 사설 네트워크마다 중복된 사설 IP 주소를 재사용할 수 있다. - DHCP(Dynamic Host Configuration Protocol) : 본래 IP는 장치 쪽에서 직접 설정하지만 DHCP를 사용하면 장치가 연결된 라우터에서..