From 093525dbd9f79f7f2d30335f8e1e59de7212b785 Mon Sep 17 00:00:00 2001 From: "amaury@reacher.email" Date: Sat, 30 Nov 2024 14:47:39 +0000 Subject: [PATCH] GITBOOK-15: Remove preprocess queue --- .../Screenshot 2024-11-30 at 15.33.27.png | Bin 0 -> 120814 bytes .../migrations/reacher-configuration-v0.10.md | 23 ++--------- docs/self-hosting/scaling-for-production.md | 37 ++++++------------ 3 files changed, 15 insertions(+), 45 deletions(-) create mode 100644 docs/.gitbook/assets/Screenshot 2024-11-30 at 15.33.27.png diff --git a/docs/.gitbook/assets/Screenshot 2024-11-30 at 15.33.27.png b/docs/.gitbook/assets/Screenshot 2024-11-30 at 15.33.27.png new file mode 100644 index 0000000000000000000000000000000000000000..c18d3bee7f77fe9336b933e4f37c6a558ec4cd45 GIT binary patch literal 120814 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

-21eetgZO+(Ph1#e~^ZfmT(C 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�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 Jve?2m?sq5)O

Reacher architecture for scaling

+

Reacher queue architecture

-With this architecture, it's possible to horizontally scale the number of workers, while making sure that the individual IPs don't get blacklisted. To do so, we propose to start with two types of workers. +With this architecture, it's possible to horizontally scale the number of workers. However, to prevent spawning to many workers at once resulting in blacklisted IPs, we need to configure some concurrency and throttling parameters below. -### Shared Configuration between both workers +### Worker Configuration -To enable the above worker architecture, set the following parameters in [reacher-configuration-v0.10.md](../advanced/migrations/reacher-configuration-v0.10.md "mention"): +To enable the above worker architecture without getting blacklisted, we need to set some parameters in [reacher-configuration-v0.10.md](../advanced/migrations/reacher-configuration-v0.10.md "mention"): * `worker.enable`: true * `worker.rabbitmq.url`: Points to the URL of the RabbitMQ instance. * `worker.postgres.db_url`: A Postgres database to store the email verification results. -### 1st worker type: SMTP worker using Proxy +Since spawning workers (generally on cloud providers) doesn't guarantee a reputable IP assigned to the worker, we propose to configure all workers to use a proxy. Proxies generally offer a pricing per IP per month; we recommend buying one IP for each 10000 email verifications you do per day. -These workers will consume all emails that should be verified through SMTP. Currently, this includes all emails, except Hotmail B2C and Yahoo emails, which are best verified using a headless navigator. Since maintaing IP addresses is hard, we recommend using a proxy, see [proxies.md](proxies.md "mention"). +* `worker.proxy.{host,port}`: Set a proxy to route all SMTP requests through. You can optionally pass in `username` and `password` if required. -Assuming your proxy has `N` available IP addresses, we recommend spawning the same number `N` of workers, each with the config below: +We also propose some recommended values for concurrency and throttling parameters. These parameters ensure that the proxy that we use will have its IP well maintained. -* `worker.rabbitmq.queues`: `["check.gmail","check.hotmailb2b","everything_else"]`. The SMTP workers will listen to these queues. -* `worker.proxy.{host,port}`: Set a proxy to route all SMTP requests through. You can optionally pass in `username` and `password` if required. -* `worker.rabbitmq.concurrency`: 10. -* `worker.throttle.max_requests_per_minute`: 100. -* `worker.throttle.max_requests_per_day`: 10000. This is the recommended number of verifications per IP per day. Assuming there are `N` IP addresses and `N` workers, each worker should perform 10000 verifications per day. +* `worker.rabbitmq.concurrency`: 5. Each worker can process 5 emails at a time. +* `worker.throttle.max_requests_per_minute`: 60. If this value is too high, the recipient SMTP server might see sudden spikes of email verifications, resulting in an IP blacklist. +* `worker.throttle.max_requests_per_day`: 10000. This is the recommended number of verifications per IP per day. Assuming our proxy has `N` IP addresses and `N` workers, each worker will perform 10000 verifications per day in average. -You can scale up the number `N` as much as you need. Remember, the rule of thumb is 10000 verifications per IP per day. For example, if you're aiming for 10 millions verifications per month, we recommend 33 or 34 IPs. +You can scale up the number `N` as much as you need, by buying more IPs and spawning more workers. Remember, the rule of thumb is 10000 verifications per IP per day. For example, if you're aiming for 10 millions verifications per month, we recommend buying 33 or 34 IPs: ``` 10,000,000 emails per month / 30 = 33,000 emails per day / 10000 = 33 IPs @@ -44,17 +42,6 @@ You can scale up the number `N` as much as you need. Remember, the rule of thumb Refer to [reacher-configuration-v0.10.md](../advanced/migrations/reacher-configuration-v0.10.md "mention")to see how to set these settings. -### 2nd worker type: Headless worker - -These workers will consume all emails that are best verified using a headless browser. The idea behind this verification method is to spawn a headless browser that will navigate to the email provider's password recovery page, and parse the website's response to inputting emails. This method currently works well for Hotmail and Yahoo emails. - -To spawn such a worker, provide the config: - -* `worker.rabbitmq.queues`: `["check.hotmailb2c","check.yahoo"]`. These are the emails that are best verified using headless. -* `worker.throttle.max_requests_per_minute`: 100 - -Refer to [reacher-configuration-v0.10.md](../advanced/migrations/reacher-configuration-v0.10.md "mention")to see how to set these settings. - ## Understanding the architecture with Docker Compose We do not recommend using Docker Compose for a high-volume production setup. However, for understanding the architecture, the different Docker images, as well as how to configure the workers, this [`docker_compose.yaml`](../../docker-compose.yaml) file can be useful. @@ -64,4 +51,4 @@ We do not recommend using Docker Compose for a high-volume production setup. How Contact [amaury@reacher.email](https://app.gitbook.com/u/F1LnsqPFtfUEGlcILLswbbp5cgk2 "mention")if you have more questions about this architecture, such as: * deploying on Kubernetes (Ansible playbook, Pulumi) -* more specialized workers (e.g. Gmail and Hotmail B2B workers can be separated) +* more specialized workers (e.g. some workers doing headless verification only, others doing SMTP only)