-
Notifications
You must be signed in to change notification settings - Fork 8
/
README
103 lines (78 loc) · 2.34 KB
/
README
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
Jetty-Session-Cache
======
Jetty-Session-Cache is a Jetty session manager that off-loads session management to
the TCache[1] caching system. This enables Jetty to persist sessions to various caching
end points; EhCache, Memcached or the Database.
[1] TCache: https://github.com/victori/tcache
Features
--------
- Distributed Sessions:
* Memcached Session Store
* JDBC DB Session Store
* File Session Store (NFS)
- Custom Logging:
* Log which JVM/Server processed the request
* Log the render time
* Log everything in the request map
Build
-----
Jetty-Session-Cache requires java 5 and ant 1.7
Building from source is easy:
$ mvn package
Or, if you prefer ant:
$ ant jar
Configuration
-----
<!-- Select one of the Session Stores -->
<!-- Memcached Store -->
<!--
<New class="com.base.MemcachedSessionManager2">
<Arg><Array type="java.lang.String"><Item>localhost:11211</Item></Array></Arg>
<Arg>workerpool1</Arg>
</New>
-->
<!-- EhCache / Memcached Store -->
<!-- EhCache is the L1 Cache and Memcached is the L2 Cache -->
<!-- Meaning, all cache look ups are against EhCache and then fallback to the Memcached Server -->
<!-- This gives the best performance but requires Session Affinity -->
<!--
<New class="com.base.EhMemcachedSessionManager2">
<Arg><Array type="java.lang.String"><Item>localhost:11211</Item></Array></Arg>
<Arg>workerpool1</Arg>
<Set name="localttl">1800</Set>
</New>
-->
<!-- Database store -->
<!--
<New class="com.base.DBSessionManager">
<Arg>jdbc:mysql://myapp/sessionstore</Arg>
<Arg>myuser</Arg>
<Arg>mypassword</Arg>
<Arg>com.mysql.jdbc.Driver</Arg>
<Arg>mydb</Arg>
</New>
-->
<!-- Database store (L2) with a Memcached store (L1) for fast lookups. -->
<!--
<New class="com.base.AsyncDBSessionManager">
<Arg>jdbc:mysql://myapp/sessionstore</Arg>
<Arg>myuser</Arg>
<Arg>mypassword</Arg>
<Arg>com.mysql.jdbc.Driver</Arg>
<Arg>mydb</Arg>
<Arg><Array type="java.lang.String"><Item>localhost:11311</Item></Array></Arg>
</New>
-->
<!-- File store, see how large your sessions really are. -->
<!--
<New class="com.base.FileSessionManager">
<Arg>/tmp/wicket</Arg>
</New>
-->
Thanks
--------
Thanks to the following contributors.
* Jens Rantil - https://github.com/JensRantil
Author
-------
Victor Igumnov <[email protected]>