슈퍼코딩/주특기(JAVA)

2024.04.22(월) 슈퍼코딩 신입연수원 4주차 Day 1 후기 - 백엔드란?

곰돌이볼 2024. 4. 22. 20:32
  • 강의
    • 1강 수업 소개(OT) ~ 5강 컴퓨터 OS 기본

백엔드


  •  POC
    • Problem & Finding Solving : 문제, 인식, 정의
    • Option Generation : 방법 리서치
    • Collaboration : 협업, 문제해결
  • 백엔드
    • 클라이언트 → 서버 → 데이터센터 → 데이터 전달  → 클라이언트
    •  서버
      • 비즈니스 요구 설계/구현
      • 필터링, 예외 처리
      • 대용량 트래픽 부하 문제
      • java, spring, nginx
    • 데이터 센터
      • 모델링, DB 설계
      • CRUD 작업
      •  DB 관리
      • 데이터 정합성 문제
      • MySQL, MongoDB
    • 데이터 전달
      • HTTP 응답 방식, 필드 결정
      • 프로토콜 선택 및 포워딩
      • HTTP 보안 문제
      • https, smtp
  • 백엔드 스킬 전체 로드맵
    • 프로그래밍 기술 : java
    • DB : 관계형 데이터베이스
    • 웹 서버 : springboot, 실습 프로젝트
    • 컴퓨터 기초, 네트워크
  • 백엔드 학습 전략
    • 그림을 많이 그리자
    • 조금씩 나아지기, 전체 과정 순환하기
    • 코드 구현

컴퓨터 기초


  • CPU : 의사결정 및 계산
    • CU(Control Unit) + ALU(Arithmetic and Logical Unit) + Memory Unit(=cache memory)
    • CU : 계산 순서 설정
    • ALU : 계산
    • Memory Unit : 계산 중간에 필요한 저장 공간
    • CPU clock frequency : CPU 동작 속도
      • 1Hz = 1 cycle/s
      • hz가 높을수록 계산속도가 빠르기 때문에 좋은 성능의 CPU라는 의미
    • CPU Muti-core
      • 코어 : CU + ALU
      • CPU 내 코어
      • 코어가 많을수록 성능↑
  • RAM : 메모리
    • Primary Memory(주기억장치, 단기기억장치)
    • 연산할 때 주로 사용하는 저장장치
    • 전기 제어 → 전원 종료 시 데이터 소실
    • RAM Data Rate frequency
      • 1Hz = 1 Cycle/s
    • SRAM
  • Hard Disk : 장기기억
    • secondary memory(보조 기억장치)
    • SSD를 HDD보다 많이 사용함
  • 운영 문제
    • 용량 부족 → 성능 저하, 데이터 유실
    • 오버 클럭 문제 : CPU, RAM 과다 사용 → 수명 단축, 시스템 충돌
    • 오버 히팅 문제 : CPU, RAM 과다 사용 →  냉방 필요

운영체제


  • 운영체제(Operating System) 기능
    • 컴퓨터 자원관리
    • 응용 프로그램 관리
    • 컴퓨터와 사용자 사이의 소통 역할
  • 프로세스(process)
    • 실행중인 프로그램
    • 프로세스의 상태
    • 생성, (준비, 실행, 대기), 종료
  • 스레드(thread)
    • 프로세스 내 작업 단위
    • 싱글 스레드 : 하나의 스레드 존재
    • 멀티 스레드 : 여러 스레드가 존재해서 싱글 스레드보다 성능이 좋음