Setup Redis as the Session Store for Apache Tomcat 7
Join the DZone community and get the full member experience.Join For Free
Setting up the Redis Server as a session is really advantageous. First, its a NO-SQL database and second its really easy to scale using this. This kind of setup would lead to a clear understanding of how Redis can behave as cache as well as a session storing system. In order to do this the instructions are as follows :-
- Download Redis and build by the following commands (This includes downloading it too)
wget http://download.redis.io/redis-stable.tar.gz tar xvzf redis-stable.tar.gz
- Start Redis using command(Redis Directory refers to the directory where Redis is built)
./redis-server --port 6379
- Get the latest version of Apache Tomcat 7
- Download the latest version for JEDIS (A Redis Java Client), Tomcat Redis Session Manager (Redis-backed non-sticky session store for Apache Tomcat) and Apache Commons Pool .
- Copy all the above files into the lib folder of the Apache Tomcat 7 installation directory.
- Add the lines mentioned below in the context.xml of your Apache Tomcat 7 (Or on the context block of server.xml if applicable).Edit the Configurations as your settings. In out case the port number to be configured is 6279.
<Valve className="com.radiadesign.catalina.session.RedisSessionHandlerValve" />
host="localhost" <!-- optional: defaults to "localhost" -->
port="6379" <!-- optional: defaults to "6379" -->
database="0" <!-- optional: defaults to "0" -->
maxInactiveInterval="60" <!-- optional: defaults to "60" (in seconds) --> />
- Now restart your Apache Tomcat 7 normally and now you would see that the sessions are being created in the Redis Rather than on Tomcat.
Published at DZone with permission of Shiv Kumar Ganesh. See the original article here.
Opinions expressed by DZone contributors are their own.