[로아투두] bucket4j를 이용해 트래픽 요청 제한하기
·
Project/LOATODO
1. 서론최근 로아투두 사용자가 많아지면서 서버의 많은 부하가 걸렸다.패치날인 수요일 저녁같은 경우에는 감당하기 어려울 정도... 그러다가 2월 26일 오후 4시정도에 카톡이 많이와서 확인해보니로아투두 서버가 터졌다는 사용자들의 톡을 보게되었다. JDBC Connection이 부족해서 서버가 재실행된거 같은데...왜...??? Connection 연결 개수 모니터링 Connection 대기가 갑작스럽게 200개 가까이 늘어났다.근데... 나는 설정에 최대를 30개를 줬는데 왜 10개밖에 Active가 안된거지..? Request Count Increase 모니터링 음..... 원인 파악: 특정 API가 Connection을 많이 물고 있어서 알림을 체크하는 API 요청이 Connection을 가져오지 못..
[LOATODO] 회원가입 후 캐릭터 등록 테스트 코드 작성 + 리팩토링
·
Project/LOATODO
1. 서론로아투두는 회원 가입 후 캐릭터 등록을 따로 두고 있습니다.@ApiOperation(value = "1차 회원가입 이후 캐릭터 추가", notes="대표캐릭터 검색을 통한 로스트아크 api 검증 \n 대표캐릭터와 연동된 캐릭터 함께 저장")@PostMapping("/character")public ResponseEntity saveCharacter( @AuthenticationPrincipal String username, @RequestBody SaveCharacterRequest request) { if (username.equals(TEST_USERNAME)) { throw new IllegalStateException("테스트..
[LOATODO] 스프링 개발자의 NestJS 찍먹 후기
·
Project/LOATODO
1. 나름 안정적인 운영개발을 하다보면, 익숙한 환경을 벗어나 새로운 환경을 시도해보고 싶을 때가 있습니다. 백엔드 개발자가 갑자기 프론트엔드를 한다던가... 앱 개발을 한다던가.... 국비지원 자바로 시작해서 스프링으로 넘어가고,로아투두도 그렇고 현재는 주로 스프링 부트를 사용해 백엔드 개발을 해오고 있습니다. 최근에 느낀점은새로운 프로젝트를 시작해도, 이미 만들어진 틀이 있어spring starter에서 Security, JPA, QueryDSL 등 필요한 라이브러리 가져오고대충 config 파일 만들어서 세팅해주고 도커 파일 만들고 AWS에서 설정 해주면 CI/CD 들어가서 배포까지 깔끔하게 됩니다. 이렇게 하면 t4g.micro EC2를 예약 인스턴스를 구매했다는 가정하에하루에 2달러 내외의 서버..
[LOATODO] 어쩌다 서비스 운영 / 약 2년 동안의 회고
·
Project/LOATODO
1. 2022년 9월 ~ 2023년 5월 / 방황- 국비 수료 후 취업, 수습 후 퇴사- 본격적인 Spring Boot 공부- 로스트아크 오픈 API로 여러가지 데이터 비교 (Spring Boot + JSP) 7월에 국비교육을 마치고 9월 쯤 4개의 프로젝트(라고 부르기 민망한)를 가지고 운좋게 취업을 빨리하였다.PHP 기반의 보안 회사의 UI/UX 팀이였는데, 보안 회사라 그런가... 나랑은 좀 안맞았다새로운 것을 배우고 무언가를 만들고 싶어 개발을 시작했는데 조금 다른 느낌...그래서 2달의 수습을 마치고 퇴사를 하였다. 그리고 월급으로 인프런에서 김영한 강사님 인강을 다 샀다. 한 100만원 좀 넘었나..?실력도 많이 오르고 사고방식도 달라지고 지금 2024년인데도 아직까지 반복해서 보고있다. 그러..