Please enable JavaScript.
Coggle requires JavaScript to display documents.
Copy projects - Coggle Diagram
Copy projects
-
New docs
-
-
-
-
:!: 3rd level support, architecture diagram
-
-
Event source
Change feed :check:
Reliability
:!: Only the most recent change for a given item is included in the change log. Intermediate changes may not be available. If there are multiple updates to the same item in a short period of time, it is possible to miss processing intermediate updates. Does it need to be mitigated by some persistent storage of change feed data? link link2 -- Discussed with Ales & Vit and we acknowledge that this can happen, but it's not a blocker ✅
CFP - "at least once" guarantee link :check:
Error handling docs :check:
-
Failed items
-
-
DLQ :green_cross:
Discussed with Vit and this seems to be overkill since there's not much else to fail other than a) reading from Change Feed b) storing to Blob. In both cases there's no need to continue processing other messages from the feed.
Monitoring
-
-
CFP monitoring
Change feed estimator link -- seems like good way to monitor the change feed, lets use it :check:
we should be able to identify that some event is not able to be handled and call 3rd level support :!:
-
-
-
Consumer service :check:
Is there any need for parallel consumers? CFP should handle that automatically, but needs to be checked -- discussed slightly with Vit and since bridge uses CFP already and has more-less the same amount of changes to process, there are no indices that we need more throughput :check:
-
CRUD
-
Update :warning:
Intermediate updates are not tracked, only the latest is stored. :warning:
-
-
-
Blob storage
-
-
Deletion/aggregation of old data :check: --> we won't do anything with this in the first iterations, let's see how much it costs
Init data / migration docs :check:
-
-
watch out for duplicities (the feed processor will eventually catch on live data already processed) :warning:
Needs to contain Application Timestamp (our .NET datetime timestamp, not the CosmosDB internal). Needs to be added to our DTOs because its not there and could be lost in mappings. :!:
-
-
-
-
Needs to contain Application Timestamp (.NET datetime, our own) (for Deliver), needs to be added to our DTOs because its not mapped there :!: :check:
-
backup :check:
Check with DevOps about the AFs that they use -> can it be used for this one as well? --> Incremental backup :check:
-
-
-
-
-
-