MonoX support board

Start the conversation, ask questions and share tips and solutions with fellow developers.

Non-registered users can only browse through our support boards. Please register now if you want to post your questions. It takes a second and it is completely free. Alternatively, you can log in without registration using your credentials at major sites such as Google, Microsoft Live, OpenId, Facebook, LinkedIn or Yahoo.

Caching  (Mono Support )

Viewed 15121 time(s), 14 post(s) 11/17/2013 4:43:16 AMby Dinesh.Sajwan
Dinesh-Sajwan

Dinesh.Sajwan

11/17/2013 4:43:16 AM
Hi,

I have some questions on Cahcing Architecture of MonoX
1. Does Caching of monox extends any ASP.net caching architecture or is it pure custom.
2. Dooes Monox saves cahing data in memory or in file system.
3. What all types of caching does MonoX offers
4. When does Cache gets invalidated.
5. We have deployed MonoX in Load Balancer Environment does current architecture of caching supports this environment.
 
Thanks for support.

Regards
Sumit
This content has not been rated yet. 
1284 Reputation 156 Total posts
khorvat

khorvat

11/18/2013 8:24:56 AM
Hi,

there are a lot of information inside the MonoX manual regarding the Caching mechanisms MonoX uses, but let me answer all of your questions and summarize everything.

1. Does Caching of monox extends any ASP.net caching architecture or is it pure custom.
Both, basically it extends standard ASP.NET Caching and API signature is almost the same, the only thing that us purely custom is the "wrapper" layer above the caching used to allow caching provider pattern implementation.

2. Dooes Monox saves cahing data in memory or in file system.
This depends on the chosen provider, but by default MonoX uses memory provider which is ASP.NET Caching.

3. What all types of caching does MonoX offers
Here is a list of providers and note that you don't need a lot of effort to build your own:
- Memory Cache Provider (ASP.NET Caching)
AppFabric Cache Provider
Azure Cache Provider
Couchbase Cache Provider

4. When does Cache gets invalidated.
There are few actions that trigger cache invalidation: cache simply expires, you manually remove something from cache or some action inside the MonoX triggers cache invalidation (e.g. you post to forum then MonoX invalidates the user rating cache)

5. We have deployed MonoX in Load Balancer Environment does current architecture of caching supports this environment.
Yes, as I mentioned you can chose from on of the caching providers that you prefer. Bottom line is that you need to pull out caching storage out of the process, same applies for Session state and ViewState optimization used by MonoX (all of them are provider based so you can do the same as with cache).

Let us know if you need anything else.

Regards
This content has not been rated yet. 
15993 Reputation 2214 Total posts
Dinesh-Sajwan

Dinesh.Sajwan

11/20/2013 5:04:22 AM
Thanks,

So for LB environment any out proc like AppFabric Cache Provider etc.. is the solution.

Please tell me how do we configure full page caching (via page properties) for every unique user.

Also if we set full page caching on and add nothing in vary by control, header, custom etc... is there a chance that one user gets to see other user page as its a full page caching.

Regards
Sumit
This content has not been rated yet. 
1284 Reputation 156 Total posts
imarusic

imarusic

11/20/2013 8:38:50 AM
Hi,

yes, you could use out proc providers as you mentioned.

Page caching can be done in administration, but in a case of  user, you should add "Vary by param" and set "username". An example is MyWall page. When you set caching and when you are logged as admin you will be able to see caching status in a page header(please check the attached image). Also please note that admin does not receive cached pages.

Regards.
This content has not been rated yet. 
3016 Reputation 428 Total posts
khorvat

khorvat

11/20/2013 9:03:59 AM
Hi,

So for LB environment any out proc like AppFabric Cache Provider etc.. is the solution.
Yes, but I'd recommend the Couchbase provider, as AppFabric is much harder to setup.

Regards
This content has not been rated yet. 
15993 Reputation 2214 Total posts
Dinesh-Sajwan

Dinesh.Sajwan

11/20/2013 10:06:19 AM
Hi Kristijan

Thanks for the clarification.

Regards
Sumit
This content has not been rated yet. 
1284 Reputation 156 Total posts
Dinesh-Sajwan

Dinesh.Sajwan

11/20/2013 10:13:10 AM
Hi Ivan,

So you mean to say in page properties--> cache tab--> under vary by param textbox we put "username" string.

Regards
Sumit
This content has not been rated yet. 
1284 Reputation 156 Total posts
imarusic

imarusic

11/20/2013 10:41:21 AM
Hi Dinesh,

yes, you can set username parameter.

Regards.
This content has not been rated yet. 
3016 Reputation 428 Total posts
Dinesh-Sajwan

Dinesh.Sajwan

11/20/2013 11:15:59 AM
Hi Kristijan

Can you please guide us the resouces for implementing couch based provider.

Regards
Sumit
This content has not been rated yet. 
1284 Reputation 156 Total posts
khorvat

khorvat

11/20/2013 11:24:30 AM
Hi,

I'd recommend the "Enterprise Edition" available here which is free up to 2 nodes. Then take a look at their video "Watch how to quick start your cluster" on the same link. Then you should download and build the Couchbase Cache Provider from our GitHub pages. Place the assemblies in the bin folder and change the provider in web.config.

Regards
This content has not been rated yet. 
15993 Reputation 2214 Total posts
1 2