When I published Lambda that is called regularly like a cron task someone asked me how much would it cost (a fair question taking into account you pay per use, not per infrastructure). With lambda you pay for two things: a request/invocation and the time times memory used.
Do you want to run a task/function regularly, but don't want to pay an EC2 instance just to run cron? Or don't want to set it up and manage the instance?
You can use AWS lambdas (and zappa) for that. As an example, let's create and deploy a function …
Stuck with zappa? Assuming you're looking for help about the python lambda library and not the singer, then the following should help.
The main documentation is the project's README: https://github.com/Miserlou/Zappa/blob/master/README.md - check the links section for particular integrations (ex: django, flask, alexa skills …
Are you having problems with packaging your dependencies for a Lambda? You've done the AWS lambda python tutorials but now need to deal with something more complex? Do you just want to build a package to upload in the console or with terraform?
On the previous article Your queries are slow, but memory/cpu usage is low I mentioned that one of the reasons where you can observe slowness in an app on AWS that is using RDS is IOPS budgeting. The main symptom you've already gathered from the title and that's why …
You did a zappa deploy and it failed with An error occurred (ValidationException) when calling the PutRule operation: Provided role <your lambda role> cannot be assumed by principal 'events.amazonaws.com'?
You tried to create a lambda with a new handmade role only to be greeted by this …
You did a zappa deploy and it failed with InvalidParameterValueException: An error occurred (InvalidParameterValueException) when calling the CreateFunction operation: The role defined for the function cannot be assumed by Lambda?
You tried to create a lambda with a new handmade role only to be greeted by this cryptic error message …