본문 바로가기
반응형

전체 글111

부모가 되고 나서 다시 읽은 '단풍 드는 날' 며칠전, 도종환 시인의 을 다시 읽었다. 단풍 드는 날도종환버려야 할 것이무엇인지를 아는 순간부터나무는 가장 아름답게 불탄다제 삶의 이유였던 것제 몸의 전부였던 것아낌없이 버리기로 결심하면서나무는 생의 절정에 선다.방하착제가 키워온,그러나 이제는 무거워진제 몸 하나씩 내려놓으면서가장 황홀한 빛깔로우리도 물이 드는 날 많은 사람들이 이 시를 두고"내려 놓음","집착을 버릴때 진정한 아름다움"으로 해석한다.물론 나도 그렇게 생각했었다. 그런데 이번엔...왠지 "부모가 자식을 놓아주는 순간"이 떠올랐다.- 자식을 품에 안고 키워온 시간- 자식이 내 삶의 이유였고, 내 전부였던 시간- 그러나 이제는 그 자식을 세상에 보내야 하는 때 그때 부모는 스스로에게 묻는다." 이 아리를 계속 붙잡고 있는 것이 정말 이 .. 2025. 7. 13.
웹소켓에서 데이터 유실 문제와 Redis Pub/Sub을 활용한 해결 방법 부제 : 다중 인스턴스 환경에서 웹소켓 통신 문제를 해결하기 위한 접근 방법🔍 문제 상황나는 카카오톡 채널 상담 서비스를 웹소켓 기반으로 개발 중이었다.로컬 개발 환경에서는 웹소켓 통신이 완벽하게 동작했으며,동시에 10,000건의 메시지를 보내도 유실 없이 전달되었다. 하지만 QA 서버에 배포하자 웹소켓 데이터가 간헐적으로 유실되는 문제가 발생했다.처음에는 비동기 처리나 네트워크 속도 문제로 의심했지만,웹소켓은 TCP 기반이라 신뢰성이 보장되는 프로토콜이기 때문에단순한 네트워크 이슈는 아니라고 판단했다.🔎 원인 분석 문제의 원인을 파악하기 위해 검색해보니,비슷한 사례가 해외 개발자 커뮤니티에서도 논의되고 있었다. 📌 결론:배포 환경에서는 PM2를 사용한 다중 인스턴스 구조로 운영되고 있었고,각 웹소.. 2025. 2. 16.
Git 파일 변경 추적 무시하기: --assume-unchanged Git을 사용하면서 특정 파일의 변경 사항을 로컬에서만 무시하고 싶을 때가 있습니다. 예를 들어, .env와 같은 설정 파일은 깃 이그노어에 추가하기 어려운 경우가 있는데, 이럴 때 사용하는 명령이 바로: --assume-unchanged  • 공유 설정 파일: .gitignore에 올리기 어렵지만 로컬 수정만 필요한 경우. • 환경 의존성: 개발 환경에 따라 다르게 유지해야 하는 설정 파일. • 프로젝트 설정 최적화: 변경 사항 추적에서 제외해 성능 개선.  # 파일 변경 사항 무시git update-index --assume-unchanged 경로/파일명  # 변경 사항 추적 복원git update-index --no-assume-unchanged 경로/파일명 2025. 1. 8.
엔터프라이즈 분야에서, 스스로에게 물어볼 수 있는 주요한 질문 스스로에게 물어볼 수 있는 주요한 질문엔터프라이즈 분야에서는 좀 더 실질적인 토론과 브레인스토밍이 필요한 시점이다.이 단계에서 스스로에게 물어볼 수 있는 주요한 질문은 다음과 같다. - 해결하려고 하는 진짜 문제는 무엇인가?- 현재 정보 전달 과정은 무엇인가?- 데이터 수집을 어떻게 해야 하는가?- 들어오는 데이터가 무결한가, 아니면 결함이 있는가?- 더 많은 변수를 손에 넣기 위해 어떤 데이터 소스를 추가적으로 더할 수 있는가?- 데이터는 주기적으로 받을 수 있는가, 아니면 실시간으로 얻을 수 있는가?- 이 문제해 대한 최소 시간 단위는 무엇이 돼야 하는가?- 데이터는 자주 변하는가, 아니면 시간에 따라 다소 안정적인 특징을 갖는가? 2024. 7. 13.
반응형