정보처리기사 4과목 프로그래밍 언어 활용
1장. 서버 프로그램 구현
121 개발 환경 구축 Ⓑ
개발 환경 구축
- 소프트웨어 개발을 위한 소프트웨어 및 하드웨어 장비 구축
하드웨어 환경
- Web Server : 클라이언트로부터 요청을 받아 처리하는 서버, 저용량의 정적 파일 제공 (ex. Apache HTTP Server, Microsoft Internet Information Service, Google Web Server)
- Web Application Server : 사용자에게 동적 서비스를 제공 (ex. Apache Tomcat, IBM WebSphere, Oracle WebLogic)
- Database Server : 데이터베이스와 DBMS를 운영하는 서버 (ex. MySQL Server, Oracle Server, Microsoft SQL Server)
- File Server : 서비스 제공을 목적으로 유지하는 파일을 저장하는 서버 (ex. AWS S3)
소프트웨어 환경
- 요구사항 관리 도구 : JIRA, IBM DOORS, inteGREAT, Reqify, Trello
- 설계/모델링 도구 : DB Designer, PlantUML
- 구현 도구 : Eclipse, IntelliJ IDEA, Visual Studio
- 빌드 도구 : Ant, Gradle, Maven, Jenkins
- 테스트 도구 : CPPUnit, JUnit, HttpUnit, NUnit, SprintTest
- 형상 관리 도구 : Git, CVS, SVN, Mercurial
122 서버 개발 Ⓒ
서버 개발 프레임워크
- Spring : JAVA 기반
- Mode.js : JavaScript 기반, 실시간으로 입출력이 빈번한 애플리케이션에 적합
- Django : Python 기반, 컴포넌트의 재사용과 플러그인화 강조
- Codeigniter : PHP 기반
- Ruby On Rails : Ruby 기반
124 배치 프로그램 Ⓑ
배치 프로그램(Batch Program)
- 사용자와의 상호작용 없이 작업들을 일괄적으로 처리하는 것
- 정기 배치 : 정해진 시간에 정기적으로 수행
- 이벤트성 배치 : 특정 조건을 설정하여 조건이 충족될 때만 수행
- On-Demmand : 사용자 요청 시 수행
배치 스케줄러(Batch Scheduler)
- 일괄 처리 작업이 설정된 주기에 맞춰 자동으로 수행되도록 지원
- Spring Batch : 로그 관리, 추적, 트랜잭션 관리, 작업 처리 통계, 작업 재시작
- Quartz : 수행할 작업과 수행 시간을 관리하는 요소를 분리하여 유연성 제공
REFERENCE
2020 시나공 정보처리기사 필기 : NCS 기반 전면 개편[개정판]