Home
Hong's Docs
Cancel
Preview Image

Jenkins + Docker + S3 + Spring Boot 배포 과정

서론 Jenkins를 이용한 배포를 위해 CI/CD를 학습하던 중 정리가 필요해 작성하게 되었다. 설계하는 아키텍처에는 Jenkins, EC2, S3, Docker, CodeDeploy 도구들이 사용되며, Git Webhook을 이용하여 main branch에 PUSH가 되면 Jenkins에서 CI가 되고, S3에 압축된 파일을 올리고, CodeDe...

Preview Image

[자바 웹 프로그래밍 Next Step] 2장 - 문자열 계산기 구현을 통한 테스트와 리펙토링

2장. 문자열 계산기 구현을 통한 테스트와 리팩토링 목표 테스트와 리팩토링을 학습하는 것과 더불어 자바 개발 환경을 익히고, 책의 실습 진행 방식을 겸험한다. JUnit을 활용한 테스트 JUnit은 단위 테스트 프레임워크 중 하나로, main() 메소드의 한계를 해결해줄 수 있는 도구이다. main() 메소드의 한계란? 프로덕...

Preview Image

[AWS] AWSOME DAY 온라인 컨퍼런스 정리

AWS 클라우드 소개 출처 : AWS pdf 온프레미스와 클라우드의 차이 온프레미스는 회사가 서버, 스토리지, 데이터베이스 등을 직접 구축하고 소유하며 운영관리하는 것이고, 클라우드는 인터넷을 통해서 IT 리소스나 애플리케이션을 필요시 사용한 만큼만 지불하고 사용하는 서비스이다. 클라우드 컴퓨팅의 장점 선행 비용을 가변 비용으로 대체 ...

Preview Image

Spring Boot MyBatis와 JPA

그동안 스프링을 이용한 개발을 할 때 JPA로 개발을 해왔다. 회사에서 MyBatis를 사용하게 될 것 같아 MyBatis에 대해 알아보고 차이를 작성해보자. JPA와 MyBatis 백엔드에서 데이터베이스를 사용하는 프레임워크로 가장 많이 쓰이는 기술이 MyBatis와 JPA이다. 데이터베이스 접속을 편하게 사용하기 위해 SQL Mapper 기...

Preview Image

프로세스와 스레드

프로세스란? 단순히 실행 중인 프로그램이라고 할 수 있다. 즉, 사용자가 작성한 프로그램이 OS에 의해 메모리 공간을 할당받아 실행 중인 것을 말한다. 예를들어 카카오톡, 브라우저, JAVA프로그램 모두 프로세스로 실행되며 브라우저를 2개 띄우면 브라우저 프로세스도 2개가 띄워진 것이다. 프로세스의 구조 OS가 프로그램 실행을 ...

Preview Image

[Spring] ConverterNotFoundException No converter found capable of converting from type

에러 발생 상황 JPA를 활용한 nativeQuery로 DTO를 만들어 맵핑하는 과정에서 발생된 에러이다. org.springframework.core.convert.ConverterNotFoundException No converter found capable of converting from type Repository @Query(valu...

Preview Image

유니온 파인드(Union Find)란?

유니온 파인드(Union Find)란? 유니온 파인드는 그래프 알고리즘으로 여러개의 노드가 존재할 때 두개의 노드를 선택해서 현재 이 두 노드가 서로 같은 그래프에 속하는지 판별하는 알고리즘이다. 서로소 집합, 상호 베타적 집합(Disjoint-Set)으로도 불린다. 노드를 합치는 Union 연산과 노드의 루트 노드를 찾는 Find연산으...

Preview Image

Elastic APM 시작하기

docker 환경에서 Elastic 실행을 정리해본다. Elastic APM을 사용해보기 위함이다. swap 메모리 설정 1. ec2 접속 ssh -i {key-pem 파일} {서버 OS}@{퍼블릭 ip 주소} 2. swap 파일 메모리 할당 sudo dd if=/dev/zero of=/swapfile bs=128M count=16 3....

Preview Image

[Redis] Java 8 LocalDateTime Error

에러 발생 상황 Redis를 이용하여 캐싱을 하는도중 마주친 에러이다. org.springframework.data.redis.serializer.SerializationException: Could not write JSON: Java 8 date/time type `java.time.LocalDateTime` not supported by de...

Preview Image

Redis의 저장 방식

프로젝트를 진행하는 도중, redis의 서버가 갑자기 꺼진다면 대기열은 어떻게 보관해야할까? 라는 질문에서 redis에 AOF와 RDB 저장방식이 있다는 것을 확인하였다. 기존의 RDB방식과 AOF의 차이가 무엇인지 작성해본다. Redis의 저장 방식 Redis는 In-Memory DB임에도 불구하고, 메모리 데이터를 disk에 저장할 수 있는...