팀 내에서 많은 몇분을 제외한 많은 개발자 분들이 장기 휴가를 떠났었다. 그리고 다들 돌아오고 나서 공백 기간동안 있던 일에 대해 인수인계를 받고 우리 팀과 같이 회의를 진행하게 되는데, 휴가 기간동안 올려진 코드 PR에 대해 설명하던중 PR을 철회해야 할 때 생긴 일이다.
A 팀 리드: "그래도 연말 휴가 기간동안은 소프트웨어 배포 계획이 다 막혀서 해당 버그는 지금 적용되지 않았겠네요."
B 팀 리드: "근데 뭔가 이상하네요 PR리스트에 보이지도 않고, 지금 테스팅 환경에서 돌아가는 것 같은데요?"
A 팀 리드: "그럴리가 없는데... 저 2주동안 휴가라서 제가 승인을 안하면 코드가 배포될 일이 없을텐데요...?"
그러자 잠시 후 A 팀리드는 코드 PR이 확실히 승인 되고 Merge 된것을 확인 한 뒤 하는 말이였다.
A팀 리드: "이상하네요, 제가 유일한 권한자 인 줄 알았는데 이거 완전 Fallacies of distrubuted computing 이네요"
그리고 B 팀 리드도 그것을 듣고 공감을 하며 있을 수 있는 일이라고 얘기한다.
Fallacies of distrubted computing 은 무엇일까, Wikipedia에서는 이 문장을 개발자들이 분산된 개발 환경에서 오해하게 되는 실수를 다음 리스트로 나열했다. https://en.wikipedia.org/wiki/Fallacies_of_distributed_computing
- The network is reliable - 네트워크가 안정적이다
- Latency is zero - 네트워크 지연이 없다
- Bandwidth is infinite - 무한한 대역폭을 가지고 있다
- The network is secure - 네트워크는 안전하다.
- Topology doesn't change - 네트워크 토폴로지는 변하지 않는다
- There is one administrator - 한명의 권한자만 존재한다.
- Transport cost is zero - 통신 비용은 꽁짜다
- The network is homogeneous - 네트워크가 동일한 환경에 존재한다 - 모든 호스트 노드로 연결되어있다
우리의 경우, There is one administrator(한명의 권한자만 존재한다)에 해당된다 .
알고보니 보안 팀에서 권한을 줬던 사람이 한명 더 있었고 때마침 연말 휴가 기간에 다른 권한자가 업무를 담당해서 이러한 일이 생겼다. 큰 문제는 아니였지만 이러한 용어를 실제 상황과 함께 듣게 되니 흥미로워서 올려본다.
'경험 일지' 카테고리의 다른 글
똑똑하게 코드 작성 하기 (0) | 2024.02.20 |
---|---|
Kubernetes의 Liveness 그리고 Readiness probes (0) | 2024.01.22 |
Use case 이해의 중요성 (0) | 2024.01.15 |
비기능적 요구사항 - NFR(Nonfunctional requirement) (2) | 2024.01.09 |
System Integration(SI) / System Management(SM) 경험 (0) | 2024.01.02 |