Search code examples
javascriptcachingbrowser-cachebreeze

Breeze JS Cache Limits?


Does anyone know if there are any set cache limits within BreezeJS in the client side persistence manager? We are choosing how we attack a disconnected scenario depending on how much data we can pull down from the server to the client before hitting issues. We don't need to pull down the entire database, but a user with a large data set could need to pull down a substantial set of data.

Also are there different limits with different browsers?


Solution

  • There is no real memory limit, just the amount of memory on your machine. However, depending on the speed of your machine, other limiting factors include

    • The time needed to query against the local cache. Local queries all require iterating over collections in local memory. This is usually really fast, but if you have enormous collections, speed might become an issue. This will be very dependent on the size of the collection and the speed of your machine.
    • Time to load the cache either from the server or via import from the local file system could become very time-consuming with a very large cache.
    • If you are using the knockout model library ( instead of the backingStore model library), memory consumption is much higher for any given set of entities. This is simply an artifact of the way that knockout properties work.

    For all of these, your best bet is to try it and see.