aws-samples / aws-samples/aws-lambda-mirror-dns-function
Lambda function reaches max timeout limit (5min) in diff_zones()
- Vorherrschende Sprache
- Python
- Sterne
- 41
- Forks
- 29
- PR-Merge-Kennzahlen
- Keine gemergten PRs in 30 T.
Beschreibung
When running this Lambda function to mirror a zone containing a large amount of DNS records (~43500), it reaches max Lambda timeout limit of 5 minutes inside function `diff_zones()`.
The DNS `AXFR` request returns within `500` to `1000` milliseconds with `dig`, returning the 40k records very fast. The problem lies in the python code which needs to parse through all the `dns.zone.Zone` nodes, records, etc... and diff them to build the `differences` list.
The code never even gets to the looping over `differences` and running `update_resource_record()` to make changes to Route53.
It's hard to believe that the python code is so slow to generate a list of DNS zone differences. I can imagine a simple bash script using `dig` and `diff` that would be much more efficient to perform the same function for this portion of the Lambda code.
Beitragsleitfaden
Bewertung
Dieses Issue wurde noch nicht bewertet.