You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository was archived by the owner on Dec 25, 2022. It is now read-only.
Copy file name to clipboardExpand all lines: README.md
+49-19Lines changed: 49 additions & 19 deletions
Original file line number
Diff line number
Diff line change
@@ -10,28 +10,35 @@ You can deploy this yourself or use our SAAS offer.
10
10
11
11
## SAAS Offer
12
12
13
-
While we're ironing things out you can use our service free of charge. Just publish an event to `arn:aws:sns:us-east-1:256608350746:scheduler-input-dev`. This topic is public so anyone can publish to it.
13
+
While we're ironing things out you can use our service free of charge. Just publish an event to `arn:aws:sns:us-east-1:256608350746:scheduler-input-prod`. This topic is public so anyone can publish to it.
14
14
15
15
If you become a heavy user with more than 100.000 events per month we might want to get in touch with you, so make sure to fill out the `user` field with some way to contact you (email, twitter handle, ...).
16
16
17
17
## Usage
18
18
19
19
### Setup
20
-
First of all you need an output topic that we can publish events to once the scheduled datetime arrives. To do this go to the AWS Console, then open the service SNS and create a topic that includes the following access policy.
20
+
First of all you need an output topic that we can publish events to once the scheduled datetime arrives. To do this run `python setup/init_output_topic.py <stage>`. This will create a topic called `scheduler-output-<stage>`and grant our account the right to publish messages. You can see the added policy below.
All fields are mandatory. Please make sure that the `payload` can be utf-8 encoded. If you submit an event that does not follow the spec, it will be dropped. Future versions will improve on this.
51
78
52
79
So far there is no batch publishing available for SNS. Make sure the event stays within the 256KB limit of SNS. We recommend that you only submit IDs and don't transfer any real data to the service.
53
80
@@ -69,9 +96,11 @@ You must have the following tools installed:
69
96
- python3
70
97
- pip
71
98
72
-
Run `setup/init_table.py` to setup the database.
99
+
Run `setup/init_table.py <stage>` to setup the database. Replace `<stage>` with the stage of your application.
100
+
101
+
Run `setup/init_input_topic.py <stage> [public]`. Replace `<stage>` with the stage of your application. You may append the parameter `public` to grant public publish rights.
73
102
74
-
Create an SNS topic named `scheduler-input-{stage}` and a SQS queue named `scheduler-queue-{stage}`. Replace `{stage}` with the stage that you use for the serverless deployment, e.g. `dev`. Adjust the access policies as necessary.
103
+
Run `setup/init_queue.py <stage>`. Replace `<stage>` with the stage of your application.
75
104
76
105
### Deploy
77
106
1. Navigate into the project folder
@@ -91,8 +120,8 @@ Our results showed that most of the events arrive within one second of the speci
91
120
92
121
The charts show the amount of events received on the y axis and the distribution by delay on the x axis.
0 commit comments