현대 소프트웨어 개발에서 CD(지속적 전달)는 소프트웨어 변경 사항을 프로덕션 환경에 빠르고 안정적으로 적용하여 소프트웨어 개발 효율성을 향상시키는 중요한 개발 모델이 되었습니다. 그러나 소프트웨어 전달의 규모와 속도가 기하급수적으로 증가함에 따라 기존의 관찰 방법은 더 이상 따라잡을 수 없으며 이는 심각한 위험을 초래합니다. 그렇다면 지속적 전달의 리듬에 맞춰 관찰 가능성을 어떻게 발전시켜야 할까요?
1. 새로운 환경을 자동으로 발견
지속적인 전달의 특징 중 하나는 환경 생성 빈도입니다. 새로운 환경의 생성 및 배포는 거의 원활하게 이루어지므로 이러한 새로운 환경을 자동으로 검색하고 개발자가 아직 발견하지 못했을 수 있는 문제와 경고 및 대시보드 생성이 필요한 문제를 포함하여 이상 현상을 즉시 표시하기 시작할 수 있는 관찰 도구가 필요합니다. 이를 통해 시스템 출시 초기 단계에서 가장 많이 발생할 수 있는 문제인 '미지의 미지수'를 적시에 발견할 수 있어 다운타임을 크게 줄일 수 있다. 환경이 아무리 빨리 생성되고 배포되더라도 프로덕션 시스템에 대한 실시간 실시간 가시성은 매우 중요합니다.
2. 분산 데이터 관리
많은 조직에서는 여전히 데이터를 수집하고 분석을 위해 중앙 저장소에 통합하는 "저장 및 탐색" 관찰 접근 방식을 채택하고 있습니다. 이 접근 방식은 본질적으로 대기 시간이 많이 걸리며(초가 아닌 몇 시간 소요) 대량의 데이터가 수집되면 성능이 저하되어 쿼리 대기 시간이 길어집니다. 게다가 이 방법은 저장 비용도 많이 들기 때문에 많은 팀이 데이터를 '샘플링'하는 것을 선택하지만, 이 '샘플링된' 데이터가 중요한 순간에 문제를 해결하는 열쇠가 될 수도 있습니다. 따라서 새로운 접근 방식은 모든 데이터 세트가 생성되는 동시에 분석하고 볼 수 있도록 소스에서 분산 스트림 처리 및 기계 학습을 적용하여 이 패러다임을 바꾸는 것입니다. 관측 데이터가 분산 방식으로 관리되면 개발자는 비용과 데이터 획득 사이에서 고통스러운 선택을 하지 않고도 언제 어디서나 필요한 모든 데이터에 액세스할 수 있습니다. 또한, 실시간으로 생성된 데이터를 분석하면 문제의 원인을 정확히 찾아낼 수 있는데, 이는 지속적인 전달이 워크로드의 지속적인 증가와 변화를 주도하기 때문에 클라우드 환경에서 특히 중요합니다.
3. 개발자 경험에 주목하세요
분산 데이터 관리의 한 가지 장점은 개발자가 필요할 때 언제 어디서나 필요한 데이터에 액세스할 수 있다는 것입니다. 그러나 많은 관측 플랫폼은 지나치게 복잡하고 사용하기 어려워 개발자 경험을 방해할 수 있습니다. 따라서 관찰 가능성의 핵심 측면은 개발자가 문제 해결을 운영 팀에 의존하는 대신 필요한 모든 데이터에 쉽고 편리하게 액세스할 수 있도록 보장하는 것입니다. 지속적 전달로 인해 발생하는 환경의 수가 증가함에 따라 개발자는 문제를 더 빠르게 해결해야 하므로 더 간단하고 직관적인 워크플로가 필요합니다.
4. 소프트웨어 수명주기 이후의 관찰 가능성
테스트 및 릴리스 자동화와 같은 소프트웨어 개발 수명주기의 다양한 단계가 최신 소프트웨어 개발 방법론의 변화를 따라잡기 위해 어떻게 가속화되고 있는지에 대한 오랜 논의가 있어 왔습니다. 그러나 소프트웨어 수명주기에 초점을 맞추는 것 외에도 다른 운영 노력도 변화에 적응해야 합니다. 관찰 가능성도 그중 하나입니다. 지속적인 전달을 유지하려면 다음을 관찰하세요.Sex는 새로운 프로덕션 환경을 배포하고 발견하는 것 사이의 시간 지연을 제거하고, 분산되고 비효율적이며 비용이 많이 드는 "수집 및 분석" 접근 방식을 채택하고 개발자에게 더 간단하고 빠른 작업 흐름을 제공해야 합니다.
요약하다:
지속적인 전달의 흐름에 적응하려면 관찰적 진화가 중요합니다. 새로운 환경을 자동으로 발견하는 것부터 분산 데이터 관리, 개발자 경험에 초점을 맞추고 소프트웨어 수명 주기를 넘어서는 관찰 가능성에 이르기까지, 이는 관찰 가능성이 직면해야 하는 중요한 과제이자 변화입니다. 이러한 변경을 통해서만 관찰 가능성이 지속적인 제공 속도를 따라가고 최신 소프트웨어 개발에 필요한 지원을 제공할 수 있습니다.
카테고리 없음