백엔드 45

[AWS] CloudFront 에 대하여

https://bosungtea9416.tistory.com/entry/AWS-CloudFront [AWS] CloudFront 에 대하여AWS CloudFront 란 AWS CloudFront는 AWS의 CDN (Content Delivery Network) 서비스다. CDN 서비스란 Client의 콘텐츠 요청으로 서버에서 받아온 콘텐츠를 캐싱하고 이후 같은 요청이 왔을 때, 그 캐싱해 둔 것을 제공bosungtea9416.tistory.comhttps://real-dongsoo7.tistory.com/86 [AWS 파헤치기] #2 CloudFront(CDN)가 뭐야?시작하기 전에 해당 블로그에 작성되는 글은 주인장의 지극히 주관적인 생각이 다수이며, 대부분의 지식은 구글링을 통해 얻고 있기 때문에 옳..

백엔드/인프라 2024.09.13

Webflux와 R2DBC

https://velog.io/@effirin/R2DBC-%EC%95%8C%EC%95%84%EB%B3%B4%EA%B8%B0-3.-Webflux%EC%99%80-R2DBC [R2DBC 알아보기] 3. Webflux와 R2DBCR2DBC를 사용한다고 하면, 자주 같이 쓰이는 기술이 Webflux다.Webflux는 무엇이며, 어떤 이유로 Webflux + R2DBC 조합을 같이 쓰는 것일까?우선 비교적 자주 쓰이는 SpringMVC와 비교하며 Spring Webflux를 이해velog.io현업에서 주로 Spring Webflux랑 R2DBC를 같이 사용한다고 하여, 이 참에 블로그에 정리하고자 한다!본 글은 위에 블로그를 참고하였습니다.Spring MVC와 Spring Webflux의 차이점- blocking..

백엔드/스프링 2024.09.05

[Spring Security] 스프링 시큐리티 용어 및 구조

스프링 시큐리티 - 어플리케이션의 보안(인증 및 권한)을 담당하는 프레임워크 - 스프링 시큐리티를 적용하면 redirect를 자동으로 설정 가능(로그인 완료시 다음 화면으로 넘어가기) 특징 - 필터 기반으로 동작 - bean으로 설정 가능 용어 1. Principal(인증 주체): 유저 2. Authenticate(인증): 현재 유저가 누구인지 확인(로그인) 3. Authorize(인가): 현재 유저의 권한 검사 4. 권한: 인증 주체가 어플리케이션의 동작을 수행할 수 있도록 허락 되었는지 확인 - 권한 승인이 필요한 부분으로 접근하려면 인증(로그인)을 통해 증명되어야 함 인증(로그인)을 거치게 되면 인증 주체에 대한 정보는 Principal에 담긴다. (Principal은 UserDetailsServi..

백엔드/스프링 2022.04.11

스프링으로 AOP 구현해보기 - 4가지 구현 관점

스프링에서는 4가지 보조 업무가 존재한다. Before Advice: 앞에만 필요한 경우 After returnning Advice: 뒤에만 필요한 경우 After throwing Advice: 예외를 처리하는 경우 Around Advice: 앞뒤 둘다 필요한 경우 public class Program { public static void main(string[] args) { Exam exam = new NewlecExam(1,1,1,1); Exam proxy = (Exam)Proxy.newProxyInstance(newlecExam.class, new Class[] {Exam.class}, new InvocationHandler() { @Override public Object invoke(Objec..

백엔드/스프링 2022.03.29

자바 AOP 예제 정리 - 순수 자바로 AOP 구현해보기

https://www.youtube.com/watch?v=pr2dwdf_03k public class NewlecExam implements Exam { @Override public int total() { int result = a1+a2+a3+a4; return result; } @Override public float avg() { float result = total() / 4.0f; return result; } } Exam.class를 상속받은 newlecExam.class public class Program { public static void main(string[] args) { Exam exam = new NewlecExam(1,1,1,1); System.out.printf("tot..

백엔드/스프링 2022.03.22

스프링 AOP 정리 - 스프링 핵심 원리 - 고급편

1.1 핵심 기능과 부가 기능 비지니스 로직은 크게 핵심 기능과 부가 기능으로 구분 가능 핵심 기능은 해당 객체가 제공하는 고유의 기능이고 부가 기능은 핵심 기능을 보조하기 위해 제공하는 기능 부가 기능의 대표적인 예시는 트랜잭션 기능, 로그 추적 기능이 있음. 이들은 공통으로 사용되며 여러 곳에서 동일하게 사용되기 때문 -> 횡단 관심사(cross-cutting concerns)라고 함. 옛날에는 주 업무가 진행되는 과정에서 내가 로그를 처리하겠다면, 직접 코드를 열어서 위 아래에 코드 입력하고, 주석 처리하고 실제 코드를 손대야 함. -> 그래서 소스코드가 존재해야 수정 가능 코드에 대해 알 수 있는 사람만 cross cutting이 가능하다. 관점에 해당하는 코드를 꽂아 놓지 않고 주 업무만 만들고..

백엔드/스프링 2022.03.22