ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 11-3. 기본 개발환경 구축하기
    공부 일기/정보처리기사 실기 2024. 7. 23. 21:35
    728x90

    1-1. 요구사항 분석 https://minjh1126.tistory.com/44

    1-2. 현행시스템 분석 https://minjh1126.tistory.com/45

    1-3. 요구사항 확인 https://minjh1126.tistory.com/46

    2-1. UI 요구사항 확인 https://minjh1126.tistory.com/47

    2-2. UI 설계 https://minjh1126.tistory.com/48

    3-1. 논리 데이터 저장소 확인 https://minjh1126.tistory.com/54

    3-2. 물리데이터 저장소 설계 ~ 3.3 데이터베이스 기초 활용 https://minjh1126.tistory.com/57

    4. 통합구현 https://minjh1126.tistory.com/58

    5. 인터페이스 구현 https://minjh1126.tistory.com/59

    6. 프로그래밍 언어 https://minjh1126.tistory.com/60

    7-1. 데이터베이스 기본 https://minjh1126.tistory.com/49

    7-2. 응용 SQL 작성하기 https://minjh1126.tistory.com/50

    8-1. 개발환경 구축 https://minjh1126.tistory.com/51

    8-2. 공통 모듈 구현 https://minjh1126.tistory.com/52

    9-1. 소프트웨어 개발 보안 설계 https://minjh1126.tistory.com/53

    9-2. 소프트웨어 보안 개발 구현 https://minjh1126.tistory.com/55

    10-1. 애플리케이션 테스트 케이스 설계 https://minjh1126.tistory.com/56

    10-2. 애플리케이션 통합 테스트 https://minjh1126.tistory.com/61

    11-1. 운영체제의 특징 https://minjh1126.tistory.com/62 

    11-2. 네트워크 기초 활용 https://minjh1126.tistory.com/63

     

    1. 응용 시스템 개발 인프라 구축

    1. 개발 인프라

    • 구성 방식
      • 온프레미스: 외부 인터넷망이 차단된 상태에서 인트라넷망만 활용해 개발환경 구축. 외부 유출이 민감하면 해당 장비를 자체 구매하고 구축.
      • 클라우드 방식: 클라우드 공급 서비스를 임대해 개발환경 구축. 개발환경 투자 비용이 적고 구축 시간이 빠름.
      • 하이브리드 방식: 온프레미스와 클라우드 방식을 혼용.
    • 구성 장비
      • 스토리지 시스템
        • DAS(Direct Attached Storage): 데이터 저장 장치를 호스트 버스 어댑터에 직접 연결. 저장 장치와 호스트 기기를 직접 연결.
        • NAS(Networ Attached Storage): 서버와 저장 장치를 네트워크로 연결. 구성 설정이 간편하고 서버 한 곳에서 파일을 관리해 서버 간 스토리지 밒 파일 공유 용이. 네트워크를 통해 스토리지에 접속하고 파일 단위로 관리.
        • SAN(Storage Area Network): 서버와 스토리지를 장치 전용 네트워크로 상호 구성해 고가용성 등을 보장하고 데이터 블록 단위로 관리. DAS의 빠른 처리와 NAS의 스토리지 공유 방식을 합침.
      • RAID(Redundant Array of Independent Disks): 다수의 저용량 저장 장치를 배열료 구성. 레벨에 따라 저장 장치의 신뢰성을 높이거나 성능을 향상.
        • RAID 0: 두 세트로 나눠 각각 다른 정보 저장, 패리티(오류 검출 기능)가 없는 방식. 적어도 2개의 디스크가 필요하고 추가적인 기억장치를 제공하는 장점이 있지만 장애 시 데이터의 안전을 보장할 수 없음.
        • RAID 1: 두 세트에 같은 정보 저장. 패리티가 없는 미러링 세트로 구성됨. 적어도 2개의 디스크가 필요하기에 비용 측면에서 단점이 있음.
        • RAID 2 : 오류정정부호를 기록하는 전용 하드디스크로 안전성 확보. 비트 레벨 스트라이핑, 해밍코드 패리티를 사용해 하나의 멤버 디스크가 고장나도 오류 정정부호로 정상적으로 작동하게 할 수 있지만 추가적 연산이 필요해 입출력 속도가 매우 느림.
        • RAID 3: 데이터는 모든 디스크 단위의 스트라이핑 된 세트로 구성되고, 패리티 정보는 전용 디스크에 저장. 적어도 3개의 디스크 필요. 한 드라이브가 고장나는 건 허용하고 순차적 쓰기 읽기 성능은 괜찮지만 문제 해결이 어려워 잘 사용되지 않음.
        • RAID 4: 데이터는 모든 디스크에 블록 단위의 스트라이핑 된 세트로 구성되고, 패리티 정보는 전용 디스크에 저장. 적어도 3개의 디스크가 필요하고 읽기 성능은 좋지만 쓰기 성능이 나쁨.
        • RAID 5: 패리티가 배분되는 스트라이핑된 세트로 구성. 적어도 3개의 디스크가 필요. 모든 디스크에 나뉘어 저장되지만 균등하지 않고 패리티 정보도 모든 디스크에 나뉘어 저장. 
        • RAID 6: 패리티가 배분되는 스트라이핑된 세트로 구성. 적어도 4개의 디스크가 필요하고 각 디스크에 패리티 정보가 두번 독립적으로 저장.

    2. 클라우드 기반 개발 인프라 구축

    • 개발환경 인프라 제공 범위
      • 컴퓨팅 환경: 프로그램 설치, 운영 HW 장비 세팅. 웹 서버, DBMS 서버.
      • 스토리지: 대규모 데이터 저장, 관리, 전송, 이중화 하기 위한 장비 세팅. 클라우드 기반 스토리지, 아카이브 스토리지, 전송 스토리지 세팅.
      • DB: 실데이터를 저장하고 관리하기 위한 DB 세팅. RDB, 인메모리 DB, 웨어하우징, 멀티미디어 처리 환경 세팅.
      • 네트워킹 전송: 구성된 서비스, 프로그램, 컨텐츠 등을 효율적으로 관리하는 환경 세팅. 콘텐츠 전송용 CDN, API 제공용 환경, 대규모 로드 밸런싱 환경 구축.
      • 개발자 도구: 실제 개발하기 위한 제반 환경, 개발 및 배포환경, 저장소, 테스트 환경 등 구축.
      • 보안 환경 구축: 침입으로부터 시스템과 데이터를 보호하기 위한 환경 구축. 사용자 액세스 및 암호화 관리, 앱 자격 증명 환경 구축, 악성 트래픽 필터링 서비스, DDoS 방어 환경 구축.
      • 응용 기술 세팅: VR, AR, 인공지능, 머신러닝, IoT, 게임 등 개발을 위한 환경 세팅. 
      • 생산성 향상: 시스템 볼륨 자동 확장, 실시간 스트리밍 서비스, 비즈니스 및 운영 상채 분석 서비스 구축.
    728x90
Designed by Tistory.