Over a million developers have joined DZone.

Setup Redis as the Session Store for Apache Tomcat 7

· Big Data Zone

Hortonworks DataFlow is an integrated platform that makes data ingestion fast, easy, and secure. Download the white paper now.  Brought to you in partnership with Hortonworks

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 :-

  1. 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
    cd redis-stable
    make
  2. Start Redis using command(Redis Directory refers to the directory where Redis is built)
    cd RedisDirectory/src
    ./redis-server --port 6379
  3. Get the latest version of Apache Tomcat 7
  4. 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 .
  5. Copy all the above files into the lib folder of the Apache Tomcat 7 installation directory.
  6. 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" />
    <Manager className="com.radiadesign.catalina.session.RedisSessionManager"
    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) --> />
  7. 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.

Thats it. Now you have your Apache Tomcat 7 storing all the sessions in Redis and it also takes care about the different aspects of sessions.

Image: Courtesy – “Redis
Thanks to the plugin creator James Coleman. You can find him on Git.
Article can be viewed on my blog at 
Shiv Ganesh .  

Hortonworks Sandbox is a personal, portable Apache Hadoop® environment that comes with dozens of interactive Hadoop and it's ecosystem tutorials and the most exciting developments from the latest HDP distribution, brought to you in partnership with Hortonworks.

Topics:

Published at DZone with permission of Shiv Kumar Ganesh. See the original article here.

Opinions expressed by DZone contributors are their own.

{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}