반응형 Dev106 소스트리 항상 탭으로 열기(Mac) 소스트리에서 여러 레파지토리를 열때 각각 창으로 열려서 불편한건탭으로 열기 설정터미널 열어서defaults write -app SourceTree AppleWindowTabbingMode -string "always" 확인defaults read -app SourceTree AppleWindowTabbingMode 값이 always로 나오면 적용된거 * 소스트리 완전히 껐다가 다시 켜 주세요 2025. 9. 5. 웹소켓에서 데이터 유실 문제와 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. 이전 1 2 3 4 ··· 27 다음 반응형