분류 전체보기(164)
-
배치(Batch)란?
배치 작업은 무엇일까?? 배치 작업은 데이터를 실시간으로 처리하는 것이 아니라, 컴퓨터가 주기적으로 데이터를 일괄적으로 모아서 처리하는 작업입니다. 이는 일괄적으로 처리하기 때문에, 특정 시간 이후에는 자원을 거의 소비하지 않는 특징이 있다. 또한, 빠른 응답이 필요하지 않은 서비스의 경우에 적용할 수 있으며 보통 사용량이 적은 시간에 적용한다. 그렇다면, 배치 처리를 해야하는 이유는 무엇일까??? 반복적인 일을 효율적으로 처리할 수 있습니다. 컴퓨터(=시스템)의 부담을 줄일 수 있습니다. 지금까지 간단하게 배치에 대해서 알아봤습니다.
2023.04.06 -
동기 비동기 개념
동기 (Synchronous) 와 비동기(Asynchronous) 동기 방식은 서버에서 요청을 보냈을 때 응답이 돌아와야 다음 동작을 수행할 수 있다. 즉, A작업이 모두 진행 될 때까지 B작업은 대기해야한다. 비 동기 방식은 요청을 보냈을 때, 응답 상태와 상관없이 다음 동작을 수행할 수 있다. 즉, A작업이 시작하면 동시에 B작업이 실행된다. 그리고, 작업이 완료되는 즉시 응답이 된다. 동기 vs 비동기 동기는 디자인이 비동기보다 간단하고 직관적일 수 있지만, 결과가 주어질 때까지 아무것도 못하고 대기해야하는 문제가 있다. 하지만, 비동기는 동기보다는 복잡하지만 결과가 주어지는 데 시간이 걸려도 그 시간동안 다른 작업을 할 수 있어서 효율적일 수 있다. 출처 - https://poiemaweb.com..
2023.04.06 -
JWT에 대하여
JWT(Json Web Token)는 당사자 간에 정보를 JSON 개체로 안전하게 전송하기 위한 개방형 표준(RFC 7519)입니다. JWT는 토큰 자체를 정보로 사용하는 Self-Contained 방식으로 HMAC, RSA, ECDSA등으로 서명되어 있어서 신뢰할 수 있습니다. JWT의 구성 요소 JWT는 Header, Payload, Signature로 구성되며 각 부분은 Base64Url로 인코딩 되어 표현됩니다. 또한, 각 부분을 . 구분자를 사용해 구분해줍니다. 참고로, Base64Url은 암호화된 문자열을 반환하는 것이 아니라 같은 문자열에 대해 항상 같은 인코딩된 문자열을 반환해줍니다. Header 헤더는 2개의 key -value로 구성되어 있습니다. typ는 어떤 타입의 토큰인가를 나타내..
2023.03.31 -
Spring MVC 패턴
옛날 옛적에... MVC 패턴 이전에는 하나의 서블릿과 JSP만으로 비즈니스 로직과 뷰 로직을 모두 처리하였다. 이렇게 하게 되면, 한 서블릿이나 JSP이 너무 많은 역할을 담당하게 되고, 이는 곧 유지보수의 어려움으로 이어진다. 따라서, MVC 패턴이라는 것을 만들었다. MVC 패턴 등장 MVC 패턴은 하나의 서블릿이나, JSP로 처리하던 것을 컨트롤러(Controller)와 뷰(View)라는 영역으로 서로 역할을 나눈 것을 말한다. 컨트롤러(Controller) : HTTP 요청을 받아서 파라미터를 검증하고, 비즈니스 로직을 실행한다. 그리고 뷰에 전달한 결과 데이터를 조회해서 모델에 담는다. 모델 : 뷰에 출력할 데이터를 담아둔다. 뷰 : 모델에 담겨있는 데이터를 이용해 화면을 그린다. 뷰는 모델이..
2023.03.30 -
쓰레드 풀을 이용한 쓰레드 관리
최근에 계속 쓰레드에 관해서 공부하고 있다. 이번에는 Servlet 관점에서 보는 쓰레드 관리에 관하여 포스팅 하겠습니다. 먼저, Servlet 관점에서의 쓰레드를 보기 전에 웹의 요청 및 응답 흐름에 대해서 간단히 살펴보도록 하겠습니다. 먼저, 위 그림은 클라이언트에서 서버로 HTTP 요청을 보내고 서버는 이에 대한 응답을 주는 사진입니다. 과정을 정리해보자면, HTTP 요청시 WAS는 Request, Response 객체를 새로 만들어서 서블릿 객체 호출합니다.개발자는 Request 객체에서 HTTP 요청 정보를 편리하게 꺼내서 사용한다.개발자는 Response 객체에 HTPP 응답 정보를 편리하게 입력한다.WAS는 Response 객체에 담겨있는 정보로 HTTP 응답 정보를 생성한다. 2~3번에서..
2023.03.26 -
운영체제란?
운영체제에 대해 깊이 공부하기 전에, 운영체제가 어떤 것인 지 대략적으로 알아보도록 하겠습니다. 운영체제란? 쉽게 말해서, 컴퓨터의 자원을 ‘잘’ 사용하기 위한 소프트웨어이다. ‘잘’ 사용하는 것이랑 ‘운영체제’랑 어떤 관련이 있는 것인가?? 바로 CPU가 1개이기때문이다!! (멀티코어 CPU라고 해도 CPU보다 프로세스가 훨씬 더 많기 때문에 맥락상 큰 차이는 없다.) CPU가 1개이기때문에 하나의 CPU가 여러 소프트웨어를 처리해야한다. 그렇다면, CPU는 ‘어떤 방식’으로 여러 소프트웨어를 처리할 것 인가? 여기서의 ‘어떤 방식’이 운영체제이다! 그러면 운영제제는 구체적으로 어떤 일을 하는 것일까? 운영체제의 기능 운영체제는 많은 기능이 있지만 크게보면 아래 3가지이다. 프로세스 관리 프로세스 적재..
2023.03.18