Category

    [eclipse] 오류: 기본 클래스을(를) 찾거나 로드할 수 없습니다.

    Eclipse 환경에서 Run 수행 시 발생하는 에러입니다. 🙁 애매하고 경우의 수가 많지만 기본적으로 해결할 수 있는 방법에 대해 알아보겠습니다. 😀 프로젝트 우클릭 후 Run As > Run Configurations 를 클릭한다. Classpath에 들어간다. User Entries를 선택 후 Advanced 메뉴를 클릭한다. Add folder를 선택 후 OK를 클릭한다. 해당 프로젝트를 선택한 후 OK를 클릭하면 {project} - ₩ Classpath에 이렇게 추가가 된다. Run 돌리면 정상적으로 돌아가는 것을 확인할 수 있다. 👉 Run-> run configurations -> Classpath -> User Entries -> Advanced -> Add folder

    📡 FTP 통신, Socket 이야기

    FTP FTP 서버에 파일들을 업/다운로드 할 수 있게 해주는 프로토콜로 TCP/IP 네트워크(인터넷)상의 장치가 파일을 전송할 때 사용하는 규약입니다. 프로토콜 := 전자기기 간에 데이터를 교환하기 위한 통신 규약(어떻게 메시지를 주고받을지 약속) FTP의 목표 FTP 서버와 FTP Client 간 효율적인 파일 전송 포트 설정 일반적으로 두개의 포트를 사용합니다. 제어 포트(Control Port) 사용자 인증 및 명령입력에 사용되는 포트 ftp 클라이언트가 21번을 통해 ftp 서버에 접속하면 제어와 관련된 세션이 열리게 됩니다. 데이터 포트(Data Port) ftp 서버에서 20번을 통해 ftp 클라이언트로 접속하면 데이터 전송을 할 수 있습니다. 데이터 전송 연결 접속 방식 클라이언트와 서버 ..

    [DR 🔀] 재해 복구 / 이중화,이원화 / 회사별 환경 사례

    시스템 이원화와 재난 대응, 고가용성을 위한 이중화에 대해 알아보겠습니다. 데이터 센터 := 데이터를 저장하는 서버, 스토리지, 데이터 전송을 위한 네트워크 장비를 물리적으로 관리하는 장소 📌 Disaster Recovery(DR) IDC 장애 대비 재해 복구 시스템 IDC := 인터넷 데이터 센터 DR을 통한 기대효과는 아래와 같습니다. IDC별, 전산실별, 지점별 등 지역적으로 분리된 서버들에 대해 무중단 배포를 가능하게 합니다. 갑작스런 네트워크의 단절, 네트워크 노드의 불안정, 장비의 다운, 정전 등으로 인한 문제를 해결(failover)합니다. 데이터의 이중화 구성을 가능하게 합니다. 그렇다면 어떤 재해들이 있을까? 멀웨어, DDos 및 랜섬웨어 공격과 같은 사이버 공격 사보타주(생산 설비 및 ..

    🛢️ [서버 유형별 파악] AP 서버 / Web 서버 / DB 서버 / WAS

    1. AP 서버 네트워크 연결로 서버와 통신할 수 있는 Server HTTP, TCP, UDP 등 다양한 프로토콜을 전달받아 클라이언트에 다양한 서비스를 제공한다. 2. Web 서버 HTTP 프로토콜을 주로 처리하는 서버 동적인 컨텐츠 제공을 위한 클라이언트(웹블브라우저)의 요청(Request)을 WAS에 보내고, WAS가 처리한 결과를 클라이언트에게 응답(Response)한다. 대표적으로 Apache 3. DB 서버 데이터베이스 저장만을 담당하는 서버 4. WAS 웹 어플리케이션과 서버 환경을 만들어 동작시키는 기능을 제공하는 소프트웨어 프레임워크 DB 조회 및 다양한 로직 처리 요구시 비즈니스 로직이나 DB 조회 같은 동적인 콘텐츠를 제공하기 위해 만들어진 애플리케이션 서버이다. Web Contain..

    🐧 nohup 백그라운드로 프로그램 돌리기 &

    📌 nohup (no hang up) 리눅스에서 프로세스를 실행한 터미널의 세션 연결이 끊어지더라도 백그라운드로 지속적으로 동작하게 해주는 명령어 현재 사용자 세션이 아닌 운영체제가 제공하는 백그라운드 공간에서 실행됨 nohup ./batch.sh 📌 nohup.out 파일 nohup.out 파일에 표준출력과 표준에러 메시지 모두 기록됩니다. 명령어 옵션을 통해 표준 입력, 표준 출력, 표준 에러를 구분하여 파일에 작성할 수 있습니다. 0 표준 입력 1 표준 출력 2 표준 에러 아래 명령어로 출력은 batch.out 파일에 작성을 하고, 에러는 batch.err 파일에 작성하도록 할 수 있습니다. nohup ./batch.sh 1 > batch.out 2 > batch.err 📌 huponexit 설정 ..

    🤔 JDBC / DBCP / JNDI 개념적으로 이해하기

    DBMS 변경이나 DB IP 변경 등으로 인해 JNDI 설정을 변경해야 할 때가 있습니다. 그러한 작업을 위해 배경이 되는 것들에 대해 이해하는 시간을 가져보도록 하겠습니다. 먼저 각 정의를 간단히 살펴보겠습니다. JDBC (Java DataBase Connectivity) 자바에서 데이터베이스에 연결하기 위한 인터페이스 DBCP (DB Connection Pool) DB와 커넥션을 맺고 있는 객체를 관리하는 라이브러리 JNDI (Java Naming and Directory Interface) 연결하고 싶은 데이터베이스의 DB Pool을 미리 Naming 시켜주는 방법 JDBC JDBC는 Oracle, MySQL, MsSQL 등의 Driver를 통해 DB에 접속합니다. JDBC만을 사용할 경우라면 DB..

    [쿠버네티스 #2] ⚓쿠버네티스 아키텍처 (Control Plane/Node) 알아보기

    쿠버네티스 컴포넌트는 컨트롤 플레인(Control Plane) 컴포넌트와 노드(Node) 컴포넌트로 나누어볼 수 있습니다. 컨트롤 플레인(Control Plane) 노드(Node) 컴포넌트 구성요소 API Server Scheduler Controller Manager etcd 구성요소 proxy kubelet 컨트롤 플레인(Control Plane) 컴포넌트 마스터 노드(Master Node)를 두어 컨트롤 플레인(Control Plane) 역할을 수행합니다. 쿠버네티스 클러스터의 기능 제어를 전체적으로 담당합니다. 모든 구성요소는 API Server로만 통신합니다. (Controller Manager가 etcd의 데이터를 변경하기 위해서는 API Server를 통해 요청을 보내야 합니다.) 해당 요소..

    [Web 🌐] WebServer/WAS, 정적페이지/동적페이지

    웹 인터넷 기반 정보 제공 서비스 서버 클라이언트에게 네트워크를 통해 서비스 제공하는 컴퓨터 시스템 웹서버 인터넷 기반 클라이언트에게 서비스를 제공하는 컴퓨터 웹 어플리케이션 웹에서 실행되는 응용 프로그램 웹 어플리케이션 서버 웹 어플리케이션과 서버 환경을 만들어 동작시키는 기능을 제공하는 소프트웨어 프레임워크 컨테이너 JSP나 servlet을 실행시킬 수 있는 소프트웨어 Web서버 정적 페이지 제공 WAS 동적 페이지 제공 📌 정적 페이지 HTML, JavaScript, CSS 등으로 간단하게 작성된 정적 페이지이다. 서버가 웹페이지 요청을 받으면 클라이언트에게 추가적 과정 없이 응답을 보낸다. 페이지가 수정되기 전까지는 항상 동일한 페이지를 반환한다. 특징 삽입, 수정, 삭제 등의 작업이 모두 수동적..

    [쿠버네티스 #1] 도커 컨테이너, 컨테이너 오케스트레이션의 역할이란?

    📌 도커 컨테이너 환경에 상관없이 동일한 방식으로 관리 가능 프로젝트 실행 시 로컬 개발 환경이 아닌 컨테이너 환경에서 실행됩니다. 개발 환경에서 실행되는 컨테이너는 운영에서 실행되는 컨테이너와 동일한 환경을 보장합니다. 개발 환경과 운영 환경을 일치시켜 운영 배포를 위한 추가 작업이 없어졌습니다. 모든 코드가 컨테이너 환경에서 실행되기 때문에 확장성과 유연성 측면에서도 이점을 가집니다. 🙋‍♂️ 다수의 컨테이너 관리 시 발생하는 문제점 여러 컨테이너를 각각 수동으로 컨트롤 해야 함 컨테이너가 실행되지 않은 서버(여유 서버)를 관리해줘야 함 배포시 롤아웃/롤백이 번거로움 서비스 검색 수동화 문제 서비스 노출 수동화 문제 서비스 이상, 부하 모니터링 대응 문제 🙋‍♂️ 다수의 컨테이너를 어떻게 배포하고 관..

    [WEB 🌍] CSR/SSR/SSG, SPA/MPA, AJAX 몽땅 정리

    프론트엔드 개발자 채용 우대사항에 이러한 문장을 본 적이 있습니다. CSR/SSR/SSG/ISR에 대해 이해하고, 실제 페이지 개발 시 해당 개념을 적용해보신 분 그렇기에 관련 CS 지식을 학습하고 정리해봅시다. 📌 CSR / SSR 👉 어느쪽에서 렌더링을 준비하는지에 따라 나뉜다. CSR SSR 웹 페이지의 렌더링이 클라이언트(브라우저) 측에서 일어나는 것 동작 과정 1) 유저의 웹브라우저 방문 2) 브라우저의 서버로 콘텐츠 요청 3) 서버의 브라우저로 HTML, JS 링크 전송 4) 브라우저는 JS 다운로드 후 동적 DOM 생성 특징 1. 웹 어플리케이션에 필요한 정적 리소스를 초반에 모두 다운로드 -> 초기 로딩 속도 느림 2. 페이지 갱신 시 필요한 데이터만 전달 받아 클라이언트에서 페이지를 갱신..