20180122領域建模討論

總摘要: 領域建模


2018-01-22

  • 摘要: 領域建模.
1. 領域建模中,狀態(tài)的轉(zhuǎn)變不是直接更改原先記錄中的狀態(tài),而是一件一件的事件都記錄下來壶冒,然后根據(jù)這些事件計算出當前的狀態(tài),這么理解對么? [北京-二兩豆腐]

北京-喜<-> 19:35:40
如果你依賴記錄事件破托,沒什么關系。 但是原紀錄就不需要有狀態(tài)了
北京-二兩豆腐<-> 19:36:01
但是這會給查詢帶來很大的復雜性
北京-喜<-> 19:36:07
如果原紀錄有狀態(tài)歧蒋,那么這個狀態(tài)就是唯一正確解, 記錄只能作為追溯, 這是2種思路
北京-二兩豆腐<-> 19:36:43
如果不需要追溯土砂,是不是就沒必要采用這種設計[對], 那就是還是基于狀態(tài)的
北京-喜<-> 19:37:28
換句話說, 為什么要算呢。因為結果從現(xiàn)在這個時刻去看谜洽,是確定的
北京-二兩豆腐<-> 19:37:42
一條記錄萝映,根據(jù)事件更新狀態(tài)字段
杭州-東子(-) 19:38:08
數(shù)據(jù)庫進行修改操作是不是就是保留原來的記錄,新增了一條修改后的數(shù)據(jù)阐虚,然后過一段時間刪除之前的舊的數(shù)據(jù)靶虮邸?
北京-喜<-> 19:38:16
不是去改過去的記錄, 而是記錄最新的結果
北京-二兩豆腐<-> 19:39:18
嗯嗯实束,對奥秆,上面說給架構上帶來很大的好處,還會有什么好處呢
北京-喜<-> 19:39:43
沒什么好處, 我猜測作者是從時間序列上有些體會咸灿,推導出的結論
北京-二兩豆腐<-> 19:40:45
哈哈构订。好吧,不過領域建模上也確實是這么建議的
北京-喜<-> 19:40:53
更新數(shù)據(jù)并不是改過去的結果析显,而是記錄最新的信息現(xiàn)狀, 非最新的記錄鲫咽,都被丟棄, 這也是一個可選思路。 但是他認為是更改過去的結果, 領域設計上應該沒有這種建議谷异,領域建姆质基本沒說具體到這么細化的問題
北京-二兩豆腐<-> 19:42:43
說的是基于事件建模,不要基于狀態(tài)
北京-喜<-> 19:43:29
我認為都可以的, 主要是尺度的拿捏, 事件本身也有膨脹問題, 狀態(tài) 也有大狀態(tài)歹嘹、小狀態(tài), 大小狀態(tài) 都可以是事件
北京-二兩豆腐<-> 19:44:32
那就行箩绍,本來想在我這邊的一個需求上采用這種設計試試,但是感覺沒什么好處尺上,反而增加了復雜性
北京-喜<-> 19:44:55
事件最大的問題 是流程的可視問題, 編程上解耦很好, 但是鏈路和協(xié)作關系材蛛,人比較難理解和追蹤, 狀態(tài)機 相對清晰一些
北京-二兩豆腐<-> 19:46:04
對,通過分解事件怎抛,eventstroming 卑吭,這樣能清晰的劃分系統(tǒng)邊界, 對于復雜系統(tǒng),做微服務化拆分比較有好處
北京-喜<-> 19:46:35
這個eventstroming 不夠, 表達不出來協(xié)作關系
北京-二兩豆腐<-> 19:47:56
還要用到四色建模
北京-喜<-> 19:48:27
只要理解四色模型就行了, 事件驅(qū)動马绝,當需要了解業(yè)務全貌 或者 故障排障的時候豆赏,特別困難,
北京-二兩豆腐<-> 19:49:20
謝謝喜神,通過討論我決定手中的這種需求不采用這種設計方式了,還是繼續(xù)基于狀態(tài), 對于業(yè)務領域特別復雜的時候比較適用, 開發(fā)人員和業(yè)務專家阻抗比較高
北京-喜<-> 19:50:47
我比較傾向任務驅(qū)動, 任務有分類, 越是復雜的事務掷邦,事件驅(qū)動越麻煩, 從已落地的代碼上白胀,沒有人能說清楚業(yè)務鏈路, 因為全是解耦的, 需要額外記錄、或者依靠技術組件的trace抚岗、或者一些視圖啥的.
北京-石板路上的少年(-) 19:55:21
@ffud 從已落地的代碼上或杠,沒有人能說清楚業(yè)務鏈路, 這個不至于吧!
北京-喜<-> 19:55:46
就是說你發(fā)出去的事件,如果是跨應用的, 從自己的編碼上 是不知道消費者是誰的, 自然業(yè)務到這里就停止的宣蔚,從代碼沒法繼續(xù)推斷下去了, 我們訂單系統(tǒng)里面很多自消費的向抢、跨應用的, 所以需要額外的文字記錄
蘇州-一樹梨花啊(-) 19:56:19
但每個消費者的業(yè)務還是清楚的, 消費者自己的業(yè)務
北京-喜<-> 19:56:52
我不相信你查MQ topic能查清楚, 這個樹狀、圖狀的依賴關系
福州-風火(-) 19:55:30
喜神能說說任務驅(qū)動嗎件已?
北京-喜<-> 19:58:04
和日常的工作基本一致, 比如你的老板給你下發(fā)一個任務笋额, 有時候需要應答篷扩,有時候不需要
福州-風火(-) 19:59:03
從這個角度,感覺和單一事件類似鉴未?
北京-喜<-> 19:59:03
你完成一個任務,有時候需要周知老板铜秆,有時候需要周知一堆關聯(lián)人淹真,有時候誰也不需要周知
福州-風火(-) 19:59:13
我好像沒有理解
北京-喜<-> 19:59:31
所以任務有幾個分類, 無非通知老板的時候,可以是異步通知
福州-風火(-) 19:59:49
那任務人本身是否需要知曉周知人连茧?
北京-喜<-> 19:59:57
這一步 就是現(xiàn)在在用的事件驅(qū)動,僅僅異步就夠了, 各個關聯(lián)人客扎,假如你不知道,比如你在群里喊下罚斗,什么事情已經(jīng)done
福州-風火(-) 20:00:35
那不同于事件驅(qū)動的地方是徙鱼?
北京-喜<-> 20:00:35
就是現(xiàn)在的MQ廣播模式, 事件驅(qū)動是任務驅(qū)動的一個子集
福州-風火(-) 20:01:39
我查查資料去,謝謝喜神
北京-喜<-> 20:01:53
好像沒有資料
成都-并發(fā)(-) 20:02:16
事件驅(qū)動是來一個事件针姿,用一個線程去跑
福州-風火(-) 20:02:58
不太明白任務驅(qū)動的定義
北京-喜<-> 20:03:50
我們?nèi)粘9ぷ髦校瑓f(xié)作的方式, 和計算機系統(tǒng)之間的協(xié)作绞绒,是一致的, 事件驅(qū)動榕暇,只表達了其中的一個部分
福州-風火(-) 20:04:32
那和消息驅(qū)動饲趋,感覺又混了
北京-喜<-> 20:05:03
消息驅(qū)動也一樣 ,大部分事情撤蟆,基本上收到的時候,已經(jīng)訂好了應答方式,事件驅(qū)動和消息驅(qū)動家肯,都沒有定義這個關系, 比如 老板給你1個任務盟猖。 你完成之后,需要告訴老板反镇, 也需要告訴PM娘汞、銷售、QA等, 通知給老板的方式你弦,和通知PM、銷售尸昧、QA的方式旷偿,其實不一樣的
福州-風火(-) 20:06:58
消息和事件都只管發(fā)出去。不管回來萍程,是這個意思吧
北京-喜<-> 20:07:33
啥都沒管,所以看起來啥場景都適合, 但是當精細化追溯鏈路和數(shù)據(jù)關系的時候磁浇,追蹤不出來
廣州-小護士<-> 19:54:22
對于沒有上下文關系的行為可以抽象為事件朽褪?有上下文關系且鏈路很深的要抽象為pipeline?
福州-風火(-) 20:07:40
pipe應該是組合事件和編排相關吧缔赠。和抽象無關嗤堰?
廣州-小護士<-> 20:08:00
我就是說,你要查鏈路的,就用pipeline, 就像jenkinFile那種寫法
北京-喜<-> 20:09:01
不是同步編碼實現(xiàn)pipeline, 而且任務的數(shù)據(jù)結構上 自描述的
福州-風火(-) 20:09:50
我有點理解了戈抄。每個任務自描述后专,方便追蹤
北京-喜<-> 20:09:54
只看這個數(shù)據(jù)結構,就知道各個環(huán)節(jié)戚哎,向上和向下數(shù)據(jù)流是什么樣的
福州-風火(-) 20:10:05
能講講落地的方式嗎?
北京-喜<-> 20:10:21
具體的交互可以是command丈冬、事件
福州-風火(-) 20:11:24
那任務自描述使用何種方式達成甘畅?
北京-喜<-> 20:11:51
這個需要自己寫框架, 首先各個服務是得能表達的, 這個方案比較重
福州-風火(-) 20:12:08
謝謝,受教了粒梦。理念理解了荸实,落地不太容易.
北京-喜<-> 20:13:05
整體和建模思路一致,模型驅(qū)動, 數(shù)據(jù)鏈路准给、應用關系,也是可以建模的. 事件驅(qū)動 我們也在用, 搞了十幾個事件祖灰,后來不敢繼續(xù)搞了, 沒人能說清楚數(shù)據(jù)流向了
長沙-艾爾(-) 20:14:00
那消息驅(qū)動是什么畔规。。三妈。跟事件驅(qū)動是什么關系莫绣。。对室。
福州-風火(-) 20:14:30
事件驅(qū)動可以認為是消息驅(qū)動的特異化, 計算機協(xié)作建立在消息基礎上
成都-梅小西(-) 20:17:02
基于event編程和基于reactor編程咖祭,有什么區(qū)別
北京-喜<-> 20:17:29
reactor 多了一個處理器模型
廣州-小護士<-> 20:17:38
reactor就是pipeline的味道
北京-喜<-> 20:17:52
整體全部是事件驅(qū)動么翰,不管同步還是異步, 通常我們使用的事件驅(qū)動纠吴,一般是指的 異步事件
成都-梅小西(-) 20:18:09
java9原生支持reactor了
北京-喜<-> 20:18:32
不是說不是好東西, 就是太靈活了, 業(yè)務鏈路追溯很困難, 需要拿持久化的handler追蹤, 以前的編程習慣是,用代碼的調(diào)用關系反應業(yè)務流程和數(shù)據(jù)走向, 現(xiàn)在可以轉(zhuǎn)到數(shù)據(jù)結構上戴已,上次分享的時候EF框架有一部分這個意思
長沙-艾爾(-) 20:20:26
用了這樣那樣的驅(qū)動锅减,就掩蓋了調(diào)用鏈怔匣。。每瞒。
北京-喜<-> 20:21:08
系統(tǒng)最外層接收數(shù)據(jù)和命令之后,對于整體的處理節(jié)點代芜,就確定了
北京-張文(-) 20:21:21
通過日志追蹤浓利?
北京-喜<-> 20:21:24
有個整體的數(shù)據(jù)結構表達所有的處理節(jié)點, 日志是補丁,依賴程序員的編程素質(zhì), 每次調(diào)用走的只是一條路, 整體思路就是所有的信息都是可以建模的, 即便是各個處理過程. 你寫的Service贷掖,都是可以被抽象的JVM server, 也可以抽象個模型來表達, 每個task/data 需要哪些server 協(xié)作苹威,也是可以描述的, 資源也是可以抽象的.

