본문 바로가기
728x90
반응형

개발/java,spring,springboot15

springboot logback - mongodb appender정의하기 1. 설정 1. build.gradle plugins { id 'org.springframework.boot' version '2.5.7' id 'io.spring.dependency-management' version '1.0.9.RELEASE' id 'java' } group = 'kr.co.finotek.demo' version = '1.0' sourceCompatibility = '8' configurations { compileOnly { extendsFrom annotationProcessor } compile.exclude group: "org.slf4j", module: "slf4j-log4j12" } repositories { mavenCentral() } dependencies { //.. 2022. 4. 5.
Spring cloud의 이해 & Spring cloud config 기본 사용 MSA 작동 클라이언트에서 나눠진 각각의 서비스 요청하는 것 - 문제점 모든 마이크로서비스에서 같은 인가/ 인증 필요 API gateway - 다수의 클라이언트가 service에 요청했을 때 중간에서 요청을 받고 마이크로서비스로 요청을 넘김. - A, B, C - e.g) zuul, spring cloud gateway 마이크로서비스 장단점 해결 단점 해결책 Spring cloud 다수의 필요한 서비스 어떻게 찾나 서비스 디스커버리 Eureka 다수 서비스의 인스턴스 어떻게 결정 클라이언트- 사이드 로드밸런싱 Ribbon 개별적 서비스가 응답하지 않을 때 어떤일이 발생하는가 결함 허용 Circute-Breaker/Hystrix 보안, 속도 제한과 같은 서비스 접근 서비스 보안 OAuth2 다수의 서비스느.. 2021. 12. 1.
java 직렬화 직렬화란? - 객체를 다른 환경에 저장했다가 나중에 재구성 할 수 있게 만드는 방식 - object는 주소를 통해 reference 되기 때문에, 이미 가비지 컬렉터로 지워졌다면 그게 무슨 값인지 알수 없다. 따라서 byte로 직렬화하여 값을 유지하여 그대로 저장하고, 그것을 역직렬화하는 방식이다. (object를 byte로, byte를 object로) 자바 직렬화 - 쉬운 분산 객체생성 - byte stream을 만듦 언제 쓸까? - 객체의 상태를 저장해야 할필요가 있을 때 - 파일, dB, 캐시 - 다른 vm에 정보를 전달할 필요가 있을 때 - RMI, 소켓 사용방법 - Serializable - 객체 직렬화: java.io.ObjectOutputStream의 writeObject를 이용 - Byte.. 2021. 11. 12.
java exception 관리 - handling & safe 1. Checked exception & Unchecked Exception Checked exception Unchecked Exception - 실행 전에 예외 처리 해야함. (컴파일 단계에서 확인됨 - rollback이 되지 않음. - Runtime Exception을 제외한 모든 예외) - IOException, SQLException 등 - 명시적 처리를 강제하지 않음(실행 단계에서 확인됨) - rollback 처리됨. - RuntimeException 하위 예외 - NullPointerException, IllegalArgumentException, INdexOutofBoundException, SystemException Java 예외(Exception) 처리에 대한 작은 생각 (nextre.. 2021. 8. 18.
728x90