MemcachedClientFactoryBean is a Spring factory, which creates instance of MemcachedClient. Client class manages connections to memcached server farm, and takes care of .... mostly everything that is required for daily usage ;)
Configured Transcoder serializes Java objects - they are available on memcached server in binary form.
Spring bean below has single injection - "memcached.client", this is the bean name of the factory, but spring recognises, that injected bean is a factory and does not inject factory itself, but uses it to create Bean instance - in this case memcached client.
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd"> <bean id="memcached.client" class="net.spy.memcached.spring.MemcachedClientFactoryBean"> <property name="servers" value="host1:1122,host2:1122" /> <property name="protocol" value="BINARY" /> <property name="transcoder"> <bean class="net.spy.memcached.transcoders.SerializingTranscoder" /> </property> <property name="locatorType" value="ARRAY_MOD" /> <property name="opTimeout" value="2000" /> <property name="failureMode" value="Cancel" /> <property name="useNagleAlgorithm" value="false" /> <property name="timeoutExceptionThreshold" value="20" /> </bean> </beans>
@Named public class MemcachedSpringBeanExample { private MemcachedClient memcached; @Inject protected MemcachedSpringBeanExample(@Named("memcached.client") MemcachedClient memcached) { this.memcached = memcached; } public void doSomething(UasAccountId uasAccountId, LastLoginHistory histiry) { memcached.add("my_bean_key", 2000, new Object[] { "val1", "val2" }); } }
Hi Mac,
ReplyDeleteI am very for this but i have some problem with memcache,I am trying for this in spring and hibernate with memcache but we are facing the problem if u have any idea about the configuration please reply as soon as possible(example program).
Thanks & Regards,
Rajasekhar
what problem do you have exactly?
ReplyDelete