最后編輯于
?著作權歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市掷酗,隨后出現(xiàn)的幾起案子腹暖,更是在濱河造成了極大的恐慌,老刑警劉巖脏答,帶你破解...
    沈念sama閱讀 211,348評論 6 491
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異阿蝶,居然都是意外死亡,警方通過查閱死者的電腦和手機玷过,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,122評論 2 385
  • 文/潘曉璐 我一進店門筑煮,熙熙樓的掌柜王于貴愁眉苦臉地迎上來真仲,“玉大人,你說我怎么就攤上這事秸应。” “怎么了桑谍?”我有些...
    開封第一講書人閱讀 156,936評論 0 347
  • 文/不壞的土叔 我叫張陵祸挪,是天一觀的道長。 經(jīng)常有香客問我盈罐,道長闪唆,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 56,427評論 1 283
  • 正文 為了忘掉前任票顾,我火速辦了婚禮帆调,結果婚禮上,老公的妹妹穿的比我還像新娘番刊。我一直安慰自己,他們只是感情好蝉绷,可當我...
    茶點故事閱讀 65,467評論 6 385
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著辆床,像睡著了一般桅狠。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上咨堤,一...
    開封第一講書人閱讀 49,785評論 1 290
  • 那天漩符,我揣著相機與錄音,去河邊找鬼陨仅。 笑死铝侵,一個胖子當著我的面吹牛,可吹牛的內(nèi)容都是我干的狐赡。 我是一名探鬼主播疟丙,決...
    沈念sama閱讀 38,931評論 3 406
  • 文/蒼蘭香墨 我猛地睜開眼享郊,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了炊琉?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 37,696評論 0 266
  • 序言:老撾萬榮一對情侶失蹤锰悼,失蹤者是張志新(化名)和其女友劉穎团赏,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體丝里,經(jīng)...
    沈念sama閱讀 44,141評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,483評論 2 327
  • 正文 我和宋清朗相戀三年复斥,在試婚紗的時候發(fā)現(xiàn)自己被綠了械媒。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 38,625評論 1 340
  • 序言:一個原本活蹦亂跳的男人離奇死亡痢虹,死狀恐怖主儡,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情糜值,我是刑警寧澤,帶...
    沈念sama閱讀 34,291評論 4 329
  • 正文 年R本政府宣布病往,位于F島的核電站骄瓣,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏畔勤。R本人自食惡果不足惜扒磁,卻給世界環(huán)境...
    茶點故事閱讀 39,892評論 3 312
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望嚷硫。 院中可真熱鬧始鱼,春花似錦、人聲如沸医清。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,741評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至系吭,卻和暖如春颗品,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背躯枢。 一陣腳步聲響...
    開封第一講書人閱讀 31,977評論 1 265
  • 我被黑心中介騙來泰國打工锄蹂, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留氓仲,地道東北人得糜。 一個月前我還...
    沈念sama閱讀 46,324評論 2 360
  • 正文 我出身青樓朝抖,卻偏偏與公主長得像,于是被迫代替她去往敵國和親槽棍。 傳聞我的和親對象是個殘疾皇子抬驴,可洞房花燭夜當晚...
    茶點故事閱讀 43,492評論 2 348

推薦閱讀更多精彩內(nèi)容