728x90

분류 전체보기 212

애플리케이션 성능 모니터링(APM) 시스템 프로젝트 후기

Intro 안녕하세요. 환이s입니다👋이전 프로젝트를 끝내고 바로 다음 프로젝트를 진행했는데, 오늘 무사히 문제없이 오픈할 수 있었습니다.시간이 흐를수록 점점 성장해나가는 제 모습이 느껴져서 스스로 대견하기도 하고, 하루하루가 더욱 뿌듯하고 행복합니다🙂 이번 프로젝트는 이전 프로젝트에 이어 두 번째 공공기관 프로젝트였는데요.첫 번째 경험 덕분인지 이번에는 일정에 맞춰 원활하게 마무리할 수 있었습니다😌그럼, 이번 프로젝트를 진행하면서 배운 점과 후기를 작성해 보겠습니다✌️개요  현재 다니고 있는 회사에서 두 번째로 진행한 프로젝트는 동적 시각화를 핵심 목표로 삼아, 실시간 모니터링, 성능 분석, 장애 예측 및 대응 기능을 갖춘 시스템을 구축하는 것이었습니다. 이를 통해 해상 교통 정보 서비스의 운영 및..

[ Project ]/Team 2025.02.24

[ Concept ] 서버 이중화 알아보기(Active-Active / Active-StandBy)

Intro 안녕하세요. 환이s입니다👋 디지털 시대에 접어들면서 기업의 온라인 서비스는 더욱 중요해졌습니다.고객들은 언제 어디서나 서비스를 이용할 수 있기를 기대하며, 서비스 중단은 곧 신뢰도 하락과 직결됩니다.  실제로, 유명 기업들이 경험한 서비스 장애는 수억 원의 손실을 초래하며, 브랜드 이미지에 심각한 타격을 주기도 했습니다. 이러한 이유로 서버 이중화는 현대 IT 환경에서 필수적인 전략으로 자리 잡았는데요. 이번 포스팅에서는 서버 이중화의 개념, 이중화 유형별 장단점, 필요성에 대해 살펴보겠습니다. 서버 이중화 ✅서버 이중화란 무엇인가? 서버 이중화는 동일한 기능을 수행하는 여러 대의 서버를 동시에 운영하는 기술입니다.이중화된 서버는 서로 연동하여 작업을 수행하며, 한 서버 장애가 발생할 경우 ..

[ Concept ] 2025.02.16

[ JPA ] 변경 감지(Dirty Checking)와 병합(Merge) 알아보기

Intro 안녕하세요. 환이s입니다👋이전 포스팅에서 주문 검색 기능을 JQPL, JPA 표준 Criteria 그리고 Querydsl을 활용해서 알아봤습니다.오늘은  JPA에서 데이터를 변경하는 방법에 대해 소개하고 변경 시에 주의할 점에 대해서 소개하려고 합니다🙂 데이터를 변경하는 방법에는 변경 감지(Dirty Checking)와 병합(Merge)기능이 JPA의 핵심적인 요소로, 애플리케이션의 성능과 데이터 일관성을 유지하는 데 중요한 역할을 합니다. 순차적으로 알아보겠습니다.준영속 엔티티 준영속 엔티티는 JPA에서 영속성 컨텍스트와의 연결이 끊어진 상태의 엔티티를 의미합니다. 즉, 엔티티가 처음에는 영속 상태로 관리되다가, 영속성 컨텍스트가 종료되거나 명시적으로 분리될 때 준영속 상태로 전환됩니다..

[ ORM ]/JPA 2025.01.18

[ JPA ] E-commerce 프로젝트 - 주문 검색 기능 개발 (JPQL,Criteria,Querydsl)

Intro안녕하세요. 환이s입니다👋이전 포스팅에서 주문 도메인 개발까지 알아봤습니다.이어서 앞서 말씀드린 주문 파트의 핵심인 검색 기능 개발을 진행하면서 JPA에서 동적 쿼리를 어떻게 해결하는지 알아보겠습니다🙂 주문 검색 기능 개발 먼저 주문 목록 페이지를 확인해 보겠습니다.  위 화면을 보면 주문상태를 검색조건으로 필터링할 수 있는 기능인 것을 확인할 수 있습니다.각 조건을 선택하면 해당 조건을 동적으로 추가하고 제거해야 하기 때문에 동적 쿼리가 필요하게 됩니다. 그렇다면 주문 도메인 개발 때 생성한 OrderRepository에 검색 로직을 추가해서 동적 쿼리를 생성해야 하는데, 그전에 검색 조건 파라미터 먼저 만들어 줍니다.  ✅ 검색 조건 파라미터 - OrderSearchpublic class..

[ ORM ]/JPA 2025.01.13

[ JPA ] E-commerce 프로젝트 - 주문 도메인 개발

Intro안녕하세요. 환이s입니다👋이전 포스팅에서 상품 도메인 개발까지 알아봤습니다.이어서 주문 도메인을 개발해 보겠습니다🙂 ✅ 구현 기능     1️⃣ 상품 주문     2️⃣ 주문 내역 조회     3️⃣ 주문 취소 ✅ 순서     1️⃣ 주문 엔티티, 주문상품 엔티티 개발     2️⃣ 주문 리포지토리 개발     3️⃣ 주문 서비스 개발     4️⃣ 주문 검색 기능 개발     5️⃣ 주문 기능 테스트주문, 주문상품 엔티티 개발 먼저 엔티티 내에 핵심 비즈니스 로직을 구현합니다. ✅ Order import lombok.Getter; import lombok.Setter; import javax.persistence.*; import java.time.LocalDateTime; import j..

