Hi Kendall Bennett,
Let me shed some light on the situation, when using the context object an internal static database object is created that holds the information for the model. One database object will server as the basis for more than one context. Meaning that a couple of context instances will use the same internal database object.
This is done because the metadata information describing your model is further calculated and this is not a lightweight operation.
However, there is more to the situation. Whenever a context is created it holds a cache of all the objects it is tracking. Usually the suggested practice is to have a context live as long as a request, given that the context is pretty lightweight this is okay (the slow operation is handled in the database object creation).
The problem one might face with a context that is serving more than one request is that it will retrieve object from its cache and not the database. So if there is another thread or application doing the same and modifying data, you might end up with invalid data.
I will suggest sticking to short living context instances that are created per request and having a look at our L2 cache mechanism. You can find more information on how to enable that on this help article
I am not sure if that fully answers your question so please do not hesitate to let us know if you need more information on the matter.
the Telerik team
Do you want to have your say when we set our development plans? Do you want to know when a feature you care about is added or when a bug fixed? Explore the Telerik Public Issue Tracking
system and vote to affect the priority of the items