#421 · bluetape4k-projects · tenant context
네 가지 tenant carrier를 읽을 수 있는 값, 소유하는 scope, 경계를 넘어 남는 범위로 비교합니다.
Carrier
carrier를 고르고 여섯 가지 상황을 재생합니다. 무엇이 보이는지, 누가 소유하는지, 경계 뒤에 무엇이 남는지 확인합니다.
현재 thread와 이 carrier instance 범위에 binding을 보관합니다.
키보드: 단계에 Tab으로 이동하고 Enter를 눌러 살펴보세요.
소유 계약 비교
네 가지 tenant carrier를 읽을 수 있는 값, 소유하는 scope, 경계를 넘어 남는 범위로 비교합니다.
현재 thread와 이 carrier instance 범위에 binding을 보관합니다.
lexical ScopedValue carrier가 binding을 소유합니다.
각 subscriber가 immutable Context chain을 소유합니다.
ApplicationCall attributes가 binding을 소유합니다.
Caller 책임
어떤 carrier도 tenant를 임의로 만들지 않습니다.
dispatcher 또는 suspend hop으로 자동 전파되지 않습니다.
StructuredTaskScope.fork는 상속하지만 독립 virtual thread와 coroutine bridge는 전파하지 않습니다.
scheduler 작업은 chain 안에 있지만 hook과 coroutine bridge는 자동으로 생기지 않습니다.
새 call은 unbound이며 dispatcher 경계에서는 call을 명시적으로 전달합니다.
경계 이후: 인증, 인가, tenant 해석과 업무 효과의 안전성은 caller가 소유합니다.
고정한 원본
5954b6329a3e11c70ef12b6d4bd8480e7b38be1b