[ ORM ]/JPA 2025.01.11

[ JAVA Script ] chart.js - 실시간 그래프 차트 구현하기

Intro 안녕하세요. 환이s입니다👋오늘은 chart.js  - 실시간 그래프 차트 구현하기 포스팅을 작성해보려 하는데요. 현대의 데이터 시각화는 정보의 전달과 이해를 돕기 위해 필수적입니다. 특히 실시간 데이터 분석과 모니터링이 중요한 시대에, 동적인 그래프 차트는 데이터를 효과적으로 전달하는 강력한 도구가 됩니다. Chart.js는 간단하고 직관적인 API를 제공하는 오픈 소스 JavaScript 라이브러리로, 다양한 유형의 그래프를 손쉽게 그릴 수 있습니다. 특히 실시간 데이터 시각화에 적합한 기능을 갖추고 있어, 데이터 변화에 즉각적으로 반응하는 차트를 만들 수 있습니다. Chart.jsSimple yet flexible JavaScript charting library for the moder..

[ JPA ] E-commerce 프로젝트 - 상품 도메인 개발

Intro 안녕하세요. 환이s입니다👋이전 포스팅에서 회원 도메인 개발까지 알아봤습니다. 이어서 상품 도메인을 개발해 보겠습니다. 상품 테스트는 회원 테스트와 비슷하므로 생략하겠습니다🙂상품 도메인 개발 - 상품 엔티티 개발(비즈니스 로직 추가) 먼저 Item 엔티티에서 관리하는 stockQuantity를 변경하는 비즈니스 로직을 엔티티에서 처리하겠습니다.서비스 단에서 처리할 수 있지만, 엔티티에서 처리하는 것이 응집도가 높은 설계로 볼 수 있습니다. ✅Itemimport jpabook.jpashop.exception.NotEnoughStockException;import lombok.Getter;import lombok.Setter;import jpabook.jpashop.domain.Category;..

[ ORM ]/JPA 2025.01.06

[ Security ] Spring Security - 사용자 권한 별 인증 처리하기

Intro 안녕하세요. 환이s입니다👋오늘은 제가 실무에서 스프링 시큐리티 프레임워크를 도입할 때 필수로 적용했던 사용자 권한 별 인증 처리 로직에 대해 포스팅을 해보려고 합니다. 사용자 권한 별 인증 처리는 보안 및 시스템 효율성을 위한 중요한 메커니즘입니다. 권한 관리를 통해 각 사용자에게 특정 작업을 허용하거나 제한하는 방식으로, 효율적인 시스템 운영을 할 수 있습니다. 이번 포스팅에서는 스프링 시큐리티의 개념과 설정에 관한 내용은 다루지 않으므로, 해당 키워드에 대한 정보가 필요하신 분들은 아래의 포스팅을 참고해 주시면 도움이 될 것입니다🙂  [ Spring ] Security 개념Security란? 시큐리티(Security)는 소프트웨어 시스템의 보안과 관련된 개념입니다. 주로 웹 애플리케이션..

[ MEMORY ] IT 분야 크리에이터 선정

INTRO안녕하세요. 환이s입니다👋제가 꾸준하게 블로그를 운영하다 보니 "스토리 크리에이터"에서 IT 분야 크리에이터로 선정되었습니다.저는 첫 블로그를 시작할 때 개발자로 이끌어준 지인에게 도움을 받아오늘 공부한 내용을 잊지 않고 메모한다는 마인드로 시작했는데이번에 이렇게 IT 분야 크리에이터로 선정이 되어서 너무 기쁘네요🙂한편으로는 스토리 크리에이터 선정 조건에 대해 궁금해서 찾아봤는데브런치 및 티스토리 블로거를 대상으로 총 4지표를 고려해서 선정한다고 해요 :)분명한 주제로 전달력 있는 콘텐츠를 만들고 있는가에 대한 "전문성"구독자 수가 100명 이상으로 증가하고 있는지에 대한 "영향력"최근 3개월 동안 12개 이상의 글을 발행했는지의 여부를 따지는 "활동성"대표 창작 분야에서 공적인 신뢰를 얻고..

회고록 2024.12.27

[ JPA ] E-commerce 프로젝트 - 회원 도메인 개발

Intro 안녕하세요. 환이s입니다👋이전 포스팅에서 프로젝트에 필요한 엔티티 설계를 진행했습니다. 이어서 요구사항 구현 기능으로 회원 등록과 목록 조회 기능을 코드로 구현하고, 테스트 코드를 작성하여 기능이 제대로 작동하는지 확인해 보겠습니다🙂 회원 도메인 개발 - 리포지토리 개발 리포지토리에서는 엔티티매니저(EntityManager)를 통해 데이터베이스에 대한 CRUD 작업을 수행할 수 있습니다.  엔티티매니저는 일반적으로 개발자가 직접 인스턴스화하지 않고, 스프링 부트와 같은 프레임워크에서 DI(Dependency Injection) 방식으로 주입받아 사용하는데 크게 총 3가지 방법을 소개해드리겠습니다. 1️⃣  @Autowired 3가지 방법 중 가장 간단한 방법인 필드 주입 방법입니다. @Au..

[ ORM ]/JPA 2024.12.27
728x90