I have a few server-side processes that can take very long times to run (30-60m). These are a result of calling a web API from my webserver, and throttling the requests to match the maximum request rate of the service.
I want to be able to display the progress of this on the client, how can I go about doing this? Where do I start?
Previous answers have hinted at SignalR, but that does not seem to be a thing with Asp.Net Core.
Edit: It looks like SignalR is a thing with Asp.Net core. As this is the case, I have a followup question:
I'm using AngularJS and managing the client-side state via AJAX requests to API endpoints. Are there any potential coding or performance "gotchas" when trying to also utilize SignalR in conjunction?
Additionally, are there alternatives that don't add SignalR as a dependency? It looks like it requires a beta-version of .Net Core, I'd rather stay in stable-release-land if at all possible.
You can use SignalR and the IProgress interface to handle this. The basic implementation is something like this:
Server-side
Client-side