我有一個程序註冊一個RPC函數,例如。 com.myapp.foo。然後我在幾個獨立的設備上運行這個程序,全部連接到同一個路由器。WAMP RPC在不同的設備上具有相同的名稱
當我啓動第二個設備時,由於RPC功能已被註冊(wamp.error.procedure_already_exists
),所以出現錯誤。
這很有意義,因爲路由器需要一個唯一的名稱才能正確路由過程調用。但在我的情況下,
我的第一個想法是,每個設備應該生成一個獨特的過程名稱(com.myapp.device4.foo)。
- 但是,那麼程序如何生成一個唯一的名稱(是否有比循環更復雜的東西,直到找到一個唯一的名稱)?
- 此外,更重要的是,調用者將如何發現與特定節點關聯的過程的名稱?例如,主叫方會希望查找所有已啓動的設備,然後在每個設備上撥打com.myapp.foo。
我正在使用python/asyncio和javascript,在 crossbar.io服務器上都使用高速公路。