본문 바로가기

WEB개념

(18)
CORS (Cross-Origin Resource Sharing) CORS (Cross-Origin Resource Sharing)는 웹 페이지가 다른 도메인에 있는 리소스를 요청할 때 발생할 수 있는 보안 문제를 해결하는 메커니즘  Access-Control-Allow-Origin: 요청을 허용할 도메인을 명시Access-Control-Allow-Methods: 허용할 HTTP 메소드(예: GET, POST 등)Access-Control-Allow-Headers: 허용할 HTTP 헤더Access-Control-Allow-Credentials: 쿠키나 인증 정보를 포함한 요청을 허용할지 여부  도메인이 다를 경우 메소드OPTION을 보내 허용된 origin, method등을 체크 CORS (Cross-Origin Resource Sharing)에서 Preflight O..
공인IP, 사설IP, NAT, localhost, 0.0.0.0 1. 공인 IP 주소 (Public IP Address) 공인 IP 주소는 인터넷상에서 유일하고 전 세계적으로 고유한 주소입니다. 이 주소는 인터넷 서비스 제공업체(ISP)에 의해 할당되며, 인터넷을 통해 외부 네트워크와 통신하는 데 사용됩니다. 특징전 세계에서 유일: 공인 IP는 전 세계 어디서나 고유하며, 인터넷에 연결된 모든 장치가 이를 통해 서로 소통할 수 있습니다.ISP 할당: 공인 IP는 인터넷 서비스 제공업체(ISP)가 사용자의 네트워크에 할당합니다. 예를 들어, 가정용 인터넷에서는 ISP가 집에 하나의 공인 IP 주소를 제공합니다.직접 접근 가능: 공인 IP는 외부 네트워크에서 해당 주소로 직접 접근할 수 있습니다. 이는 서버, 웹사이트, 클라우드 서비스 등에 사용됩니다.  사용 예시웹 서..
MSA(Micro Services Architecture) 모놀리식 아키텍처(Monolithic Architecture)는 전체 애플리케이션을 단일 코드베이스에서 관리하는 방식입니다.즉, 애플리케이션의 모든 기능이 하나의 응집된 단위로 작성되고 배포됩니다. 이 방식은 초기 개발 단계에서는 단순하고 직관적일 수 있지만, 애플리케이션이 커지면서 여러 가지 확장성, 유지 보수 등의 문제를 겪을 수 있습니다.  MSA는 Microservices Architecture의 약자로, 마이크로서비스 아키텍처를 의미합니다. 이는 소프트웨어 아키텍처의 한 접근 방식으로, 대규모 애플리케이션을 작고 독립적인 서비스들로 나누어 구성하는 방식입니다. 각 서비스는 독립적으로 배포되고, 자체적으로 개발 및 유지 관리됩니다. 마이크로서비스 아키텍처 (MSA)의 특징작고 독립적인 서비스:애플..
IasS, PasS, SasS IaaS, PaaS, SaaS는 클라우드 컴퓨팅(가상화된 IT 리소스를 인터넷 서비스로 제공하는 것)의 주요 서비스 모델로, 각 모델은 제공하는 서비스의 범위와 관리 책임이 다릅니다.  1. IaaS (Infrastructure as a Service) IaaS는 인프라 서비스로, 사용자가 서버, 스토리지, 네트워크, 가상화 등과 같은 IT 인프라를 클라우드에서 제공받는 서비스입니다. 사용자는 하드웨어나 운영 체제 수준에서 인프라의 관리와 운영을 하지 않고, 클라우드 제공자가 이를 관리하고 제공합니다. 사용자는 필요에 따라 컴퓨팅 자원을 임대하고 관리할 수 있습니다. 특징스토리지(디스크) 및 네트워크 자원을 제공.사용자는 운영체제, 애플리케이션 등에서 더 많은 제어 권한을 가짐.유연성이 높고, 확장성이 ..
[Node] Node.js , npm, pnpm, yarn Node.js? Node.js는 JavaScript를 사용하여 서버 사이드 애플리케이션을 개발할 수 있는 런타임 환경입니다. 주로 비동기 이벤트 기반의 서버 사이드 프로그래밍을 위해 설계되었으며, 구글의 V8 JavaScript 엔진을 기반으로 합니다. 다음은 Node.js의 주요 특징과 용도입니다 노드를 통해 다양한 자바스크립트 애플리케이션을 실행할 수 있으며, 서버를 실행하는 데 제일 많이 사용된다. JavaScript를 서버에서도 사용할 수 있도록 만든 프로그램이다. V8이라는 JavaScript 엔진 위에서 동작하는 자바스크립트 런타임(환경)이다. Node.js는 서버사이트 스크립트 언어가 아니다. 프로그램(환경)이다. 웹서버와 같이 확장성 있는 네트워크 프로그램을 제작하기 위해 만들어졌다. 장점..
[SpringBoot] 스프링부트 참고 1. 스프링부트 View, Template 우선순위 컨트롤러가 있을 경우에 그 컨트롤러가 가리키는 템플릿으로 우선적으로 불러준다. (우선순위 1번) 컨트롤러가 없을 경우에 static(정적)에 있는 html(뷰 템플릿)을 불러준다. (우선순위 2번) 2. 스프링부트
[WEB개념] Virtual Dom Vue.js 는 주로 Angular와 React의 장점들을 고루 갖고 있는 특징이 있습니다. 이번에 Vue.js 2.0 버전의 주요 특징 중 하나로 페이지 변경을 위한 "Virtual DOM" 이 추가되었습니다. React와 Ember에서 사용하는 이 "가상 돔"은 웹 페이지의 변경 속도를 매우 빠르게 해줍니다. 브라우저 DOM Rendering 과정 HTML 다운로드 및 파싱: 브라우저는 웹 페이지의 HTML 문서를 다운로드하고, 파싱하여 DOM 트리를 생성합니다. 파싱 과정에서 문서의 각 요소와 태그를 인식하고, 요소의 계층 구조 및 속성을 결정합니다. CSS 다운로드 및 처리: 브라우저는 HTML 파싱 과정과 병행하여 CSS(Cascading Style Sheets) 스타일 시트를 다운로드하고 처리..
[NETWORK] EJB EJB는 "Enterprise JavaBeans"의 약어로, 서버 측 Java 애플리케이션 개발을 위한 스펙이며, 분산 시스템 환경에서 업무 로직을 처리하기 위한 컴포넌트 모델입니다. EJB는 Java EE(Java Platform, Enterprise Edition) 스펙의 일부로, Java EE 컨테이너 내에서 실행되며, 일반적으로 데이터베이스 연동, 트랜잭션 관리, 보안 등의 기능을 제공합니다. EJB는 Java RMI(Remote Method Invocation) 기술을 사용하여 다른 Java 애플리케이션에서 EJB를 호출할 수 있습니다. EJB는 세 가지 유형이 있습니다. 첫째는 세션(Session) EJB로, 클라이언트와 상호작용하는 비즈니스 로직을 처리합니다. 둘째는 엔티티(Entity) E..