我正在編寫基本上負責打開和關閉其他服務的服務,但它們需要按特定順序打開和關閉。順序處理算法或正則表達式
- SvcMain
- 我。 SvcMasterPool1 ii。 SvcMasterPool2 iii。 SvcMasterPool3 ......
- i。 SvcChildPool1 ii。 SvcChildPool2 iii。 SvcChildPool3 .....
下面是規則: 要停止服務:
- 如果#1被停止,一切需要在它之前被停止。
- 如果需要停止#2中的任何內容,則需要先停止#3中的匹配服務。 (SvcChildPool1必須在SvcMasterPool1之前停止)
- #3中的服務可以在沒有任何前置條件的情況下停止。
啓動服務: 它與停止順序完全相反。 1.要啓動#3的服務,需要啓動#2和#1中的匹配svc 2.#2中的服務需要啓動#1 3.沒有#1的前提條件
Master和Child Svcs的數量會隨着時間增加或減少。我不想對代碼中的邏輯進行硬編碼,我正在考慮使用正則表達式來驅動它。我難過的是從#3中獲得匹配的svc。如果我知道我需要停止「SvcMasterPool2」,我該如何拿出「SvcChildPool2」。我可以有一個正則表達式來匹配所有的SvcChildPoolX,但不能提供一個解決方案來匹配等效的孩子。
任何幫助將不勝感激,或任何其他建議更適合的方法是值得歡迎的。
我打算使用數據庫,但我不想爲單個服務器添加順序。因此使用RegEx的想法。所以我只是存儲這個模式並在所有服務器上使用它。
謝謝。
此服務將被數以百計的服務器上,以便維護單獨的XML文件的託管不會成爲現實。我打算使用數據庫,但我不想爲單個服務器添加序列。因此使用RegEx的想法。 – 2012-02-24 15:55:25