开发者

Cache Farming, Read Pools

开发者 https://www.devze.com 2023-02-09 13:52 出处:网络
I have an application that run on 100 servers. this application communicated with a nosql database which i dont like. 100 servers creating sessions, locking, committing etc.

I have an application that run on 100 servers. this application communicated with a nosql database which i dont like. 100 servers creating sessions, locking, committing etc.

I d like to build a cache farm or dirty real pools that the IIS servers will go and read data, objects from them. Caches will expires every once a while. etc.

The whole point is to avo开发者_JAVA百科id database access from these 100 servers.

What would you use for this cache farm ?

WCF? REST? Best Practices and Patterns Caching Block ? or Windows AppFabric?

I already have a layer of Distributed Cache so not thinking about that.

What architecture would you go for ? any recommendation or case studies?


What sort of volumes of data are we talking about here? A few KB? A MB? A hundred GB?

If anything but the latter, rather than reinvent the wheel, use one of the existing cache services. Based on the C# tag and the mention of IIS, I assume you are running a Windows. As such I would suggest that you have a look at Memcached

From the Memcached page:

Free & open source, high-performance, distributed memory object caching system, generic in nature, but intended for use in speeding up dynamic web applications by alleviating database load.

Memcached is an in-memory key-value store for small chunks of arbitrary data (strings, objects) from results of database calls, API calls, or page rendering.

I have used Memcached myself in environments similar to the one you describe (using MS SQL rather than nosql for data storage). After an initial round of cache tuning we have not encountered any problems whatsoever.

Without knowing specifics of your requirements it is difficult to say if Memcached is the solution that is right but it is certainly something worth looking into. For reference their FAQ Wiki can be found here:

http://code.google.com/p/memcached/wiki/FAQ

0

精彩评论

暂无评论...
验证码 换一张
取 消

关注公众号