본문 바로가기
Data Analysis/정보처리기사

[4과목 프로그래밍 언어 활용] 01. 서버 프로그램 구현

by suvii 2024. 4. 19.

[Sec 1. 개발 환경 구축]

  • 서버 환경
    • 웹 서버(WEB) : 정적 파일 제공
    • 웹 애플리케이션 서버(WAS) : 동적 웹 서비스 제공
    • 데이터베이스 서버(DBMS) : 데이터의 저장과 관리, Oracle, MySQL, MsSQL
    • 파일 서버 : 파일 저장 및 공유
  • 서버 개발 프레임워크(for 애플리케이션의 전체 구조) : 공통적인 부분을 재사용 가능한 형태로 제공하는 클래스와 인터페이스의 집합
    • 특징 : 모듈화, 재사용성, 확장성, 제어의 역흐름
    • 구분 : Java 프레임워크, ORM 프레임워크, 자바스크립트 프레임워크 등
    • 효과 : 개발 용이성, 변경 용이성, 품질보증 등
  • 라이브러리(for 애플리케이션의 특정 기능) : 재사용이 필요한 기능을 클래스나 함수로 제공
    • 표준 라이브러리 : 프로그래밍 언어가 기본적으로 가지고 있는 라이브러리
    • 외부 라이브러리 : 별도의 파일 설치를 필요로 하는 라이브러리

 

[Sec 2. 서버 프로그램 구현]

  • API : 데이터 제공자가 외부에서 데이터를 주고받을 수 있는 규칙을 정의
    • SOAP : HTTP, HTTPS, SMTP 등을 통한 XML 기반 메시지 교환 프로토콜
      - UDDI : 도서관
      - WSDL : 설명서
      - SOAP : 호출
    • REST : HTTP URI를 통한 자원 명시와 HTTP Method를 통한 CRUD Operation 적용
      - 구성 요소 : 자원, 행위, 표현
      - 특징 : 유니폼 인터페이스, 무상태, 캐시 가능, 자체 표현 구조
      - CRUD Operation : Post(자원 생성), GET(자원 정보 조회), PUT(정보 업데이트), DELETE(자원 삭제)

 

[Sec 3. 배치 프로그램 구현]

  • 배치 : 대량의 데이터를 모아 정기적으로 반복 처리하는 프로그램
    • 필수 요소 : 대용량 데이터, 자동화, 견고함, 안정성, 성능
      • 크론탭 : 시간을 지정해 특정 명령을 자동 실행
        - 형식 : 분 | 시 | 일 | 월 | 요일 | 명령어
        - 특수문자 : *(모든 값), -(범위 지정), ,(여러 값 지정), /(증분값, 초기값과 증가치 설정)
                            (ex. */20 : 매 20분마다)