@Luke Osborn Thanks for reaching out.
If you are using the storage blob trigger, then your function app should be triggered only for when a new or updated blob is detected once you have configured your function app. It should not be triggered for the existing blobs if there is no update to existing blobs. Please validate if this is not the case for your observation.
Is it possible to ensure blobs are processed in a particular order? No there is no configuration to process the blobs in order.
I'm also curious as to whether all existing blobs would be re-processed every time an update is made to the app or when it is restarted?
No, it should not trigger for existing blobs until and unless there is update blob on the existing blobs.
If you are only looking for BlobCreated event then you should leverage the event grid for storage event with azure function
Blob (Microsoft.Storage.BlobCreated) event --> Event Grid --> Function
For more details you can refer to this.
If you want to ensure that the Microsoft.Storage.BlobCreated event is triggered only when a Block Blob is completely committed, filter the event for the
CopyBlob
,PutBlob
,PutBlockList
orFlushWithClose
REST API calls. These API calls trigger the Microsoft.Storage.BlobCreated event only after data is fully committed to a Block Blob. To learn how to create a filter, see Filter events for Event Grid.