Skip to content

Datasync server performance #130

Closed
Closed

Description

@tele-bird

We are considering DS as a way to make our Maui mobile app perform well in a connectivity-challenged environment.
We want relatively fast data updates to clients, to reduce their chances of seeing stale data when their device is offline, so we plan to initiate REST requests for certain data proactively, in the background (even when they have not requested to view the data yet).

One concern is the impact that these proactive REST requests might have on our database....

Let’s say.. At maximum, we expect 5,000 or so active users with the mobile app running on their phone at any given time. If we’re polling for data updates every 10 seconds, that would mean our web servers would need to handle 30,000 requests per minute. Does that mean that EF Core will perform 30,000 database queries per minute (one per request) as well? Or, is there some mechanism that EF Core uses to determine whether any changes have been made without making a database query? If not, is there a way we can modify our DS server integration to limit the query load on our DB?

I found this blog post from @adrianhall describing how to implement data caching to avoid DB queries for Azure Mobile Apps. Does this still apply to Datasync?
Enabling caching for Azure Mobile Apps with API Management

Activity

  1. changed the title [-]DataSync server performance[/-] [+]Datasync server performance[/+] on Oct 11, 2024
  2. adrianhall commented on Oct 11, 2024

    @adrianhall
    Collaborator

    Transferring to discussions.

  3. locked and limited conversation to collaborators on Oct 11, 2024
  4. converted this issue into a discussion #131 on Oct 11, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    QuestionFurther information is requested

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions