RedisConf17 - Redis as Java Session Store

Preview:

Citation preview

_

_

_

_

_

_

_

a presentation from 2001

J2EE Servlet Sessions

_ javax.servlet.http.HttpSession

_ A way to identify a user across more than one page request or visit to a Web site and to store information about that user.

_ Application servers implement high availability features• Replication, failover

J2EE Servlet Sessions API

_ Attributes• set/getAttribute

_ Listeners• Adding/removing attributes• Creation/Expiry of sessions• Failover of sessions

_ Propagated via cookie (JSESSIONID) or via URL or via FORM parameters

jsessionattribute value

attribute value

attribute value

Set-Cookie:

JSESSIONID=eVMwvIslqWWdilsxbs!738403096!-1321526768;

path=/; secure; HttpOnly

_

_

_

_

_

10

© A

mad

eus

IT G

rou

p a

nd

its

affi

liate

s an

d s

ub

sid

iari

es

_

_

_

11

© A

mad

eus

IT G

rou

p a

nd

its

affi

liate

s an

d s

ub

sid

iari

es

New Gen Old Gen Meta

_

_

12

© A

mad

eus

IT G

rou

p a

nd

its

affi

liate

s an

d s

ub

sid

iari

es

_

_

13

© A

mad

eus

IT G

rou

p a

nd

its

affi

liate

s an

d s

ub

sid

iari

es

Since beginning of sessions - slow

_

_

_

14

© A

mad

eus

IT G

rou

p a

nd

its

affi

liate

s an

d s

ub

sid

iari

es

key{sharding_part}

twemproxy

_

_

15

© A

mad

eus

IT G

rou

p a

nd

its

affi

liate

s an

d s

ub

sid

iari

es

_

_

_

16

© A

mad

eus

IT G

rou

p a

nd

its

affi

liate

s an

d s

ub

sid

iari

es

_

_

_

17

© A

mad

eus

IT G

rou

p a

nd

its

affi

liate

s an

d s

ub

sid

iari

es

key{sharding_part}

_

_

_

19

© A

mad

eus

IT G

rou

p a

nd

its

affi

liate

s an

d s

ub

sid

iari

es

_

_

_

••

_

20

© A

mad

eus

IT G

rou

p a

nd

its

affi

liate

s an

d s

ub

sid

iari

es

_

• Filter

• HttpServletRequestWrapper.getSession()

_

_

21

© A

mad

eus

IT G

rou

p a

nd

its

affi

liate

s an

d s

ub

sid

iari

es

Web App

Filter

_

27

© A

mad

eus

IT G

rou

p a

nd

its

affi

liate

s an

d s

ub

sid

iari

es

_

_

28

© A

mad

eus

IT G

rou

p a

nd

its

affi

liate

s an

d s

ub

sid

iari

es

_

_

_

_

_

33

© A

mad

eus

IT G

rou

p a

nd

its

affi

liate

s an

d s

ub

sid

iari

es

expiresession1 instantsession2 instantsession3 instant

_

_

_

••

34

© A

mad

eus

IT G

rou

p a

nd

its

affi

liate

s an

d s

ub

sid

iari

es

expiresession1 instantsession2 instantsession3 instant

_

_

_

36

© A

mad

eus

IT G

rou

p a

nd

its

affi

liate

s an

d s

ub

sid

iari

es

DEPENDENCIES!

_

_

_

_

37

© A

mad

eus

IT G

rou

p a

nd

its

affi

liate

s an

d s

ub

sid

iari

es

Session Filter

Web App

Filter

Filter

_

_

_

39

© A

mad

eus

IT G

rou

p a

nd

its

affi

liate

s an

d s

ub

sid

iari

es

Agent

Container

Web App

Filter

_

_

_

41

© A

mad

eus

IT G

rou

p a

nd

its

affi

liate

s an

d s

ub

sid

iari

es

_

java -javagent:$SESSION_PATH/session-agent.jar \-jar ../start.jar \--lib=$SESSION_PATH/session-replacement-shaded.jar

_

42

© A

mad

eus

IT G

rou

p a

nd

its

affi

liate

s an

d s

ub

sid

iari

es

_

43

© A

mad

eus

IT G

rou

p a

nd

its

affi

liate

s an

d s

ub

sid

iari

es

_

44

© A

mad

eus

IT G

rou

p a

nd

its

affi

liate

s an

d s

ub

sid

iari

es

_

45

© A

mad

eus

IT G

rou

p a

nd

its

affi

liate

s an

d s

ub

sid

iari

es

46

© A

mad

eus

IT G

rou

p a

nd

its

affi

liate

s an

d s

ub

sid

iari

es

_

_

47

© A

mad

eus

IT G

rou

p a

nd

its

affi

liate

s an

d s

ub

sid

iari

es

_

_

_

© A

mad

eus

IT G

rou

p a

nd

its

affi

liate

s an

d s

ub

sid

iari

es

You can follow us on:

AmadeusITgroupamadeus.comamadeus.com/blog

Recommended