prepare for 3.16 or 3.17: mycelium becomes base messaging layer #67

Open
opened 2024-06-02 05:19:23 +00:00 by despiegk · 0 comments
Owner

ideas

  • replacement of RMB (should resolve our redundancy issue), use openrpc as standardized message format
  • mycelium = core communication layer between all our components e.g. ZDB, getting flights and their data
  • use well organized DNS as service locators e.g. $servicename.$validatorname.grid.tf , have service names everywhere same, this DNS is running on each validator over mycelium
  • use geo DNS as naming service ($servicename.grid.tf is geo balanced to $servicename.$validatorname.grid.tf depending on where people call the DNS server from)
  • each validator also runs a strong Mycelium node well connected and these are all used by each ZOS
  • ZOS get's the config for Mycelium from the connections to other Mycelium gateways from e.g. a git based repo so we can easily manage that

This would require

  • Mycelium to be rock solid, and keep on communicating, no matter what happens (as long as physically possible)
  • Check if Mycelium as a messaging layer is good enough (timeouts, retry, ...)
  • Every service we expose (in ZOS, in Explorer) uses OpenRPC (standardised format) over Mycelium messages
  • good security firewall rules on ZOS for incoming Mycelium traffic e.g. ZDB's all ok (port), OpenRPC ok, rest not.

Remarks

  • the hero team has developed generator for specs & clients from openrpc spec

todo

  • make story (stories) for 3.15 with deadlines/requirements
  • specs for the different parts e.g. DNS based on e.g. coredns or lee or ...
    • first version ok to have DNS names just in a github repo which is pulled in regularly
  • get team to agree on deadline
## ideas - replacement of RMB (should resolve our redundancy issue), use openrpc as standardized message format - mycelium = core communication layer between all our components e.g. ZDB, getting flights and their data - use well organized DNS as service locators e.g. $servicename.$validatorname.grid.tf , have service names everywhere same, this DNS is running on each validator over mycelium - use geo DNS as naming service ($servicename.grid.tf is geo balanced to $servicename.$validatorname.grid.tf depending on where people call the DNS server from) - each validator also runs a strong Mycelium node well connected and these are all used by each ZOS - ZOS get's the config for Mycelium from the connections to other Mycelium gateways from e.g. a git based repo so we can easily manage that This would require - Mycelium to be rock solid, and keep on communicating, no matter what happens (as long as physically possible) - Check if Mycelium as a messaging layer is good enough (timeouts, retry, ...) - Every service we expose (in ZOS, in Explorer) uses OpenRPC (standardised format) over Mycelium messages - good security firewall rules on ZOS for incoming Mycelium traffic e.g. ZDB's all ok (port), OpenRPC ok, rest not. Remarks - the hero team has developed generator for specs & clients from openrpc spec ## todo - [ ] make story (stories) for 3.15 with deadlines/requirements - [ ] specs for the different parts e.g. DNS based on e.g. coredns or lee or ... - first version ok to have DNS names just in a github repo which is pulled in regularly - [ ] get team to agree on deadline
despiegk changed title from myclium becomes base messaging layer for 3.15 to prepare for 3.15: mycelium becomes base messaging layer 2024-06-02 05:19:41 +00:00
thabeta was assigned by despiegk 2024-06-02 05:19:51 +00:00
despiegk self-assigned this 2024-06-02 05:19:55 +00:00
despiegk added the
Story
label 2024-07-28 07:49:39 +00:00
despiegk added this to the tfgrid_3_17 project 2024-07-28 07:49:42 +00:00
thabeta modified the project from tfgrid_3_17 to tfgrid_3_15 2024-08-06 14:44:23 +00:00
despiegk changed title from prepare for 3.15: mycelium becomes base messaging layer to prepare for 3.16: mycelium becomes base messaging layer 2024-08-19 16:46:35 +00:00
despiegk changed title from prepare for 3.16: mycelium becomes base messaging layer to prepare for 3.16 or 3.17: mycelium becomes base messaging layer 2024-10-25 05:30:09 +00:00
despiegk modified the project from tfgrid_3_15 to tfgrid_3_17 2024-10-25 05:30:13 +00:00
Sign in to join this conversation.
No Milestone
No project
1 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: tfgrid/circle_engineering#67
No description provided.