Skip to content

A python asyncio driven service oriented architecture framework

License

Notifications You must be signed in to change notification settings

pmittal1982/vyked

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Vyked

a python framework for service oriented architectures

Service Registry

Service activation protocol
Two phase process - register and activate
  • ServiceHost setups its servers
  • ServiceHost requests registration with the ServiceRegistry by providing its node_id, full_service_name and a list of all its dependencies
  • Registry responds to the registration request of service host when it has atleast one instance for each dependency registered but not necessarily activated
  • ServiceHost receives registration response and connects with dependencies
  • ServiceHost then sends a request to activate and waits
  • Registry responds to activation request if all dependencies have requested activation

Packet Structure

{
    'to': <node_address> # bus layer
    'from': <node_address>, # bus layer

    'pid': <guid>, # packet_id which is added at the service layer
    'type': <publish|request|response>, # added at the service layer

    'app': <app_name>,
    'service':<service_name>,
    'entity': <user_id>, # user_id is routing key/partition for who this service is required
    'endpoint': <api_name>, #added at the service layer
    'version': <api version>, #added at the service layer

    'payload': <json object>, #added at the specific ServiceHost/Client implementation
}

  • pinging - half open socket checks
  • heartbeats
  • routing

About

A python asyncio driven service oriented architecture framework

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 100.0%