Skip to content
This repository has been archived by the owner on Feb 7, 2024. It is now read-only.

Added a page describing the "jobs" plugin #70

Merged
merged 23 commits into from
Aug 20, 2021
Merged

Added a page describing the "jobs" plugin #70

merged 23 commits into from
Aug 20, 2021

Conversation

SerafimArts
Copy link
Contributor

@SerafimArts SerafimArts commented Aug 11, 2021

Related PR: roadrunner-server/roadrunner#726

It is worth noting that all places marked with the TODO label contain an unfinished description containing information about the internal device of the RoadRunner:

  • Common Configuration
    • num_pollers
    • pipeline_size
    • pool.num_workers
    • pool.max_jobs
    • pool.allocate_timeout
    • pool.destroy_timeout
  • Drivers Configuration
    • Ephemeral Driver
    • AMQP Driver
    • Beanstalk Driver
    • SQS Driver
  • RPC Interface
    • jobs.Push
    • jobs.PushBatch
    • jobs.Pause
    • jobs.Resume
    • jobs.List
    • jobs.Declare

P.S. Additionally

  • Received Task API
    • Task Failing
  • RPC Interface
    • jobs.Stat

beep-beep/jobs.md Outdated Show resolved Hide resolved
beep-beep/jobs.md Outdated Show resolved Hide resolved
beep-beep/jobs.md Outdated Show resolved Hide resolved
beep-beep/jobs.md Outdated Show resolved Hide resolved
beep-beep/jobs.md Outdated Show resolved Hide resolved
beep-beep/jobs.md Outdated Show resolved Hide resolved
beep-beep/jobs.md Outdated Show resolved Hide resolved
@rustatian rustatian added the enhancement New feature or request label Aug 12, 2021
@rustatian rustatian added this to the v2.4.0 milestone Aug 12, 2021
beep-beep/jobs.md Outdated Show resolved Hide resolved
beep-beep/jobs.md Outdated Show resolved Hide resolved
@SerafimArts
Copy link
Contributor Author

The documentation has been completed. No more major changes or additions on my part are planned.

Comment on lines 120 to 129
- `pool.num_workers` - How many worker processes will be started. Zero
(or nothing) means the number of logical CPUs.

- `pool.max_jobs` - Maximal count of worker executions. Zero (or nothing) means
no limit.

- `pool.allocate_timeout` - Timeout for worker allocation. Zero means no limit.

- `pool.destroy_timeout` - Timeout for worker destroying before process killing.
Zero means no limit.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pool inherits all general pool options, such as supervisor, TTL, etc, not only 4 described above.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@rustatian Maybe then just remove this description altogether leaving a link to https://roadrunner.dev/docs/intro-config ?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@rustatian Maybe then just remove this description altogether leaving a link to https://roadrunner.dev/docs/intro-config ?

Yep, ok.

[documentation page](https://www.rabbitmq.com/download.html). After that, you
should configure the connection to the server in the "`amqp`" section. This
configuration section contains exactly one `addr` key with a connection DSN
in the format: `amqp://[USER]:[PASSWORD]@[HOST]:[PORT]`.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Put the doc about AMQP URI format here: https://www.rabbitmq.com/uri-spec.html

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done

window size in octets. See also ["prefetch-size"](https://www.rabbitmq.com/amqp-0-9-1-reference.html)
in AMQP QoS documentation reference.

- `queue` - AMQP internal (inside the driver) queue name.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

When I revisit this section, I guess, that we can delete internal (inside the driver) from the description, because this is the actual AMQP queue name.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This note is needed in order to understand that this queue name is not public, available for work from the plugin's API.

```sh
wget https://s3-eu-west-1.amazonaws.com/softwaremill-public/elasticmq-server-1.2.0.jar

// Where "custom.conf" is your own config file
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I guess that will be better to point the user to the existing Dockerfile with all configuration needed. Or, provide both, local and dockered setup with the sample of the custom.conf : https://github.com/spiral/roadrunner/blob/master/tests/env/custom.conf

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don’t think it makes sense to write down the complete installation instructions. This example is only needed to show that the SQS is available for local installation too, in addition to being used in AWS.

So yeah, I think a Dockerfile link will suffice.

However, I am confused by the fact that it is located in the tests directory, which may confuse users and they may think that this use case is only possible for development.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P.S. yaml is not a valid Dockerfile extension

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

kk. I corrected this description by simply providing a link to the repository with the project.

beep-beep/jobs.md Show resolved Hide resolved
Comment on lines 487 to 488
> Please note that this functionality is rarely used and slows down the work of
> queues.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

https://docs.aws.amazon.com/AWSSimpleQueueService/latest/SQSDeveloperGuide/sqs-queue-tags.html (at the bottom). Put a link or reference to the SQS docs section (Note part at the bottom)

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done

Copy link
Member

@rustatian rustatian left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lgtm

@rustatian rustatian merged commit 3aec63c into master Aug 20, 2021
@rustatian rustatian deleted the feature/jobs branch August 20, 2021 12:14
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
enhancement New feature or request
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants