[패스트캠퍼스]KDT 핀테크 서비스 백엔드/review

[패스트캠퍼스]KDT 핀테크 서비스 백엔드/review

21주차 Review - 스프링

이번주 스프링 수업시간에는 AWS를 이용해서 실제 배포 연습을 해봤습니다. AWS의 서비스 중 하나인 EC2 가상 머신 서비스를 이용하여 데이터베이스와 실제 배포를 연습해 봅니다. https://aws.amazon.com/ko/ec2/?did=ft_card&trk=ft_card 아마존 클라우드 서버 호스팅 | Amazon Web Services Amazon Elastic Compute Cloud(Amazon EC2)는 500개가 넘는 인스턴스, 그리고 최신 프로세서, 스토리지, 네트워킹, 운영 체제 및 구매 모델의 옵션과 함께 워크로드의 요구 사항에 가장 잘 부합할 수 있도록 aws.amazon.com AWS에 접속해서 EC2 시작하기 계정생성 로그인 후 콘솔 홈의 우측상단 리전을 서울로 변경 후 사용 ..

[패스트캠퍼스]KDT 핀테크 서비스 백엔드/review

20주차 Review - 데이터베이스

이번주는 설연휴로 스프링수업이 없었고 데이터베이스 중급수업이 있어서 데이터베이스 수업에 대해 리뷰해보고자 합니다. 그나저나 벌써 20주차라니........... 그 어떤 일을 할때보다 시간이 엄청 빨리 지나간 느낌..........ㅠㅠ 인덱스 인덱스란? 데이터베이스 분야에 있어서 테이블에 대한 동작의 속도를 높여주는 자료구조 인덱스 종류(MySQL) 클러스터형 인덱스 : 사전과 같은 형태(데이터가 순서대로 정렬) 테이블당 하나 설정 가능(primary key 옵션으로 자동생성) 보조 인덱스 : 책의 마지막 장의 찾아보기와 같은 형태 여러 개의 필드 값을 기반으로 쿼리를 많이 보낼 때 생성 인덱스를 확인하는 방법 SHOW INDEX FROM 테이블이름 인덱스의 생성 & 삭제 인덱스의 생성(2가지 방법) C..

[패스트캠퍼스]KDT 핀테크 서비스 백엔드/review

19주차 Review - Spring/SpringBoot

이번주 수업시간에는 JWT와 토큰, OAuth2에 대해 공부했습니다. 서버 기반 인증 vs 토큰 기반 인증 서버에 접근하는 인증된 사용자를 구분하는 대표적인 방법으로는 서버 기반 인증과 토큰 기반 인증 2가지 방법이 있다. 화면 없이 Ajax와 JSON을 이용해서 데이터를 주고받는 구조에서는 세션이나 쿠키를 이용하는 기존 인증방식에 제한을 받게 된다. 이 문제를 해결하기 위해 사용하는 것이 JWT(JSON Web Token)이다. (인증받은 사용자들은 특정한 문자열인 토큰을 이용하게 된다.) 토큰을 사용한다는 것은 요청과 응답에 토큰을 함께 보내 유효한 사용자인지를 검색하는 방법이다. 이때 보통 JWT를 사용해서 토큰을 전달한다. 클라이언트가 아이디와 비밀번호를 서버에게 전달하며 인증을 요청한다. 서버는..

[패스트캠퍼스]KDT 핀테크 서비스 백엔드/review

18주차 Review - Spring/SpringBoot

이번주 스프링 수업에서는 로깅에 대한 이론수업과 Mock에 대해 공부했습니다. Logback(LOGGING) 로깅 오류발생 시 콘솔에 print해서 나오도록 찍는 것 시스템이 동작할 때 시스템의 상태 및 동작 정보를 시간 경과에 따라 기록하는 것 스프링부트 프로젝트를 생성하고, 의존관계를 확인해보면 logging 스타터를 이용하여 기본적으로Logback과 Log4j를 SLF4J 구현체로 가지고 있는 걸 확인할 수 있다. 5단계의 로그 레벨 Error : 예상하지 못한 심각한 문제가 발생하는 경우, 즉시 조취를 취해야 할 수준의 레벨 Warn : 로직 상 유효성 확인, 예상 가능한 문제로 인한 예외 처리, 당장 서비스 운영에는 영향이 없지만 주의해야 할 부분 Info : 운영에 참고할만한 사항, 중요한 비..

