需求(Forces)
結果上下文(Resulting context)
相關模式(Related patterns)
需求:必須解決的問題
需求部分描述了必須解決的問題和圍繞這個問題的特定上下文環境。
需求有時候是相互沖突的,所以不能指望把他們全部都解決(必須取舍)。哪一個需求更重要,取決于他的上下文。你必須把需求按優先級進行排序。
結果上下文:采用模式可能帶來的后果
好處:這個模式的好處和他解決了什么需求。
弊端:這個模式的弊端和他沒有解決哪些需求。
問題:使用這個模式所引入的問題。
相關模式:5種不同類型的關系
前導(Predecessor):
前導模式是催生這個模式的需求的模式。例如,微服務架構模式是除單體架構模式以外整個模式語言中所有模式的前導模式。
后續(Successor):
后續模式是指用來解決當前模式所引入的新問題的模式。例如,如果你采用了微服務架構模式,你需要一系列的后續模式來解決諸如服務發現,斷路器等微服務帶來的新問題。
替代(Altrenative):
當前模式的替代模式,提供了另外的解決方案。例如,單體架構和微服務架構就是互為替代的模式。
泛化(Generalization):
針對一個問題的一般性解決方案。例如,在第12章中你會了解到“每主機單個服務”這個模式存在多種不同的技術實現。
特化(Specialization):
針對特定模式的具體解決方案。例如,在第12章中你會了解到將服務部署為容器模式是針對“每主機單個服務”的具體解決方案。
參考:微服務架構設計模式 (克里斯·理查森(Chris Richardson))