반응형

분류 전체보기 265

태태개발일지 - WebFlux

- WebFlux리액티브 프로그래밍은 비동기 및 이벤트 기반 애플리케이션을 개발하기 위한 패러다임으로, 주로 높은 확장성과 성능을 위해 사용됩니다 비동기 프로그램으로 MVC 방식과 성능 비교를 했을 때 확연하게 빨라지는 것을 JMeter를 통해 검증 완료했다. 하나를 반환할때는 Mono , 여러개 반환하려면 Flux를 반환하게 된다. Spring MVC와 방식은 비슷하고.public interface PostR2dbcRepository extends ReactiveCrudRepository, PostCustomR2dbcRepository{ Flux findByUserId(Long id);} Repostiory는 ReactiveCrudRepository를 상속하게 된다. @GetMapping("/..

카테고리 없음 2024.05.27

Spring redis 총정리

- Cache - LocalCache   ex) ehcache     - 로컬 캐시는 애플리케이션 내부에서만 유효하며, 동일한 어플리케이션 내의 여러 모듈이나 서비스 간에 공유하지 않는다.     - 메모리 내에 데이터를 저장하므로 매우 빠른 읽기 및 쓰기 성능을 제공한다.     - 로컬 캐시는 애플리케이션의 JVM 내부 또는 로컬 서버에 저장되며 외부에서 접근 할 수 없다.  - global cache.  ex) redis      - 글로벌 캐시는 여러 서버 또는 애플리케이션 간에 데이터를 공유할 수 있다.      - 글로벌 캐시는 주로 네트워크를 통해 데이터에 접근해야하므로 로컬 캐시에 비해 상대적으로 느린 읽기 및 쓰기 성능을 가질 수 있다.      - 글로벌 캐시는 주로 네트워크를 통해 외..

Spring/Redis 2024.05.27

2024-05-11일 회고

근황  5/11일 기준으로 펀드평가를 하는 회사에 7개월 차 사원이 되었다.일상  오전 6시에 기상 후 운동을 하고있고, 출퇴근 길에는 김영한 선생님의 jpa강의와 java강의를 듣고있고,퇴근 후에는 redis, webflux등 대용량 처리에 대해서 공부하는 중이다. 시간이 그렇게 넉넉하지 않아서 진도가 그렇게 빠르게 나아가지는 않지만, 그래도 꾸준히 진행하는 중이다. 이룬점  sqld를 취득했고, 여러가지 공부를 하면서 개발자 다워지고있는 중이다. 업무처음에는 Back-end 개발에 흥미를 느꼈었고, front-end 에서는 전혀 개발에 흥미를 느끼지 못했다.그렇기에 입사하면 Back-end위주의 업무를 맡기를 원했었고, 여러가지 업무들을 파악해 보았다. 1. 만들어진 react와 jsp 파일을 수정해..

회고 2024.05.12

태태개발일지 - spring batch 대용량 처리

- 배치 데이터 처리에서 즉시성을 필요로 하지 않을 경우, 일정량 또는 일정 기간 데이터를 수집한 후 일괄 처리를 하는 방식 ex) 1. 정산 시스템 2. 데이터 마이그레이션 3. 약관 변경 메일 4. 통계 5. 게임 랭킹 6. 쇼핑몰 배송요청 장점: - 자원을 효율적으로 사용 (대량의 데이터를 실시간으로 매번 처리하면 자원의 낭비가 크다) - 대량의 데이터 처리 - 주로 정해진 시간에 반복적으로 실행 - 사용자와의 상호작용 없이 동작 단점: - 실시간성 결핍 - 잘못 동작하면 큰 문제가 된다. Read - Process - Writes DB읽고 - 처리하고 - 저장하고 근데 왜 Spring batch?? Spring의 특징을 그대로 사용하여 Spring에 익숙하다면 금방 배울 수 있다. 대용량 처리에 ..

Spring/Batch 2024.04.13

Java 중급 - 영한쌤

