Journal
Notes
- RPM: request per minute.
/v1/admissions/cohort/all: a light endpoint cached./v1/admissions/syllabus/version: a heavy endpoint cached.
01/12/2024
[dev]switchWEB_WORKER_CLASSfromgeventtouvicorn.workers.UvicornWorker.[dev]switchWEB_WORKERSfrom1to2.[dev]switchWEB_WORKER_CONNECTIONfrom120to160.
Side effects:
- Support to async in Django.
- Memory up from 265MB to 437MB.
/v1/admissions/cohort/alland/v1/admissions/syllabus/versionchanged from 35 RPM both to 133 RPM #1 and 31 RPM #2, this should change with each attempt.
01/15/2024
[all]django_minify_htmlwas added to the middlewares.[prod]make_chargesfrequency changed fromevery 10 minutestoDaily at 12:00 AM UTC.
01/16/2024
[prod]setCELERY_DYNOSto2.[prod]setCELERY_MAX_WORKERSto3.[dev]switchCELERY_MAX_WORKERSfrom1to2.
01/17/2024
[all]STATIC_BUCKETsetted.
Side effects:
/v1/admissions/cohort/allchanged from 133 RPM both to 145 - 170 (one time) RPM, this should change with each attempt.
01/24/2024
[prod]preboot was enabled.[prod]switchWEB_WORKER_CLASSfromgeventtouvicorn.workers.UvicornWorker.[prod]switchLOG_LEVELfromDEBUGtoWARNING.[prod]setWEB_MAX_REQUESTSto6000.[prod]setWEB_MAX_REQUESTS_JITTERto3000.[dev]setWEB_MAX_REQUESTSto100.[dev]setWEB_MAX_REQUESTS_JITTERto50.
Side effects:
- In dev, this prevents the server could getting out of memory.
- In prod, this helps to have sufficient memory to add a third worker.
- If the server would have 1000 requests each 10 minutes, this would restart the worker each 60-90 minutes.
01/25/2024
[prod]switchWEB_MAX_REQUESTSfrom6000to3000.[prod]switchWEB_MAX_REQUESTS_JITTERfrom3000to1500.
Reasons for the change:
- Web worker was reaching 841 MB ram.
-09/09/2024
[all]GOOGLE_SECRETsetted.[dev]GOOGLE_CLIENT_IDsetted.[all]GOOGLE_REDIRECT_URLsetted.
11/09/2024
[all]GOOGLE_CLIENT_SECRETsetted.
Why:
- To enable the oauth flow for the Google Meet API.
30/09/2024
[prod]setGOOGLE_WEBHOOK_TOPICtowebhook.[dev]setGOOGLE_WEBHOOK_TOPICtowebhook-test.
Why:
- Google doesn't support webhooks directly, it uses its Pub/Sub service.
06/10/2024
[dev]HEROKU_POSTGRESQL_TEALwas replaced byHEROKU_POSTGRESQL_GOLD.
29/01/2025
[dev]switchCELERY_CONCURRENCYfrom8to4.
Why:
- To reduce the memory usage of the celery workers.