본문 바로가기

전체 글

(51)
Java Stream내에서 Exception Handling 동료의 Code를 Review하는 시간에 갑론을박 했던 내용이 있어 관련 내용을 찾아보고 정리해 보았다. 이슈가 됐던 거는 아래 Code-1과 유사한 코드였는데 그 내용은 stream()으로 진행하는 Lambda Function안에 try~catch 구문을 사용하는 것이 맞느냐? 좋은 코드냐? 는 논쟁이었다. ... Member member = memberRepository.findAllByGroup(groupName).stream(). .findfirst() .map(v -> { try { return mapper.readValue(v.getGroupInfo(), MemberGroup.class); } catch (JsonProcessingException e) { log.error("JsonProce..
NGINX MSA 디지털 트레이닝 - 8강 : Basics and Best Practices 강의 동영상 : https://www.youtube.com/watch?v=rQa2HrXXTJA 원본 동영상 : https://www.youtube.com/watch?v=pkHQCPXaimU 8강은 7강과 거의 동일한 내용을 설명하고 있다. 대부분의 내용이 7강 : NGINX Kick Starter 과 중복되어 있지만, 예시 위주로 다시한 번 정리했다. Simple Virtual Server server { listen 80 default_server; server_name [www.example.com](http://www.example.com); return 200; } server : virtual server context를 정의하는 Block listen : 수신할 IP, Port Number를 ..
NGINX MSA 디지털 트레이닝 - 7강 : NGINX Kick Starter 강의 동영상 : https://www.youtube.com/watch?v=sAXVraylurw 원본 동영상 : https://www.nginx.com/c/nginx-kick-start/, https://www.youtube.com/watch?v=rKXYxOVm0YE Kick Starter 강의는 이전 1~6강 강의와 중복되는 내용이 많아서 해당 부분은 Link로 대체하고 나머지 부분만 정의했다. 1. 주요 특징 및 Context Logic 참조 : NGINX MSA 디지털 트레이닝 - 1강 : Context Logic 추가 내용 - No Downtime Master Process와 Configuration을 읽고 Worker들을 Update하는 역할을 하며 Worker Process들은 들어오는 Requ..
NGINX MSA 디지털 트레이닝 - 6강 : NGINX App Protect - WAF 강의 동영상 : https://www.youtube.com/watch?v=Gk449A7u8sg 원본 동영상 : https://www.youtube.com/watch?v=NuJwQ7E8Zs8 1. Web Application Firewall HTTP Protocol위에서 동작하는 Firewall. Web Service로 오는 HTTP Request들을 Filtering, Blocking, Mintoring하는데 사용. Layer 7 Firewall 이다. 아래 그림에서 Firewall을 지나간 HTTP Request들 중에서 Mal-ware나 Invalid Request들을 구분해서 Backend에 위치한 Application Server Group을 보호하는 역할을 맡는다. 2. NGINX App Pro..
NGINX MSA 디지털 트레이닝 - 5강 : Kubernetes NGINX Ingress Controller 강의 동영상 : https://www.youtube.com/watch?v=7jzZAUUReMg 원본 동영상 : https://www.youtube.com/watch?v=Q2iGx3iW-Mg NGINX 공식 문서 : https://docs.nginx.com/nginx-ingress-controller NGINX Ingress Controller Github : https://github.com/nginxinc/kubernetes-ingress 1. Ingress Controller Ingress Kubernetes Cluster내에서 동작하는 Service들의 Load Balancer 역할을 하는 Kubernetes Cluster의 한 요소 주요 기능 Routing 지원 : Host-based Routin..
NGINX MSA 디지털 트레이닝 - 4강 : API Gateway 강의 동영상 : https://www.youtube.com/watch?v=LPZqjKp8ra8 원본 동영상 : https://www.youtube.com/watch?v=9f4LUALgyAU 1. API Management 특정 API Gateway에 적용되는 정책을 관리. 주요 역할 Policy Management : 특정 API Gateway의 정책을 정의 Analytics & Monitoring : 어떤 API가 어떻게 활용되는 지 분석 및 Monitoring Developer documentation : 어떤 API가 제공되는 지 명시한 Documentation 제공. 2. API Gateway API Request? API Gateway는 API Management의 부분 집합의 개념으로, Cli..
NGINX MSA 디지털 트레이닝 - 3강 : Load Balancing 강의 동영상 : https://www.youtube.com/watch?v=sLoBvXNPTmk 원본 동영상 : https://www.youtube.com/watch?v=a41jxGP9Ic8 1. What is Load Balancing 1.1 Definition Load Balancing is defined as the methodical and efficient distribution of network and application traffic across multiple servers in a server farm. 그림과 같이 Load Balancer는 클라이언트와 백엔드 서비스 사이에 위치해서 클라이언트로부터 Request를 받아 해당 Request를 수행할 수 있는 upstream 서비스 또는..
NGINX MSA 디지털 트레이닝 - 2강 : Reverse Proxy NGINX에서 제공하는 디지털 트레이닝 코스 수강 하면서 정리한 내용이다. 원본 동영상 : https://www.youtube.com/watch?v=MqBNBPXxLLY 1. Proxy Forward Proxy : Client Side에서 실제 요청한 Client를 숨기고, 그를 대신해 요청을 전달. Reverse Proxy : Server Side에서 실제 Backend Server를 숨기면서 그 역할을 대신 수행. 2. Reverse Proxy 설정을 위한 Directive Syntax : proxy_pass ; 수신된 Request를 으로 정의된 backend server의 URL로 전달 의 address는 Domain name, IP Address&port number, unix socket, u..