본문 바로가기

분류 전체보기

(644)
34일차 - 도커 포트포워딩, 도메인 - 도커는 호스트 전용 어댑터 방식(NAT 방식 + 외부 접속)으로 외부와 통신한다. - 도커 컨테이너는 도커 호스트에서 식별할 수 있는 IP를 할당받는다. docker run -d --name==nginx_1 --rm nginx docker exec -it nginx_1 bash ip addr => command not found apt-get update apt-get install iproute2 ip addr => 출력 성공(172.17.0.2) exit => nginx_1 에서 빠져나간다. ping 172.17.0.2 => 네트워크 상태 점검. 종료하려면 Ctrl+c curl 172.17.0.2 => curl http://172.17.0.2:80/의 생략형 docker inspect nginx_..
[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 => 하나의 커넥션에서 응답을 기다리지 않고 순차적인 여러 ..
[프로그래머스/자바] 머쓱이보다 키 큰 사람 class Solution { public int solution(int[] array, int height) { int answer = 0; for(int num : array) { if(num > height) answer ++; } return answer; } } import java.util.Arrays; class Solution { public int solution(int[] array, int height) { return (int) Arrays.stream(array).filter(value -> value > height).count(); } }
[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..
33일차 - 도커 허브, 도커 명령어 https://hub.docker.com/ Docker Hub Container Image Library | App Containerization Deliver your business through Docker Hub Package and publish apps and plugins as containers in Docker Hub for easy download and deployment by millions of Docker users worldwide. hub.docker.com 이미지 == 프로그램 / 컨테이너 == 프로세스 => 이미지를 실행하면 컨테이너가 시작 systemctl status docker : docker 실행 중인지 상태 확인 docker pull 이미지명(또는 ID) : 이미..