AWS Lambda documentation says: Lambda scales your function by running additional instances of it as demand increases, and by stopping instances as demand decreases. This model leads to variations in application architecture, such as:
Unless noted otherwise, incoming requests might be processed out of order or concurrently.
If lambda is triggered by events from FIFO SQS, also then are there any chances that though SQS being FIFO orders the events but since lambda can process it out of order, so effectively order is not guaranteed here for event processing?
Yeah e.g. if you get 2 messages in quick succession they could get processed in parallel, or even out of order if the first message has to wait for a fresh execution environment to start up but the second message has a warm instance available to handle it. Setting concurrency to 1 should prevent this if you really want one-at-a-time processing.