본문 바로가기
320x100
728x90

IT 정보66

EC2를 그라비톤(Graviton)으로 옮기면서 느낀점 및 트러블 슈팅 회사에서 RI를 진행하면서 기존에 x86 계열의 인스턴스들을 arm 기반의 그라비톤을 이전하는 작업들을 진행했다. 그라비톤 참고 그라비톤은 MacOs가 인텔 맥에서 M1 맥으로 이전하며 과도기를 거쳐 현재의 생태계를 구축한 것처럼. 차츰 많은 회사에서 도입을 시작하고 있는 듯하다. 사실 우리 회사도 그라비톤이라는 존재를 처음 들을 때만 해도 약 1년 전이었다. 그때도 메인 리포팅 솔루션을 테스트 겸 이전 작업을 진행해봤지만 당시 docker에서 arm 기반의 프로세서에서 빌드 오류였는지, 내가 docker에 대한 지식이 없어서인지 docker부분에서 막혀서 포기했었다. (아마 docker 관련 지식이 없었던 것 같았다.) 테스트 이전 부분에서 시간 여유가 충분하지 않아서 그만뒀지만, 현재는 대대적인 인프.. 2022. 6. 4.
spring boot 리소스 캐싱 오늘은 업무를 진행하면서 간단하게 html 페이지를 보여주는 서버를 띄울 필요가 있었다. 그 페이지에선 특성상 이미지와 css가 상당히 많은 수가 있어 매 요청마다 수많은 요청을 보냈다. 이에 따라 리소스 캐싱을 추가했다. application.properties에 아래 값을 추가한다. spring.web.resources.cache.period=43200 //1일 value는 초단위로 지정이 되며, 캐싱 적용 전 캐시 적용 후 상태코드에 보면 200을 반환하지만 (메모리 캐시에서)라고 표기되며, 잘 적용됐음을 확인할 수 있다. 응답 헤더에 보면 캐시의 max-age를 확인할 수 있다. 2022. 4. 27.
Intelli J에서 AWS 아테나 및 DB 연결하기 인텔리제이는 참 간편한 IDE다. 여러 가지 언어에 대한 개발 지원 및 다양한 도구들을 지원하여 개발단계에서 많은 기능을 제공하여 개발을 한 층 편하게 해 준다. AWS 아테나는 인텔리제이에서 연결을 지원하는지 모른 채로 매 번 aws 콘솔에 들어가 쿼리를 사용하곤 했다. 게다가 우리 회사는 2중 보안이 되어있어, 매 번 이 과정을 거치며 아테나를 뚫고 뚫고 들어가야 했다. 그러나 인텔리제이에서 이를 해결할 수 있다. 인텔리제이 우측에 보면 Database 탭이 있다. 만약 보이지 않을 경우. View -> Tool Windows -> Database로 활성화 가능하다. 탭을 열면 +버튼이 있는데, Data Source -> Other -> AWS Athena 가 있다. 클릭해주자. User에는 acce.. 2022. 4. 11.
Spring Test 코드 작성하기 Spring에서 JUnit5를 이용하여 테스트 코드를 작성하는 방법을 소개합니다. 개발환경은 spring boot 2.6.3이고 ide는 Intelli J를 사용했습니다. 일반적으로 인텔리제이에서 프로젝트를 생성하면 src -> test에 메인 클래스 이름 + Test가 붙은 테스트용 클래스가 제공된다. 일반적으로 이렇게 생성되어 있을 것이다. 클래스 위에 @SpringBootTest 어노테이션은 스프링을 실제 띄워서 컨테이너를 띄우거나 DI를 하여 스프링과 동일한 환경에서 테스트할 수 있고, 단순 자바 코드로서 테스트가 아닌 DB연동 등 통합 테스트에 자주 사용한다. 하지만 김영한님의 말을 따르면 테스트 코드에서 해당 어노테이션이 붙으면 테스트의 설계가 잘못될 가능성이 높다고 했다. (통합 테스트가 아.. 2022. 3. 3.
300x250
320x100