peltr

command module
v0.0.0-...-b4f7333 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Dec 12, 2022 License: BSD-2-Clause Imports: 3 Imported by: 0

README

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───────────────┤                                      │
   │                                    │                                      │
   │                                    │                                      │
   │                                    │                                      │
   │                                    │                                      │
   │                                    │                                      │
   │                                    │                                      │
   │                                    │                                      │
   │                                    │                                      │

Documentation

The Go Gopher

There is no documentation for this package.

Directories

Path Synopsis
cmd
pkg

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL