목록TIL (40)
도도한 개발자
🐈⬛ 오늘 공부한 내용 스프링 DB 2편 - 스프링 jdbcTemplate, JPA, 스프링 JPA h2 서버도 안띄우고 '왜 나만 안돼..' 하지 말자 🐾 느낀 점 & 배운 점 음~ 계획 달성 실패! 역시 하루에 14시간짜리 강의를 다 듣는건 무리였다. 14시간이 무야 반도 못 들음. 나름 선택과 집중을 한다고 myBatis 부분은 건너뛰었는데 그래도 오래걸리는구만. JPA를 뭔지도 모르고 프로젝트에 일단 도입하고 나서 이제서야 조금 공부하고 있는데 '아하~' 하면서 깨닫는 순간이 많이 찾아오는 것 같다. 스프링이 제공하는 @Transactional 어노테이션은 로직이 성공적으로 수행되면 커밋하도록 동작한다. 그런데 이 어노테이션을 테스트에서 사용하면 스프링은 테스트를 트랜잭션 안에서 실행하고, 테스..
🐈⬛ 오늘 공부한 내용 시스템 설계 면접이 있는 이유 처리율 제한 장치 - 토큰 버킷, 누출 버킷, 고정 윈도 카운터, 이동 윈도 로그, 이동 윈도 카운터 스프링 DB 1편 강의 - 트랜잭션, 자바 예외 이해, 예외 처리, 반복,, 끝 🐾 느낀 점 & 배운 점 시스템 설계 면접이 있는 이유: 우리들의 설계 기술을 시연하는 자리로써 설계 과정에서 내린 결정들에 대한 방어 능력을 보이는 자리이며, 면접관의 피드백을 건설적인 방식으로 처리할 자질이 있음을 보여주기 위함. 가상 면접~~~ 책을 읽고 있긴 하다만 내가 과연 이 내용을 조금이라도 활용할 수 있는 면접을 볼 수 있을까 하는 의문이 생긴다. 신입 개발자 이런거 상관없이 다 알아야 하는 건가 싶고. 조급해지지 말자. 내 목표는 취업이 아니라 역량 있는..
🐈⬛ 오늘 공부한 내용샤딩(sharding): 데이터베이스의 수평적 확장 기법안정 해시: 샤드 소진의 해결 기법스프링 DB 1 - 트랜잭션 이해깃 너무 어려워 - Unversioned Files... 🐾 느낀 점 & 배운 점규모 확장성을 요구하는 시스템의 경우 항상 정규화된 DB와 비정규화된 DB를 섞어 쓴다. 주의, 반정규화를 과도하게 적용하면 데이터의 무결성이 깨질 수 있다. 입력, 수정, 삭제 쿼리 응답시간이 늦어질 수 있다. 데이터 센터는 보통 여러 리전에 분산되어 있고, 센터들 간에 데이터를 주고받는 데는 시간이 걸린다. -> 나는 이 리전이 뭔가 했는데 지역(region)을 그냥 영어로 말한거다. 아니 이 정돈 한국어로 해도 되지 않나..? 의미상 차이는 없어보이는데. 그럴거면 그냥 데이터 ..
🐈⬛ 오늘 공부한 내용 수직적 규모확장 vs 수평적 규모 확장 데이터베이스 다중화 캐시와 CDN 메시지 큐 동기와 비동기 스프링 핵심 원리 - 빈 스코프 스프링 DB 1편 - JDBC 이해, 커넥션풀과 데이터소스 이해 🐾 느낀 점 & 배운 점 누누센세의 추천으로 책 초반부를 읽어봤다. 되게 술술 읽히고 심지어 재밌다. 읽으면서 기억하고 싶은 키워드를 위에 적어놨는데 그 중에서 메시지 큐와 비동기에 대해 구체적으로 이해하고자 따로 정리해봤다. 메시지 큐는 메시지 지향 미들웨어(MOM : Message Oriented Middleware)를 구현한 시스템으로 프로그램(프로세스) 간의 데이터를 교환할 때 사용하는 기술이다. 라고 하면 도통 무슨말인지 아직은 잘 모르겠다. 이 기술의 목적은 뭘까? 프로세스 단..
🐈⬛ 오늘 공부한 내용 AWS 보안그룹, NACL - Stateful, Stateless NAT - Dynamic NAT, Static NAT, PAT CIDR inbound subnet internet gateway well-know port http는 80번, https는 443번, ssh는 22번 스프링 핵심 원리 컴포넌트 스캔, 의존관계 자동 주입, 빈 생명주기 콜백 🐾 느낀 점 & 배운 점 다들 진즉에 끝냈던 것들을 영차영차 공부중. 한 한달만 더 일찍 들었다면 우리 서비스 아키텍쳐 얘기할 때 무슨말을 하는지 더 잘 알아들을 수 있었을텐데 하는 아쉬움이 있지만 또 좋게 생각하면 '아~ 이게 그거였어?'하는 깨달음의 순간이 많이 찾아와 즐겁기도 하다. 보안 그룹은 인스턴스에 대한 인바운드 및 아..
🐈⬛ 오늘 공부한 내용 론칭 페스티벌 🐾 느낀 점 & 배운 점 오늘 공부한 건 많이 없고, 론칭 페스티벌 재밌었다. 부스 돌아다니면서 칭찬 엄청 했는데 팔 떨어지는 줄 알았다. 💭 감정회고 너무 피곤한거.. 이번 방학엔 공부에 집중해야 해서 놀 생각은 못하겠다.
🐈⬛ 오늘 공부한 내용 모니터링 툴인 prometheus와 grafana를 ip주소가 아닌 도메인으로 직접 접근할 수 있도록 nginx 설정 aws inbound(아직은 키워드만) IP 클래스 서브넷 마스크 🐾 느낀 점 & 배운 점 음 생각보다 어렵지 않았다. 기존에 grafana에 들어가기 위해선 3.38.xxx.xxx:8080을 직접 검색해야 했고, 프로메테우스는 9090 포트라 밖에선 접근할 수 없어 번거로웠다. 그래서 서브 도메인을 만들어 외부에서 접근할 수 있도록 nginx를 설정했다. 완전 모른다고 생각했는데 (본 건 있어가지고) 어느 서버에 가서 어느 디렉토리에 어떤 파일을 생성해야 하는지 알고 있었다. 기분 좋음ㅎㅎ 그런데 포트 설정하면서 8080으로 들어오는건 8080으로, 8088로 ..
🐈⬛ 오늘 공부한 내용 개발 서버, 운영 서버 분리 Spring Boot Actuator, Prometheus, Grafana를 사용한 스프링 부트 모니터링 환경 구축 카페인 프로젝트 아키텍쳐 정리 🐾 느낀 점 & 배운 점 ec2를 추가로 받아서 할 일이 생겼다. 한 서버에 띄워져 있던 dev와 prod를 각각의 서버에 띄우는 작업. 직접 보니까 이제 좀 알 것 같다. 그리고 모니터링 환경 구축은 페어로 같이 싶었는데 다행히 넷이서 했다. 중간중간 이해를 못해서 넘어간 부분이 좀 있었는데 이를 보강하려면 한 번 글을 쓰는 게 좋을 것 같다. 살짝 정리를 해보자면 1. Spring Boot Actuator는 스프링 부트의 서브 프로젝트다. 스프링 부트 애플리케이션에서 Spring Boot Actuator..