Skip to content

gideonw/peltr

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

28 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

peltr

Use cases:

  • Load testing
  • Integration testing (dockerized test deployment in an env for access)

logo idea: peltr is a boxer and fossil is a tree ring recording history

Proto

Spec

+--------+----------- N ----------+--+
|  cmd   |      message data      |CR|
+--------+------------------------+--+
|   8b   |        N bytes         |2b|
+--------+------------------------+--+

hello

Intro command to set worker id and capacity

Server: hello000\n\r

Worker: hello000id,10\n\r

ID: id

Capacity: 10

ping / pong

ping pong to ensure the worker is still working.

Server: ping

Client: pong

assign

Assign a job to a worker

Server: assign00<gobdata>\n\r

Data in this case will be a list of ids, endpoints, and rates.

Client: assign00<gobdata>\n\r

Data in this case will be an acknowledgement of receipt.

ready


Design

Server                                Worker

   │                                    │                                      │
   │                                    │                                      │
   ├─────────────Hello─────────────────►│                                      │
   │                                    │                                      │
   │◄─────────────Identify──────────────┤                                      │
   │                                    │                                      │
   │                                    │                                      │
   │                                    │                                      │
   ├────────────Ping───────────────────►│                                      │
   │                                    │                                      │
   │◄───────────Pong────────────────────┤                                      │
   │                                    │                                      │
   │                                    │                                      │
   │                                    │                                      │
   ├────────────Assign────────────────► │                                      │
   │                                    ├──────────Job────────────────────────►│
   │◄─────────────Working───────────────┤                                      │
   │                                    │                                      │
   │                                    │                                      │
   │                                    │                                      │
   │                                    │                                      │
   │                                    │                                      │
   │                                    │                                      │
   │                                    │                                      │
   │                                    │                                      │

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published