1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 2 <html xmlns="http://www.w3.org/1999/xhtml"> 3 <head> 4 <meta content="text/html;charset=ISO-8859-1" http-equiv="Content-Type" /> 5 <title>Sessions and Persistent Information</title> 6 <meta name="generator" 7 content="amaya 8.1a, see http://www.w3.org/Amaya/" /> 8 <link href="styles.css" rel="stylesheet" type="text/css" /> 9 </head> 10 <body> 11 <h1>Sessions and Persistent Information</h1> 12 <p>The term "session" is a technical term describing information which 13 is remembered by an application for a particular user. Sessions work in 14 conjunction which other mechanisms - typically <a href="cookies.html">cookies</a> 15 and <a href="users.html">user identifiers</a> - like this:</p> 16 <ol> 17 <li> The application finds out who the user is - this information may 18 be recorded in a <a href="cookies.html">cookie</a> or be associated 19 with a request in <a href="users.html">some other way</a>.</li> 20 <li>It then accesses a data store containing information associated 21 different users.</li> 22 <li>Finally, it accesses information specific to the stated user - 23 this is that particular user's session.</li> 24 </ol> 25 <h2>Sessions vs. Persistent Information</h2> 26 <p>Information can be said to be "persistent" when it is 27 remembered beyond the lifetime of a particular request to an 28 application. Sessions, meanwhile, are effectively a special case of 29 persistent information - data is addressed or accessed using each 30 user's identity, and the information is partitioned in such a way that 31 sessions cannot be shared between users.</p> 32 <table style="text-align: left; width: 80%;" align="center" border="1" 33 cellpadding="5" cellspacing="0" width="80%"> 34 <tbody> 35 <tr> 36 <td></td> 37 <th style="text-align: center;">Sessions</th> 38 <th style="text-align: center;">Persistent Information</th> 39 </tr> 40 <tr> 41 <th>Access</th> 42 <td align="undefined" valign="undefined">Through user identity.</td> 43 <td align="undefined" valign="undefined">Through any relevant 44 concept: users, documents, orders, products, locations - anything an 45 application might want to remember.</td> 46 </tr> 47 <tr> 48 <th>Partitioning</th> 49 <td align="undefined" valign="undefined">By user identity. Each 50 user has its own private data store.</td> 51 <td align="undefined" valign="undefined">Arbitrary. Many data 52 stores or data sources may be set up. The data may be shared across the 53 entire application or there may be access controls in place.</td> 54 </tr> 55 </tbody> 56 </table> 57 <p>Access to persistent information in general can be done by using 58 database access libraries, for example - see <a href="integrating.html">"Integrating 59 with Other Systems"</a> for more details. </p> 60 <h2>More About Sessions</h2> 61 <ul> 62 <li><a href="sessions-usage.html">Using Sessions</a></li> 63 <li><a href="sessions-servers.html">Server Environment Support for 64 Sessions</a></li> 65 </ul> 66 </body> 67 </html>