[패스트캠퍼스]KDT 핀테크 서비스 백엔드/review

17주차 Review - Spring/SpringBoot

17주차에 실습한 Spring 웹사이트 수업 내용을 정리해보았습니다. MyBatis와 JPA는 각각 언제 사용하는 것이 좋을까? MyBatis : 테이블이 많아져서 복잡한 경우 JPA : 간단한 프로젝트 Calendar 스프링으로 만들어보기 schedule 입장에서는 user는 1명 > @ManyToOne user 입장에서는 여러개의 schedule이 가능 > @OneToMany(fetch = FetchType. fetch : 가져오다 jpa에서는 자동으로 1개의 쿼리를 조회시 알아서 여러 쿼리 조회 n+1문제 > 자원문제 >속도저하 FetchType.EAGER(바쁘게) : 연관있는 entity 그대로 가져감, 즉시실행, 일대일로 매핑되는 테이블은 한테이블로 움직임 FetchType.LAZY(게으르게) ..

[패스트캠퍼스]KDT 핀테크 서비스 백엔드/review

16주차 Review - Spring/SpringBoot

이번주 스프링 수업시간에는 Lombok과 JPA를 사용하여 Spring 웹사이트 실습을 진행하였고, 네트워크 수업시간에는 TCP와 UDP를 공부하였습니다. 스프링 수업을 배우면서 스프링이 어렵게 느껴지는 부분이 자바가 부족해서 더 어렵게 느껴진다고 생각해서 자습시간에는 자바를 위주로 복습을 진행중입니다. 이번주말까지의 목표 : 자바 객체지향 개념까지 복습 끝내기 Spring / SpringBoot Lombok 라이브러리 자바로 클래스 작성 시 getter/setter를 만들거나 생성자 함수를 정의하는 경우가 많은데 이것을 간단하게 어노테이션을 추가하는 것으로 대체 할 수 있는 방법이다. 인텔리제이에서 lombok 적용 방법 Setting > Plugins > lombok 설치 (이미 설치되어있다면 ins..

[패스트캠퍼스]KDT 핀테크 서비스 백엔드/review

15주차 Review - Spring/SpringBoot

이번주 스프링 수업은 Swagger(API문서자동화)를 이용하여 테스트를 해보았고 Rest방식으로 홈페이지를 만드는 실습을 진행하였습니다. 요즘은 서버와 서버간 또는 서버와 클라이언트 간 통신이 대세이다. 애플리케이션의 아키텍처에는 모놀리식 아키텍처와 마이크로서비스 아키텍처 방식이 있다. 요즘은 마이크로서비스 아키텍처가 대세인데 두가지 방법의 차이점에 대해 공부했다. 모놀리식 아키텍처 (Monolithic Architecture) 기본적이고 일반적인 접근 방식으로 단일 코드 베이스이다. 장점 : 제작 시 간편하다. 단점 : 규모가 커지면 비효율적이다. 마이크로서비스 아키텍처 (Microservices Architecture) 서비스별로 분할하는 방법 장점 : 특정 서비스가 장애가 생기더라도 다른 부분은 ..

[패스트캠퍼스]KDT 핀테크 서비스 백엔드/review

14주차 Review - Spring/SpringBoot - 2022. 12. 16. 14:11 작성

AOP AOP를 배워야 하는 이유 입력된 데이터 기록하기 모든 기능에 들어온 매개변수 기록하기 문제점 적용될 기능에 반복해서 코드를 작성 해야함 로직이 조금만 바뀌어도 모두 바꿔 주어야함 코드의 가독성이 떨어짐 데이터의 기록 -> 로깅 로깅 -> 부가 기능 부가 기능 -> 인프라 로직 로깅은 주요기능은 될 수 없다.(부가기능) 인프라 로직 모든 기능 영역에서 나타날 수 있음 중복토드를 만들어낼 수 있음 유지보수가 힘들어짐 비즈니스 로직과 같이 있어 로직을 이해하기 어려워짐 인프라 로직 예시 트랜잭션 처리 보안 로깅 스프링 AOP란? AOP : 부가기능(advice)을 동적으로 추가해주는 기술(코드가 실행되는 과정에서 자동으로 추가) 관점 지향 프로그래밍 Aspect Oriented Programming ..

작은달팽이
'[패스트캠퍼스]KDT 핀테크 서비스 백엔드/review' 카테고리의 글 목록