Jeremiah Lowin created AIRFLOW-1005:
---------------------------------------
Summary: Speed up Airflow startup time
Key: AIRFLOW-1005
URL: https://issues.apache.org/jira/browse/AIRFLOW-1005
Project: Apache Airflow
Issue Type: Improvement
Affects Versions: 1.8.0
Reporter: Jeremiah Lowin
Assignee: Jeremiah Lowin
Priority: Minor
Airflow takes approximately 1 second to import. It turns out that more than
half the time is spend doing two things: importing Cryptography to create
Fernet keys and importing Alembic.
The first Cryptography import is in configuration.py and is only necessary if
Airflow is generating a new airflow.cfg file (but currently gets run every
time). Therefore it can be easily deferred.
The second is in models.py to check if encryption is turned on. This can also
be deferred until encryption checks are actually needed.
Alembic is always imported even though it is only needed for running initdb()
and upgradedb(). It can be lazily imported inside those functions.
These simple changes reduce Airflow's startup time by half on my machine.
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)