Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

The system processes a stream of log events and triggers lambda functions that each handle various API calls in a user provisioning flow. Some of the tasks could run independently of the others, and those that depend on successful completion of a prior task are triggered based on a pattern-matched log emitted from the dependent lambda functions. Failure on any of the functions pushes events to a shared dead letter queue. Everything needs to be idempotent and use the original source timestamp field to be handled correctly. We could have achieved the same business logic with Step Functions (or any number of approaches, with the requirement that no new servers had to be managed) but Event Bus had a ready-made integration with an event source that we needed, and was a lot cheaper to operate. I can't really speak in depth to the gripes of others, but I can say that tracing and debugging was hard until we made it easy. If we had to add a lot more interdependent business logic to the system it would have probably become difficult to maintain.

Here is one HN thread about some of the issues others have run into: https://news.ycombinator.com/item?id=19072850



Trying to choreograph dozens of lambda functions is one of those solutions that’s more hype than sense. AWS pitched lambda for one-off video transcoding, then overzealous folks took it way way too far.


Yeah I think the user you are replying to may not be an astronaut yet, but he is at least a pilot :)


The wrong kind of pilot can get you to space but re-entry proves to be a real problem.


That's the best insight ever, made powerfully sharp by being correct.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: