WEB/web 지식14 동기와 비동기 개념과 차이 동기(Synchronous : 동시에 일어나는) - 동기는 말 그대로 동시에 일어난다는 뜻이다. 요청과 그 결과가 동시에 일어난다는 약속이다. - 바로 요청을 하면 시간이 얼마나 걸리던지 요청한 자리에서 결고가 주어져야 한다. - A노드와 B노드 사이의 작업 처리 단위(Transaction)를 동시에 맞추겠다. 비동기(Asynchronous : 동시에 일어나지 않는) - 비동기는 동시에 일어나지 않는다를 의미한다. 요청과 결과가 동시에 일어나지 않을거라는 약속이다. - 요청한 그 자리에서 결과가 주어지지 않음 - 노드 사이의 작업 처리 단위를 동시에 맞추지 않아도 된다. 동기와 비동기 각각의 장단점 동기 방식 장단점 - 설계가 매우 간단하고 직관적이지만 결과가 주어질 때까지 아무것도 못하고 대기해야 한다.. 2023. 2. 28. Framework vs Library 프레임워크(Framework)란? - 프레임워크는 뻐대나 기반구조를 뜻하고, 제어의 역전 개념이 적용된 대표적인 기술이다. - 소프트웨어의 특정 문제를 해결하기 위해서 상호 협력하는 클래스와 인터페이스의 집합 - 완성된 어플리케이션이 아닌 프로그래머가 완성시키는 작업 - 가져다가 사용한다기 보다는 거기에 들어가서 사용한다는 느낌/관점으로 접근 - 객체 지향 개발을 하게 되면서 통합성, 일관성의 부족이 발생되는 문제를 해결할 방법중 하나 프레임워크의 특징 - 특정 개념들의 추상화를 제공하는 여러 클래스나 컴포넌트로 구성되어 있다. - 추상적인 개념들이 문제를 해결하기 위해 같이 작업하는 방법을 정의한다. - 컴포넌트들은 재사용이 가능하다. - 높은 수준에서 패턴들을 조작화 할 수 있다. 라이브러리(Libr.. 2023. 2. 10. Spring security 정리 1. 웹의 인증 및 인가 ● 인증(Authentication) : 사용자 신원을 확인하는 행위 - 회사 출입을 위한 출입증 확인 혹은 생체 정보, 인식 ( 너 누구누구 맞아?) - 아이디/패스워드, 각종 인증서 ● 인가(Authorization) : 사용자 권한을 확인하는 행위 - 주로 역할에 따른 사용 권한 관리 - 특정게시판 조회 권한 - 회사 건물 내 접근 권한 관리 I. 방문자 -> 회의실만 접근 가능 II. 직원 -> 회의실, 사무실 접근 가능 III. 관리자 -> 회의실, 사무실, 서버실, 물품보관실 접근 가능 2. 쿠키와 세션 ● HTTP(HyperText Transfer Protocol) : 웹 상에서 데이터에 대한 요청과 응답을 주고 받는 규칙 ● State(상태) : 클라이언트(사용자).. 2022. 11. 28. OAuth2 카카오 로그인 소셜 로그인 탄생 배경 - 모든 웹 사이트에서 회원가입 과정을 거치는 것은 사용자에게 부담이 된다. - 매번 번거로운 회원가입 과정을 수행해야 할 뿐 아니라, 웹 사이트마다 다른 아이디와 비밀번호를 기억해야 한다. - 또한 웹 사이트를 운영하는 측에서도 회원들의 개인정보를 지켜야하는 역할이 부담이 된다. - 이런 문제를 해결하기 위해 OAuth를 사용한 소셜 로그인이 등장함 OAuth 란? OAuth는 인터넷 사용자들이 비밀번호를 제공하지 않고 다른 웹사이트 상의 자신들의 정보에 대해 웹사이트나 애플리케이션의 접근 권한을 부여할 수 있는 공통적인 수단으로 사용되는, 접근 위임을 위한 개방형 표준이다. 사용자가 애플리케이션에게 모든 권한을 넘기지 않고 사용자 대신 서비스를 이용할 수 있게 해주는 HTTP .. 2022. 11. 28. kafka 기본 2022. 10. 30. CORS 이슈 해결 CORS란? CORS를 해결해보자 프로젝트를 하면서 프론트에서 서버에서 제공한 API로 요청하자, CORS 에러가 발생했다. 지금까지 CORS에러를 해결하기만 하고 정확히 CORS가 무엇이고 어떻게 동작하는지 알지 못했다. 이번에 CORS가 어떻게 동작하고 CORS 에러를 해결하는 방법을 공부하였고 공부하면서 알게된 내용을 정래해보았다. CORS? Cross Origin Resource Sharing CORS는 한 도메인 또는 Origin의 웹 페이지가 다른 도메인 (도메인 간 요청)을 가진 리소스에 액세스 할 수 있게하는 보안 메커니즘이다. CORS는 서버와 클라이언트가 정해진 헤더를 통해 서로 요청이나 응답에 반응할지 결정하는 방식으로 CORS라는 이름으로 표준화 되었다. CORS는 최신 브라우저에서.. 2022. 10. 25. OSI 7계층, TCP 4계층 2022. 10. 17. Web Service Architecture 1. Web Server는 웹 브라우저 클라이언트로부터 HTTP 요청을 받는다. 2. Web Server는 클라이언트의 요청(Request)을 WAS에 보낸다. 3. WAS는 관련된 Servlet을 메모리에 올린다. 4. WAS는 web.xml을 참조하여 해당 Servlet에 대한 Thread를 생성한다. (Thread Pool 이용) 5. HttpServletRequest와 HttpServletResponse 객체를 생성하여 Servlet에 전달한다. - 5-1. Thread는 Servlet의 service()메서드를 호출한다. - 5-2. service()메서드는 요청에 맞게 doGet() 또는 doPost() 메서드를 호출한다. - protected doGet(HttpServletRequest re.. 2022. 10. 10. HTTP API 설계 예시 2022. 10. 1. client to server 2022. 10. 1. POST, PUT, PATCH 차이점 HTTP Method 1.POST I.새 리소스 생성(등록) - 서버가 아직 “식별하지 않은” 새 리소스 생성 ex) 회원(리소스)에서 가입기능(method) ex) 회원(리소스)에서 수정기능(method) II. 요청 데이터 처리 - 단순히 데이터를 생성하거나, 변경하는 것을 넘어서 프로세스를 처리해야하는 경우 ex) 주문에서 결제완료 → 배달시작 → 배달완료 같은 단순히 값 변경을 넘어 프로세스의 상태가 변경되는 경우 - POST의 결과로 새로운 리소스가 생성되지 않을 수도 있을때 컨트롤 URI 사용 ex) POST /orders/{orders{/start-delivery (컨트롤 URI) 2. PUT I. 리소스를 대체 - 리소스가 있으면 “완전히” 대체 - 리소스가 없으면 생성 ex) 폴더안에 새.. 2022. 10. 1. HTTP API 설계 2022. 10. 1. 이전 1 2 다음