Fork me on GitHub
#aws
<
2015-12-10
>
martinklepsch10:12:25

@cfleming: btw, did you end up using lambda for the license buying stuff?

cfleming10:12:58

@martinklepsch: Yeah, I did. It was a mixture of agony and ecstasy

cfleming10:12:22

I love Lambda and Dynamo, but I hate CloudWatch and API gateway.

martinklepsch10:12:43

Haven't used API gateway yet but everyone seems to hate it so already looking forward lol

martinklepsch10:12:29

This has been asked before I think but some more anecdotal knowledge would be interesting: how is startup time? @cfleming

martinklepsch10:12:53

(assuming you used Clojure not ClojureScript)

cfleming10:12:26

@martinklepsch: Sorry, fighting a few release-related fires, will get whisky for war tales in a bit.

martinklepsch10:12:00

sure, good luck 👍 congrats again, must be a really big day for you simple_smile

robert-stuttaford10:12:54

massive. congrats cfleming !

cfleming10:12:57

Thanks guys! It’s been a ton of work to get here, I can’t wait to work on functionality again!

cfleming11:12:45

@martinklepsch: I don’t actually know about instance startup time, it’s actually fairly difficult to measure. You do get a total elapsed time in CloudWatch, so if you create a simple Java lambda that doesn’t do anything you could probably test it.

cfleming11:12:36

That’s not my main problem though. The biggest pain point is that API gateway has a hard 10-sec timeout for Lambda backends. That sounds like a lot, but I’m getting a lot of timeouts when I access AWS services for the first time. Creating a DynamoDB client, finding a table and loading a single record out of it takes around 7.2 seconds when the instance is cold.

cfleming11:12:25

Once it’s warmed up a bit (interestingly, this isn’t true for the second request, more like the third or fourth) it starts to get a lot faster.

cfleming11:12:58

It’s actually not a great fit for occasional requests, which is daft - that seems like its ideal use case.

cfleming11:12:32

I actually put Dynamo in the mix to make the lambda idempotent because I was already seeing long timeouts for other services I use (KMS), but they’re faster once Dynamo is loaded first, so it must be some connection to AWS in general that’s taking the time.

alandipert12:12:00

not good for occasional web requests, but we're using it as a timer and it's great in that role

ricardo17:12:36

@cfleming Are you using DynamoDB? Faraday, or some other interface?

cfleming19:12:39

@ricardo: Um, some other interface: Java simple_smile

cfleming20:12:11

@ricardo: I washed my hands afterwards, though.

ricardo20:12:38

Good, wouldn’t want bad codebase hygene.

cfleming23:12:57

CloudWatch is truly pitiful.

cfleming23:12:22

Or I am extremely stupid, I guess is the other possibility.