From 423924b3d8e936839f66b2bb208c7e4c51c46431 Mon Sep 17 00:00:00 2001 From: Martin Polanka Date: Sun, 6 Nov 2016 11:01:56 +0100 Subject: [PATCH] typos --- Broker.md | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/Broker.md b/Broker.md index 52383ae..995f35a 100644 --- a/Broker.md +++ b/Broker.md @@ -22,7 +22,7 @@ The broker's responsibilites are: The broker uses our ZeroMQ _reactor_ to bind events on sockets to handler classes. There are currently two handlers - one that handles the main functionality and another one that sends status reports to the REST API asynchronously so that the -broker doesn't have to wait for HTTP requests which can take a lot of time, +broker does not have to wait for HTTP requests which can take a lot of time, especially when some kind of error happens on the server. ### Worker registry @@ -30,18 +30,18 @@ especially when some kind of error happens on the server. The `worker_registry` class is used to store information about workers, their status and the jobs in their queue. It can look up a worker using the headers received with a request. It also uses a basic load balancing algorithm - the -workers are contained in a queue and whenever one of them receives a job, it's +workers are contained in a queue and whenever one of them receives a job, it is moved to the back, which makes it less likely to receive another job soon. -When a worker is assigned a job, it won't be assigned another one until we +When a worker is assigned a job, it will not be assigned another one until we receive a `done` message from it. ### Error handling **Job failure** - we recognize two ways a job can fail - an internally and externally. An internal failure is the worker's fault - for example when it -can't download a file needed for the evaluation for some reason. An external -error is for example when the job configuration is malformed. Note that we don't +cannot download a file needed for the evaluation for some reason. An external +error is for example when the job configuration is malformed. Note that we do not consider a student entering an incorrect solution a job failure. Jobs that failed internally are reassigned until a limit on the amount of @@ -59,7 +59,7 @@ failed to the frontend via REST API. will reconnect automatically. However, all jobs in their queues are lost. If a worker manages to finish a job and notifies the "new" broker, the report is forwarded to the frontend. The same goes for external failures. Jobs that fail -internally cannot be reassigned, because the "new" broker doesn't know their +internally cannot be reassigned, because the "new" broker does not know their headers - they are reported as failed immediately. ## Installation @@ -79,7 +79,7 @@ $ git submodule update --init ``` ### Install broker -It's supposed that your current working directory is that one with clonned worker source codes. +It is supposed that your current working directory is that one with clonned worker source codes. - Prepare environment running `mkdir build && cd build` - Build sources by `cmake ..` following by `make -j#` where `#` symbol refers to number of your CPU threads. @@ -87,11 +87,11 @@ It's supposed that your current working directory is that one with clonned worke Note that `rpm` and `deb` packages are build in the same time. You may need to have `rpmbuild` command (usually as `rpmbuild` or `rpm` package) or edit CPACK_GENERATOR variable _CMakeLists.txt_ file in root of source code tree. - Install generated package through your package manager (`yum`, `dnf`, `dpkg`). -_Note:_ If you don't want to generate binary packages, you can just install the project with `make install` (as root). But installation through your distribution's package manager is preferred way to keep your system clean and manageable in long term horizon. +_Note:_ If you do not want to generate binary packages, you can just install the project with `make install` (as root). But installation through your distribution's package manager is preferred way to keep your system clean and manageable in long term horizon. ## Configuration and usage -Following text describes how to set up and run broker program. It's supposed to have required binaries installed. Also, using systemd is recommended for best user experience, but it's not required. Almost all modern Linux distributions are using systemd now. +Following text describes how to set up and run broker program. It is supposed to have required binaries installed. Also, using systemd is recommended for best user experience, but it is not required. Almost all modern Linux distributions are using systemd now. Installation of broker program does following step to your computer: