분류 전체보기
-
현재 운영하고 있는 DB(MySQL) 커넥션 수 확인하기실무에서 알게된 내용 2022. 6. 3. 08:39
대상 DB : Writer DB 상황 : 담당하고 있는 서비스를 사내 배포 환경으로 전환하면서 새로운 인스턴스에다가 배포를 진행했다. 그리고 나서 기존 ALB에서 기존 인스턴스를 detach 함과 동시에 금일 배포한 새로운 인스턴스를 바라보도록 스위칭 작업을 했다. 기존 인스턴스들은 만약에 상황을 대비해서 며칠간 살려두기로 결정했다. 이로 인해, DB 커넥션 수가 얼마나 증가했는지 확인하고 싶었다. 확인 : 전반적으로 DB 커넥션 수가 증가함을 확인함 추가 궁금했던 사항 DB는 커넥션 수를 최대 얼마나 허용하고 있을까? 커넥션 풀 maximum 사이즈는 얼마로 돼 있을까? 1. DB는 커넥션 수를 최대 얼마나 허용하고 있을까? 최대 허용하는 커넥션 수 확인 SHOW VARIABLES LIKE '%max_..
-
Spring Kafka 적용하며 발생했었던 이슈 정리실무에서 알게된 내용 2022. 6. 2. 18:02
1. Consumer exception 문제 상황 : Consumer 동작을 테스트하기 위해 Kafka Cluster로 메시지를 수동으로 발행하고 있었다. 이때, 오타가 발생했고 이로 인해 사전에 약속된 형태(포맷)의 메시지가 아닌 다른 형태(포맷)의 메시지를 발행했다. 현상 : 계속해서 아래 에러 메시지가 올라왔다. (무한 반복) 에러 메시지 : This error handler cannot process 'SerializationException's directly; please consider configuring an 'ErrorHandlingDeserializer' in the value and/or key deserializer (아래 참고) 현상 이유 KafkaMessageListenerCo..
-
Redis를 이용한 동시성 제어실무에서 알게된 내용 2022. 5. 19. 09:28
1. 분산 락 (Distributed lock) 서로 다른 프로세스(또는 쓰레드)가 상호 배타적(mutually exclusive)인 방식으로 공유 자원을 처리해야 하는 환경에서 유용한 기술 2. 분산 락 구현 방법 (고려했던 선택지는 아래 3가지) DB 이용 Redis 이용 ZooKeeper 이용 선택 : Redis를 이용한 분산락 구현 why? 1. DB 이용 DB를 이용하여 분산락을 구현해도 되지만, 락을 잡기위해 간단한 락 정보를 저장하는 테이블을 만들어야 하는게 좋은 선택인지 의문이 들었음 또한, 락 정보는 영구적인 데이터가 아닌 휘발성 데이터에 더 가깝다고 생각하여 DB를 이용하는 것은 선택지에서 제외함 (하지만, 현재 Redis를 쓰고 있는 상황이 아닌데 빠른 시일 안에 구현해야하는 상황이라..
-
[카이젠 저니 - 14장] "문제는 없습니다."라고 말하는 문제카테고리 없음 2022. 4. 21. 02:27
내용 요약 데일리 스크럼에서 어제 한 일, 오늘 할 일을 무덤덤하게 이야기하고 마지막엔 "큰 문제는 없어요"라고 말하는 형태가 정형화돼 가고 있음. 정말 위험신호가 없는 것일까? 아님 발견하지 못하고 있는 것일까? 다양한 팀 빌딩 활동을 통해 각자 자율적으로 일할 수 있는 환경이 갖춰짐. 즉, 팀으로서의 숙련도가 올라간 덕분에 멤버 사이의 커뮤니케이션이 줄어들더라도 업무를 진행할 수 있는 상태가 됨 이는 다른 사람의 상황을 신경 쓰지 않고도 내 일을 할 수 있는 나쁜 환경을 만들기도 함. 왜냐하면, 팀에서 하는 일이 공유되지 않으면 정합성을 유지할 수 없을 뿐 아니라 다른 문제도 일어날 수 있기 때문 위험신호 정신적인 건강 상태가 신체적인 건강 상태로 이어짐. 그 반대의 경우도 마찬가지임. 그렇기 때문에..
-
[카이젠 저니 - 13장] 서로의 기대를 명확히 하다.카테고리 없음 2022. 4. 21. 01:40
내용 요약 이전 스프린트에서 완성한 제품 백로그 숫자가 굉장히 적었음. 이를 만회하고자 다음 스프린트에 앞서 작전 회의를 열게 됨 제품 백로그 아이템의 인수조건을 누가 정리할 것인지 결정하는 과정에서 의견(기대) 차이가 발생함 이를 위해 서로의 기대를 맞추기 위한 팀 빌딩 방법 중 하나인 드러커 엑서사이즈(The Drucker Exercise)를 수행함 드러커 엑서사이즈를 수행하기 위한 필수 조건 심리적으로 안전한 장소에서 대화를 진행해야 함 대화 중 상대를 비판하거나 부정하지 않음 드러커 엑서사이즈는 아래 4개의 질문을 통해 서로의 기대를 조정함 내가 잘하는 것은 무엇인가? 나는 어떻게 공헌할 것인가? 내가 중요하게 생각하는 가치는 무엇인가? 팀 멤버는 나에게 어떤 성과를 기대한다고 생각하는가? 위 4..
-
Spring Kafka 프로젝트 <Producer>카테고리 없음 2022. 3. 13. 10:20
아래 작성한 글은 Spring Kafka Reference 문서를 보며 스스로 학습한 내용을 토대로 작성한 글입니다. 따라서, 오류가 있을 수 있음을 먼저 말씀드립니다. 혹시, 오류를 발견하신다면 코멘트로 남겨주시면 수정하도록 하겠습니다. Kafka Client 2.6.0 버전 기준으로 작성되었습니다. 1. Spring Kafka 프로젝트 Spring Kafka프로젝트는 Spring에서 Apache Kafka를 쉽게 사용할 수 있도록 추상화하여 제공해주는 프로젝트다. 2. Spring 프로젝트에서 Kafka를 사용하기 위해 필요한 대표적인 구성요소 ProducerFactory : Producer( Kafka Topic에 데이터를 전송하는 역할 )를 만드는 역할 ConsumerFactory : Consum..
-
끄적끄적카테고리 없음 2022. 2. 13. 23:53
[스터디] 그동안 하지 못했던, (토요일) 스터디를 다시 시작했다. 이직 전에 마지막으로 봤던 책은 가상 면접 사례로 배우는 대규모 시스템 설계 기초. 정말 재밌게 봤다. 이번에 보고 있는 책은 Kotlin in Action. 가끔은 책을 보며 궁금한 부분에 대해 명쾌한 답을 내리지 못하는 경우도 있지만, 맞든 틀리든 자신 있게 생각을 나눌 수 있는 환경이 나는 좋다. 지금 좀 부족하면 어떤가, 앞으로 꾸준하게 한 개씩 알아가면 되지 [선의의 경쟁자] 나는 운이 좋게 그동안 훌륭한 개발자 분들을 많이 만났다. 혼자서 어떤 것이든 만들어 내시는 분 , 꼼꼼하게 서비스를 챙기시는 분, 장애가 났을 때 우리 모두의 잘못이라고 말하시는 분, 한결 같이 배운 것을 공유하시는 분 등... 이분들은 내게 선의의 경쟁..
-
2021년 회고카테고리 없음 2022. 1. 19. 19:04
2021년 한 해는 스스로가 생각하기에 "자기 효능감이 이전보다 높아진 해"라고 생각한다. IT 교육자라는 꿈을 가지고 있던 나는, 다양한 경험을 하고 싶었고 필요하다고 생각했기에 좋은 회사라고 하더라도 한 회사에 3년 정도 있으면 또 다른 경험을 위해 이직을 해야겠다는 생각을 가지고 있었다. 2021년도는 우형에서 3년이 되던 해였다. 이때, 우연히 아래 세미나를 듣게 됐다. 해당 세미나에서 가장 인상 깊었던 말은 "굳이 이직을 하지 않더라도 1년에 한 번씩은 면접을 보는 것이 좋다"는 이야기였다. 생각해보니, 면접을 통해 나의 부족한 점을 알 수 있고, 그동안 내가 잘해 왔었는지도 평가를 할 수 있을 것만 같았다. 이런 생각을 하던 찰나에 토스에서 연락을 주셨고, 채용 프로세스를 진행하게 됐다. 1차..