728x90

서버 7

[Web] SSO란 무엇인가?

1. SSO란 무엇인가? Single Sign-On의 약자로 여러 개의 사이트에서 한번의 로그인으로 여러가지 다른 사이트들을 자동적으로 접속하여 이용하는 방법을 말합니다. 일반적으로 서로 다른 시스템 및 사이트에서 각각의 사용자 정보를 관리하게 되는데, 필요에 따라서 사용자 정보를 연동하여 사용해야 하는 경우도 생기게 됩니다. 이 때, 하나의 사용자 정보를 기반으로 여러 시스템을 하나의 통합 인증을 사용하게 하는 것을 말합니다. 즉 하나의 시스템에서 인증을 할 경우 타 시스템에서는 인증 정보가 있는지 확인하고 있으면, 로그인 처리를 하도록 하고, 없는 경우, 다시 통합 인증을 할 수 있도록 만드는 것을 의미합니다. 즉, 하나의 아이디 및 패스워드를 통해 여러 시스템에 접근할 수 있는 통합 로그인(인증) ..

[Server]세션 클러스터링이란? Session Clustering

세션 클러스터링(Session Clustering) 이란? 두 대 이상의 WAS를 이용하는 경우 로드 밸런싱(대용량 트래픽 처리시 분산시키는 것) 또는 failover(장애 발생시 예비시스템으로 자동전환, 서버 이중화), auto scaling(AWS에서 EC2 인스턴스를 자동으로 생성하고 삭제해주는 서비스) 등의 대체된 WAS에게도 세션이 공유하게 하는 기술이다. 이 과정에서 고려해야할 점은 세션 정보 저장 영역을 늘리기 위해선 JVM 의 Heap 사이즈를 늘릴 수는 있지만 너무 늘리게 되면 "Full GC" 처리 시간 때문에 장애요인이 발생 할 수 있다. 클러스터 특징 1) 노드 장애 시 다른 노드에서 클라이언트와 통신 하여 서비스 제공 ex) Multicast통신 2) 부하 분산(LB)를 통해 성능..

[Node.js] #4 http 모듈로 서버 만들기(2)

3. 쿠키와 세션 이해하기 클라이언트에서 보내는 요청의 단점 → 누가 요청을 보내는지 모름. 로그인 이후 새로고침 후에도 로그아웃이 되지 않는 이유는 클라이언트가 서버에 내가 누군지를 지속적으로 알려주고 있기때문. 내가 누구인지 기억하기 위해서 서버는 요청에 대한 응답을 할 때 쿠키라는것을 같이 보낸다. 쿠키는 유효 기간이 있으며 name=로춘남 과 같은 단순한 '키-값'의 쌍이다. 서버로부터 쿠키가 오면 웹 브라우저는 쿠키를 저장해두었다가 다음에 요청 할 때마다 쿠키를 동봉해서 보낸다. 서버는 요청에 들어있는 쿠키를 읽어서 사용자가 누구인지 파악을 하게 된다. - 쿠키명-쿠키값 : 기본적인 쿠키의값 - Expires=날짜 : 만료 기한. 이 기한이 지나면 쿠키가 제거. - Max-age=초 : Expi..

node.js 2021.11.12

[Node.js] #2노드의 기능

1. REPL 사용하기 자바스크립트는 스크립트 언어이므로 미리 컴파일을 하지 않아도 즉석에서 코드를 실행 할 수 있음. 노드도 비슷한 콘솔을 제공하는데, 입력한 코드를 읽고(Read), 해석하고(Eval), 결과물을 반환하고(Print), 종료할 때까지 반복한다(Loop) 라고해서 REPL라고 부름(Read Eval Print Loop). 읽고, 해석한 뒤 바로 결과물을 출력했다. REPL은 한 두줄짜리를 테스트하기엔 좋지만 여러줄을 실행하기에는 불편함. 2. JS 파일 실행하기 코드가 길 경우에는 코드자체를 자바스크립트 파일로 작성하여 파일을 통쨰로 실행하는 것이 좋다. ex) node [자바스크립트 파일 경로] 3. 모듈로 만들기 모듈 : 특정한 기능을 하는 함수나 변수들의 집합. 모듈은 하나의 프로..

node.js 2021.11.11

[Node.js] #1 node.js 첫 시작. 노드(node.js) 란?

Node.js 란? : Chrome V8 JavaScript 엔진으로 빌드된 Javascript 런타임. 서버 : 네트워크를 통해 클라이언트에 정보나 서비스를 제공하는 컴퓨터 또는 프로그램을 말함 노드는 자바스크립트 프로그램이 서버로서 기능하기 위한 도구를 제공하므로 서버 역할을 수행 할 수 있음. 노드의 특성 1. 자바스크립트 런타임 쉽게 말하면 자바스크립트 실행기로 이해 할 수 있다. 기존에는 자바스크립트를 웹 브라우저 위에서만 실행 할 수 있었음. V8과 libuv는 C와 C++로 구현되어 있지만 노드가 알아서 연결해주기때문에 노드를 사용 할 때 C와 C++는 몰라도 실행 가능하다. 2. 이벤트 기반 이벤트 기반(event-driven)이란 이벤트가 발생할 때 미리 지정해둔 작업을 수행하는 방식을 ..

node.js 2021.11.11

[Linux] 클라우드 서버 8080 톰캣 포트 숨기기 포트포워딩

클라우드 서버에 배포한 프로젝트를 URL로 접근하는데, http://IP주소:8080/test.do 이런식으로 8080이 붙어야만 접근 할 수 있었다. 8080을 숨긴채로 접속하기 위해 검색 ㅊ ㅜㄹ동 먼저 Putty로 해당 계정에 접근을 해야한다. su 명령어를 통해 들어가도 좋고~ root로 들어가도 좋고 편한대로! 그 다음에 명령어를 적어주자. iptables -A PREROUTING -t nat -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 8080 입력해주면 You have new mail in /var/spool/mail/root 이런게 나온다. 특별한 반응은 없는듯! 해당 명령어를 입력했다면, 이후 ip주소 입력시 포트번호를 입력하지 않아도 접근 할 수..

Linux 2021.08.25

[Java] Publising failed with multiple errors file not found

이클립스에서 톰캣 서버를 돌리다가 처음보는 에러가 나타났다. publising failed with multiple errors file not found 라는 는 메시지로 해당되는 jar 파일을 잘 못찾는것 같았다. 몇 번 검색을 해보니깐 해결 방법은 크게 2가지가 나왔다. 1. 이클립스 프로젝트탭에서 프로젝트를 Clean 2. 이클립스 하단 Server 탭에서 Tomcat v8.5 Server at localhost 라는 부분에서 우클릭 후 Clean Tomcat work directory를 클릭하면 된다. 보통 이런 간단한 서버(?)문제의 경우에는 Clean 같은것들을 주로 하면 해결 되는거 같다.

오류 모음집 2020.10.06
728x90