¿Cómo escribir la declaración de sesión? ¿Y cuál es el papel de la sesión?
Es difícil traducir directamente la sesión al chino y, por lo general, se traduce al dominio del tiempo. En terminología informática, sesión se refiere al intervalo de tiempo entre un usuario final que se comunica con un sistema interactivo, generalmente refiriéndose al tiempo transcurrido entre el registro para ingresar al sistema y el cierre de sesión del sistema.
En concreto, Sesión en la Web se refiere al tiempo que transcurre desde que se entra en el sitio web hasta que se cierra el navegador cuando un usuario navega por un sitio web, que es también el tiempo que pasa el usuario navegando por el sitio web. Por lo tanto, podemos ver en la definición anterior que la sesión es en realidad un concepto de tiempo específico.
Cabe señalar que el concepto de Sesión debe incluir un cliente específico, un servidor específico y un tiempo de operación ininterrumpido. La Sesión en la que el usuario A establece conexión con el servidor C y las Sesiones en las que el usuario B establece conexión con el servidor C son dos Sesiones diferentes.
Entonces, ¿cuál es la solución para Session? Sabemos que los usuarios a menudo necesitan navegar por muchas páginas web cuando visitan un sitio web. Para un sitio web creado con PHP, los usuarios deben ejecutar muchos scripts PHP durante su visita. Sin embargo, debido a las características del propio protocolo HTTP, los usuarios necesitan restablecer una conexión con el servidor web cada vez que ejecutan un script PHP.
Debido a las características de la memoria sin estado, esta conexión no puede obtener el estado de la última conexión. De esta manera, el usuario asigna un valor a una variable en un script PHP, pero no puede obtener el valor de la variable en otro script PHP. Por ejemplo, el usuario establece $user="wind" en el script PHP responsable de iniciar sesión, pero no puede obtener el valor de "wind" llamando a $user en otro script PHP. Es decir, las variables globales no se pueden configurar en PHP. Las variables definidas en cada script PHP son variables locales que sólo son válidas dentro de este script.
La solución Session consiste en proporcionar un método para definir variables globales en scripts PHP, de modo que esta variable global sea válida para todos los scripts PHP en la misma sesión. Como mencionamos anteriormente, la sesión no es un simple concepto de tiempo. Una sesión también incluye usuarios y servidores específicos. Por lo tanto, con más detalle, el alcance de las variables globales definidas en una Sesión se refiere a todo PHP al que accede el usuario correspondiente a esta Sesión.
Por ejemplo, el usuario A define una variable global $user="wind" a través de Session, y el usuario B define una variable global $user="jane" a través de Session. Luego, en el script PHP al que accede el usuario A, el valor de $usuario es viento.
En ASP y ASP.NET
Session es un método basado en servidor web para mantener el estado. La sesión permite que cualquier objeto persista durante la sesión del usuario almacenándolo en la memoria del servidor web.
La sesión se utiliza normalmente para hacer lo siguiente:
Almacenar información que necesita mantener su estado durante toda la sesión del usuario, como información de inicio de sesión u otra información que el usuario necesita mientras navega por un sitio web. aplicación web.
Almacena objetos que necesitan mantener su estado solo entre recargas de páginas o entre un conjunto de páginas agrupadas por funcionalidad.
La finalidad de una Sesión es que mantiene la información del estado del usuario en el servidor Web para acceder desde cualquier página en cualquier momento. Debido a que no es necesario que el navegador almacene esta información, se puede utilizar cualquier navegador, incluso un dispositivo de navegación como una PDA o un teléfono celular.
Limitaciones de este método de persistencia
A medida que más usuarios inicien sesión, la cantidad de memoria del servidor requerida por la sesión seguirá aumentando.
Cada usuario que accede a una aplicación web genera un objeto Sesión independiente. La duración de cada objeto Sesión es el tiempo de acceso del usuario más el tiempo de inactividad.
Si se mantienen muchos objetos en cada sesión y muchos usuarios usan la aplicación web simultáneamente (creando muchas sesiones), la cantidad de memoria del servidor utilizada para la persistencia de la sesión puede ser grande, lo que afecta la escalabilidad. .