Java 모든 클래스가 Object를 상혹하는 이유. -> 공통적인 부분 해결 -> 다형성 기본 구현 Object제공 기능 - toString() -> 객체 정보 - equals() -> 객체의 같음을 비교한다. - getClass() -> 객체의 클래스 정보를 제공하는 etc .. 사람마다 Object에 대한 기본 기능을 따로따로 구현하게 된다면 정말 많은 기능이 나올 것 이므로, 조금 단순화하고 공통화 시킨 것으로 말한다. -> 핵심이유. 다형성의 기본 구현 - Object는 모든 클래스의 부모 클래스이다. 즉 모든 객체를 참조할 수 있는 것이다. 모든 java 객체는 Object 타입으로 처리되기 떄문에. 다양한 타입의 객체를 통합적으로 처리할 수 있게한다. public class ObjectPol..

JAVA 2024.03.31

태태개발일지-spring cloud

Eureka사용법 server: port: 0 spring: application: name: user-service eureka: instance: instanceId: ${spring.cloud.client.hostname}:${spring.application.instance_id:${random.value}} client: registerWithEureka: true fetchRegistry: true serviceUrl: defaultZone: http://127.0.0.1:8761/eureka port를 0으로하고, 지정된 유레카의 url을 등록을 해놓으면 실제 유레카 사이트에서 어떤 서비스들이 켜져있는지 모니터링이 가능하게 된다. 설정의 의미는 port는 0으로 해놓으면 자동으로 포트를 설정..

Clude 2024.03.02

태태개발일지 - spring cloud 기본

Antifragile의 조건 - Auto Scaling ex) 사용자가 많을 때와 사용자가 적을 때에 따라 서버를 자동으로 Scale up | Scale out하는 것. - Microservices ex) 개별적인 모듈이나 기능을 개별적으로 운용하고 개발할 수 있는 것. - Chaos enginerring ex) 급격하고 예측하기 힘든 상황에서 대해 실험하기 위한 규칙이나 방안. -CI/CD 지속적인 통합 Cloud native - Microservices 방식으로 개발되고, CI/CD로 자동으로 통합되고, 빌드, 배포된다. 문제가 발생했을 때 다시 배포하는 과정인 DEVOPS가 있다. 어플리케이션을 Containers가상화 기술을 통해서 사용하게 된다. CI/CD 카나리 배포 -> 95%만 이전버전 5..

Spring/Cloud 2024.03.02

태태개발일지(JSON,XML,Data Format)

JSON, XML -> 구조화된 데이터를 표현하고 전송하기 위한 데이터 형식이다. 사용 목적과 상황에 따라 적당한 데이터를 사용하는 것이 좋다. -> 요즘 트랜드는 JSON을 많이 따라가고 있음. JSON 형식 -> Text를 구조화 한다. Json은 경량의 데이터 교환형식으로, 텍스트 기반의 구조화된 데이터를 표현한다. Json은 가독성이 좋고, 다양한 프로그래밍 언어와 호환이된다. 사용 방식: {}로 묶인 키- 값 쌍의 집합이다. 키와 값은 콜론 (:) 으로 구분되고, 키-값의 쌍은 ,로 구별한다. 배열은 [ "apple", "banana", "orange" ] -> []로 표현을 한다. XML-> HTML(마크업 렝기쥐) xml은 데이터를 저장하고 전송하기 위한 마크업 언어이다. XML은 트리 구조..

WEB 2024.02.04

태태개발일지(JAVA 상속)

요즘은 퇴근 길에 인프런 강의중 김영한 선생님의 Java 기본 강의를 듣고있다. 자바에 대한 완벽한 심화 강의는 아니지만, 그래도 JAVA를 앞으로 계속 사용할 거라 돈을 주고 구매한 후 쭉 듣는데 상속 부분에서 머리에 넣어야 할 부분이 생긴 것 같아서 글로 작성한다. https://www.inflearn.com/course/%EA%B9%80%EC%98%81%ED%95%9C%EC%9D%98-%EC%8B%A4%EC%A0%84-%EC%9E%90%EB%B0%94-%EA%B8%B0%EB%B3%B8%ED%8E%B8 학습 페이지 www.inflearn.com 상속의 개념. 상속 : 비슷한 속성을 가진 객체들의 부모를 만들어서 중복된 코드를 제거하고, 재사용성을 늘린다. 기존에 인지하던 상속? 사실 상속에 대해서 공..

JAVA 2024.01.09
반응형