일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- Git사용법
- islowercase()
- string
- 모던자바
- string과 stringbuilder
- 자바 최대공약수
- 최대공약수와 최소공배수
- 자바 스트링
- 동일성과 동등성
- while과 two-pointer
- 프로그래머스 레벨1
- 래퍼타입
- 자바 최소공배수
- replaceAll()
- isuppercase()
- 최소공배수
- 스프링뼈대
- 유클리드호제법
- 스프링
- StringBuilder
- stringbuilder의 reverse()
- 스프링환경설정
- toLowerCase()
- 최대공약수
- sql 데이터형 변환
- git 컨벤션
- ineer join
- addDoc
- 베주계수
- 자바 유클리드
- Today
- Total
목록전체 글 (100)
주노 님의 블로그
두괄식 요약블루 그린 방식에서 서비스가 배포 되기전 health check를 할 수 있는 api를 만들어서간단한 헬스체크를 하게 만들어 ELB에 정상적으로 작동하게 한다. 현재의 코드 구조는 다음과 같다.CODE DEPLY에서 ELB에게 명령을 내려 블루 그린 배포를 진행한다 하지만 그때 생긴 문제는 CODE DEPLOY가 ELB에 명령을 내려야 하는데HEALTH CHECK가 되지않아 오류가 발생한 것이다. 따라서 시작 템플릿을 생성할때 사전 정의를 내릴수있는 방법인사용자 데이터를 사용하게 했다 간단한 HELTHCHECK PYTHON파일을 만든다음겟 요청을 받게 만드는 방법 이있다. 또한STOP_HEALTH_CHECK.SH에서fuser -k 8080/tcp || truepkill -f health_c..
요약이메일 인증을 동기 > 비동기로 전환하며4.69s > 100ms로 97.87% 개선했다. 바꾸기전 속도는 4.69s였다 public HashMap sendMailAndStoreCode(String mail) { HashMap responseMap = new HashMap(); //유저의 이메일 체크 로직. User user = userService.findUserEmail(mail); //소셜로그인일시, 비밀번호 변경을위한 이메일인증 불가. if (user.isSocialLogin()) { throw new ApplicationException(SOCIAL_LOGIN_UPDATE_NOT_ALLOWED); } try { int numbe..
두괄식 요약스케쥴러를 사용한 정산 로직을스프링 배치를 활용하여 안정성과 속도를 개선하였습니다.8만개 기준 38m 4s 에서jpa item reader를 사용하였을때 1m 11초까지 개선하였습니다. 내용기존 정산로직으 스케쥴러를 사용하고 있었습니다 @Service@RequiredArgsConstructorpublic class CalculationService { private static final long ONE_MONTH = 1L; private static final String MONTHLY_AT_3_AM_ON_1ST = "0 0 3 1 * ?"; private final CalculationRepository calculationRepository; private fina..
로그 기록을 모니터링 하던중어느날 평소보다 많은 트래픽이 접속이 된 것을 확인 했다 그라파나로 확인한 결과 눈에 띄는 부하점은 없었으며 EC2에서는 특정 지점 (부하가 발생한 19:30분 ~ )네트워크와 CPU사용률이 높아진것을 볼 수 있다. phpinfo.php 파일에 대한 지속적인 접근으로, 서버의 설정사항을 탈취해가려는 악의적인 접근으로 의심된다.jwt filter에서 걸렀기때문에 접근이 불가능했던것으로 판단된다.문제사항은 로드밸런서의 보안규칙을 모든 포트로 열어놔서 생긴 문제였고.현재는 80포트로 바꾸어 불특정한 포트의 입력을 받지않게하였다.보안의 중요성과 security jwt 관련 코드를 검토하기로 결정했다. jwt 토큰과 security에는 허용된 엔드포인트만 적용되었다env등..
보호되어 있는 글입니다.
보호되어 있는 글입니다.
본캠프 66일차 내용 간단요약09:00 ~ 10:00 코드카타10:00 ~ 11:00 최종 프로젝트 발제11:00 ~ 12:00 프로젝트 회의12:00 ~ 13:00 점심시간13:00 ~ 18:00 프로젝트 회의18:00 ~ 19:00 저녁시간19:00 ~ 22:00 프로젝트 회의브레인스토밍더보기 1차 브레인스토밍 내용 재난 (챗지피티 api, 카카오지도 api)>> 지진이나, 재난에 대해 유저들이나 api를 통해 실시간으로 공유하고 대화하는 프로젝트.장점 : 수요가 있을 수 있다.단점 : 살을 붙이기 힘들다. chatgpt api 사용해서 책 내용을 동화 이미지로 변환.> 동화책을 만들어서 파는 북카페.장점 : 쇼핑을 붙일 수 있다.고려해야할 점 : 저작권 같은 문제는 어떻게 처리해야할까? 챗 지피티의..
본캠프 59일차 내용 간단요약9:00 ~ 11:00 : 면접 준비11:00 ~ 11:20 : 면접12:00 ~ 13:00 : 점심시간13:00 ~ 18:00 : redis 강의18:00 ~ 19:00 : 저녁시간19:00 ~ 21:00 : 개인과제 마무리면접더보기면접 준비는 비공개글에! 두괄식 중요하다주절주절은 잘 안읽을 경향이 높으니두괄식으로 먼저 말하기redis더보기redis란?키 값 구조의 비정형 데이터를 저장하고 관리하기 위한 nosql의 dbms이다.장점인메모리에 모든 데이터를 저장하고,기존 데이터베이스는 disk에 데이터를 저장하지만, redis는 ram에 데이터를 저장해서 처리속도가 월등히 빠르다어디서쓰나 왜 redis를 써야하나?캐싱 : redis는 메모리 내에서 데이터를 처리하기때문에 속..
본캠프 57일차 내용 간단요약09:00 ~ 10:00 : 코드카타10:00 ~ 12:00 : AWS 강의12:00 ~ 13:00 : 점심시간13:00 ~ 14:00 : 면접준비14:00 ~ 16:00 : AWS 강의16:00 ~ 18:00 : 프로젝트 복습18:00 ~ 19:00 : 저녁시간19:00 ~ 21:00 : 챌린지반 강의redis더보기redis는 싱글쓰레드에서 작동한다스프링부트는 멀티 쓰레드에서 작동한다.멀티쓰레드 : 한 프로그램 내에서 여러 쓰레드가 자원을 공유해 분할해 일을 처리한다싱글쓰레드는 뭐겠냐!한번에 하나씩 처리해준다.그럼 스프링부트에 왜 redis를 ??멀티쓰레드인 스프링부트에다 싱글쓰레드인 레디스를 사용한다면?멀티쓰레드는 여러개의 요청을 레디스에 요청하지만, 레디스는 한번에 한개..
본캠프 56일차 내용 간단요약 09:00 ~ 10:00 : 코드카타10:00 ~ 10:20 : 커리어 코칭10:20 ~ 12:00 : 개인과제 구현12:00 ~ 13:00 : 점심시간13:00 ~ 14:00 : 면접준비14:00 ~ 16:00 : 개인과제 구현16:00 ~ 18:00 : 스프링 시큐리티 강의18:00 ~ 19:00 : 저녁시간19:00 ~ 21:00 : 개인과제 구현커리어 코칭더보기코치님 : 접때 준비한 도메인 선정은 해왔나?나 : 도메인선정보단 채용공고를 자주 보았다코치님 : 궁금한점 있나?나 : 채용공고에 중간중간 내가 배우지 못한 기술스택이 있다. 예를들면 spring mysql등등 하면서 중간에 go 이런게 섞여있다 이런곳도 지원해보는게 좋은가?코치님 : 채용공고에서 자격요건과 우..