套用場景
黑板模式的套用場景是要解決的任務可以分為多個子任務。解決方案如下圖所示:
優缺點
黑板模式的優點:可用於非確定性問題求解,啟發式解決過程,可維護性,可重用
不足:不能確保期望結果,效率低下,回退,不支持並行,共享空間的訪問需要同步
實際套用
在實際套用中常見的實現模式有:
A 利用資料庫
利用資料庫充當黑板,不同的套用共享資料庫中信息,並且可以更新數據信息。這也是最常見的實現方式。
特點:
1 便於實現信息的查詢,篩選和統計,這方面關係資料庫提供了SQL 92的強大支持。
2 不能用於較高實時性要求的環境,這種實現是工作在“拉模式”下的,並且高頻率的訪問資料庫會導致嚴重的系統性能問題。
B 利用發布—訂閱模式
這種實現方式通常採用訊息佇列作為黑板,佇列工作在主題模式(Topic),專家作為佇列的訂閱者,同時可以向佇列傳送訊息,訊息會被傳送至所有訂閱者。以上過程實現了專家間的信息交流。
特點:
1 可以有效套用於實時性要求較高的系統,這種實現工作在“推模式”下。
2 難於實現信息的統計分析,不像實現方式一那樣可以通過SQL支持,這些工作必須開發者自己完成。