2.2.4. Sesiones y conexiones


<< Prev   Next >>

2.2.4.1. Información general

La sesión determina al usuario activo de la base de información y el flujo de gestión de este usuario. El usuario activo puede ser:

  • la instancia de la aplicación de cliente de "1C:Enterprise";
  • la instancia de la aplicación web en la cual se ejecuta el cliente web;
  • la instancia de la conexión exterior (obtenida del objeto V83.COMConnector);
  • una instancia de la tarea en segundo plano;
  • un acceso al servicio web.

Las sesiones pueden ser activas y suspendidas. Una de los tareas de la sesión de suspensión es mantener la funcionalidad de la aplicación de cliente después de que el ordenador del cliente pase a diferentes modos de ahorro de energía. Una sesión pasa al modo de suspensión en dos casos:

  • En caso de ruptura no programada de la conexión asignada a la sesión (para el cliente complejo, conexión exterior, cliente ligero en caso de conexión directa con el servidor). En caso de desconexión física de la red el servidor detecta la ruptura de conexión con la aplicaciones de cliente durante 2-3 minutos.
  • Tras pasar el intervalo de tiempo durante el cual la aplicación de cliente que utiliza la sesión, no se detecta actividad (para el cliente web y el cliente ligero al conectarse a través del servidor web). Si el ordenador del cliente no está en modo de ahorro de energía y la aplicación de cliente está inactiva (no realiza ninguna acción de usuario), accede periódicamente al servidor "1C:Enterprise" con un intervalo de 5 a 10 minutos para mantener la sesión activa. Por lo tanto, no se recomienda establecer el tiempo de suspensión de la sesión en menos de 10 minutos.

Cualquier actividad de la aplicación de cliente que utiliza la sesión lleva a la actividad de la sesión. La sesión de suspensión finaliza en los siguientes casos:

  • Cuando finaliza el intervalo de tiempo que determina la duración de la sesión de suspensión.
  • Si los bloqueos instalados por la sesión de suspensión están en conflicto con los bloqueos que intentan establecer las sesiones activas.

La sesión que va a pasar al modo de suspensión, libera la licencia de cliente ocupada por él. Cuando se activa la sesión de suspensión, intenta obtener una licencia de cliente (si la sesión ocupaba la licencia de cliente antes de pasar al modo de suspensión). La imposibilidad de obtener una licencia, lleva a una excepción irrecuperable y a la finalización de la sesión.

El tiempo para que una sesión pasiva entre en suspensión y el tiempo, después del cual finaliza la sesión de suspensión, se establecen en el cuadro de diálogo de ajuste de parámetros de la base de información, que se editan mediante el Designer.

Todos los datos almacenados por el clúster y que pertenecen a un solo usuario activo y son relevantes solo durante la duración de tiempo de este usuario son datos de la sesión. A los datos de la sesión se refieren:

  • la base de información,
  • número de sesión,
  • usuario autenticado de la base de información,
  • idioma de la interfaz,
  • valores de los parámetros de la sesión,
  • repositorios temporales,
  • estadística de trabajo de la sesión,
  • información de formularios de la aplicación gestionada,
  • algunos datos interiores de la plataforma.

Los datos de las sesiones se guardan por el gerente de clúster. Para ello está previsto el servicio de datos de sesión. Cuando se reinicia el clúster de servidores, los datos de las sesiones se guardan. Si un usuario activo no ha realizado ninguna llamada al clúster en un período de tiempo determinado y la sesión no está asignada a la conexión, la sesión se transfiere al estado de suspensión. El intervalo de tiempo de inactividad se configura en los parámetros de la base de información (en el Designer). El valor predeterminado es de 1200 segundos. Para mantener la sesión, el cliente ligero y el cliente web aseguran el acceso al clúster al menos una vez cada 10 minutos. Para acelerar el acceso, los datos de las sesiones se almacenan en caché en los procesos de trabajo y en clientes complejos. En la lista de usuarios activos se muestra una lista de sesiones activas.

Los cambios de datos de sesión realizados durante una sola llamada al servidor se almacenan en el proceso laboral y son transferidos al gerente de clúster solo cuando el control se devuelve al cliente, ya sea a través de una operación normal o como resultado de una excepción programática.

Los cambios de datos de sesión no se guardan en el gerente de clúster si:

  • en el proceso de llamada al servidor el proceso laboral finalizó de emergencia;
  • al devolver el control al cliente, se produjo un error de transferencia de datos.

La conexión es un medio de acceso de las sesiones al clúster de servidores "1C:Enterprise", contiene un conjunto limitado de datos de conexión y no se identifica con un usuario activo. Las conexiones también se utilizan para la interacción entre procesos de clúster.

Para que un cliente se comunique con un clúster, la sesión se asigna a una conexión. Todo el tiempo, mientras el cliente no realice llamadas al clúster, la sesión no podrá ser asignada a ninguna conexión.

Las diferentes variantes de utilizar "1C:Enterprise" funcionan de manera diferente con sesiones y conexiones.

  • Designer y cliente complejo:
    • al inicio: establece la conexión, inicia la sesión y la asigna a la conexión;
    • al finalizar: cancela la asignación de la sesión a la conexión, finaliza la sesión y rompe la conexión.
  • Un acceso al servicio web y una ejecución de la tarea en segundo plano o programada:
    • en el inicio del acceso: selecciona la conexión de la agrupación, crea la sesión y la asigna a la conexión;
    • al final del acceso: desasigna la sesión a la conexión, finaliza la sesión y devuelve la conexión a la agrupación.
  • El cliente ligero y el cliente web inician la sesión al inicio y la finalizan al terminar:
    • en el inicio del acceso al clúster se le selecciona una conexión de la agrupación y se le asigna una sesión de este cliente.
    • al final del acceso al clúster, se desasigna la sesión a la conexión y la conexión se devuelve a la agrupación.

La información acerca de las sesiones se refleja:

  • en el libro de registro,
  • en la consola del clúster,
  • en los medios de administración de software,
  • en el registro tecnológico,
  • en el contexto global.

El administrador del clúster puede obtener una lista de las sesiones existentes tanto para todo el clúster, como por bases de información. Para ello, el programa de utilidad de administración del clúster y las herramientas de administración de software tienen las capacidades adecuadas.

Un administrador del clúster puede finalizar una sesión a la fuerza mediante el programa de utilidad de administración del clúster y los medios de administración de software. En este caso, el trabajo del usuario activo terminará de emergencia. Si se borra la sesión asignada a la conexión, tiene lugar la ruptura de esta conexión.

El administrador del clúster, mediante el programa de utilidad de administración y los medios de administración de software puede establecer un bloqueo de establecimiento de sesiones que impida que se inicien nuevas sesiones, pero no que se ejecuten las sesiones existentes.

2.2.4.2. Tipos de conexiones

Se pueden destacar dos tipos de conexiones:

  • conexiones con la base de información,
  • conexiones de servicio con procesos laborales del clúster.
2.2.4.2.1. Conexiones con la base de información

Las conexiones con la base de información tienen las siguientes características distintivas:

  • la conexión se realiza con una base de información específica del clúster;
  • en una conexión de este tipo puede ejecutarse un código en un lenguaje integrado;
  • la conexión puede restablecerse con el tiempo;
  • la conexión puede romperse a la fuerza mediante el comando de la consola del clúster o mediante el lenguaje integrado;
  • la presencia de conexiones con la base de información del proceso laboral del clúster impide la detención y la puesta en marcha de este proceso.

Son posibles los siguientes tipos de conexiones con la base de información:

  • Cliente complejo,
  • Cliente ligero,
  • Designer,
  • Módulo de extensión del servidor web,
  • Conexión COM,
  • Tarea en segundo plano.

Cliente complejo

Es la conexión del cliente complejo con la base de información. Esta conexión está destinada a la modificación de datos de las bases de información y a la ejecución de otra funcionalidad proporcionada por la configuración de la base de información.

La conexión Cliente complejo se genera como resultado del inicio interactivo del cliente complejo en el modo 1C:Enterprise o como resultado de la conexión a la base de información con el uso de la tecnología Automation Client/Server, por ejemplo:

// Crear Automation servidor 1C:Enterprise
AutomationServer = New COMObject ("V83.Application");

// Establecer una conexión con la base de información
// TestBase en el clúster 1541 del servidor central TestSrv
AutomationServer.Connect("Srvr="TestSrv";Ref="TestBase");

Es la conexión del cliente ligero con la base de información. Esta conexión está destinada a la modificación de datos de las bases de información y a la ejecución de otra funcionalidad proporcionada por la configuración de la base de información.

La conexión Cliente ligero se genera como resultado del inicio interactivo del cliente ligero o como resultado de la conexión a la base de información con el uso de la tecnología Automation Client/Server, por ejemplo:

// Crear Automation servidor 1C:Enterprise
AutomationServer = New COMObject ("V83C.Application");

// Establecer una conexión con la base de información
// TestBase en el clúster 1541 del servidor central TestSrv
AutomationServer.Connect("Srvr="TestSrv";Ref="TestBase");

Es la conexión del Designer con la base de información. Esta conexión está destinada a crear y modificar la configuración de la base de información y realizar acciones administrativas y programadas.

Módulo de extensión del servidor web

Es la conexión del servidor web con el proceso laboral del servidor. Esta conexión está destinada para el trabajo del cliente web, los servicios de internet, el cliente ligero (por el protocolo HTTP), así como del cliente móvil.

La conexión se crea en el momento de acceso al servicio de internet o en caso de acceso del cliente web, el cliente ligero (por el protocolo HTTP) o el cliente móvil al servidor de "1C:Enterprise". La conexión existe hasta que se reinicia el servidor web o mientras la conexión esté en la agrupación de conexiones de los módulos de extensiones del servidor web (hasta que expire la vida útil de la conexión en la agrupación, o hasta que otras conexiones desalojen esta conexión de la agrupación).

Consulte también:

  • Servicio de Internet.
  • Cliente móvil.

Conexión COM

Representa una conexión entre un proceso que utiliza la funcionalidad de la conexión exterior de "1C:Enterprise" y una base de información. Esta conexión está destinada a la modificación de datos de las bases de información y a la ejecución de otra funcionalidad proporcionada por la configuración de la base de información.

Una conexión COM se crea como resultado de la conexión a una base de información utilizando la tecnología COM, por ejemplo:

// Crear Automation servidor 1C:Enterprise
COMConnector = New COMObject ("V83.COMConnector");

// Establecer una conexión con la base de información
// TestBase en el clúster 1541 del servidor central TestSrv
ConnectInfoBase = COMConector.Connect("Srvr="TestSrv";Ref="TestBase");

Es la conexión con el proceso laboral del clúster con la base de información. Esta conexión está destinada para ejecutar el código de procedimiento de la tarea en segundo plano.

La conexión de la tarea en segundo plano se crea en el caso de:

  • Recepción por la plataforma de una lista de tareas programadas registradas en la base de información;
  • Lanzamiento por la plataforma de una tarea programada registrada en la base de información;
  • Lanzamiento de una tarea en segundo plano para su ejecución desde el lenguaje integrado;
  • Ejecución en segundo plano del informe,
  • Búsqueda en segundo plano por subcadena,
  • Solicitud en segundo plano de la lista,
  • Lanzamiento de reestructuración en segundo plano.

En particular, el desarrollador puede lanzar una tarea en segundo plano mediante herramientas del lenguaje integrado, por ejemplo:

// Ejecutar una tarea en segundo plano descrita en el procedimiento
// UpdateFullTextSearchIndex
// del módulo común ScheduledProcedures
BackgroundJob = BackgroundJob.Execute ("ScheduledProcedures.UpdateFullTextSearchIndex");

La conexión de la tarea en segundo plano existe hasta que existe el contexto del procedimiento ejecutable de la tarea en segundo plano. Después de que el procedimiento esté ejecutado o el informe esté generado, la conexión de la tarea en segundo plano se cierra.

Consulte también:

  • Tareas en segundo plano.
  • La ejecución en segundo plano de informes.
2.2.4.2.2. Conexiones de servicio

Las conexiones de servicio tienen las siguientes características distintivas:

  • la conexión se ejecuta con el proceso laboral y no se asocia con ninguna base de información específica;
  • en las conexiones de servicio no se ejecuta el código en un lenguaje integrado;
  • la conexión no puede ser terminada por fuerza, se crea y se finaliza por el sistema;
  • la presencia de conexiones de servicio no impide la detención y la puesta en marcha de procesos laborales del clúster de servidores.

Son posibles los siguientes tipos de conexiones de servicio:

  • Planificador de tareas,
  • Depurador,
  • Consola del clúster,
  • Servidor de administración,
  • COM-administrador,
  • Tarea en segundo plano del sistema.

Planificador de tareas

Es la conexión del planificador de tareas con el proceso laboral. Está conexión está diseñada para gestionar el trabajo de las tareas en segundo plano, incluso para la ejecución de tareas programadas según un horario. Esta conexión también se usa para otros casos de acceso del gerente de clúster (rmngr) al proceso laboral (rphost), por ejemplo, cuando se obtiene la lista de sesiones.

La conexión del planificador de tareas se genera cuando la tarea en segundo plano se inicia por primera vez. Puede crear una conexión de la tarea en segundo plano con la base de información en el mismo proceso laboral del clúster de servidores. Una vez que finaliza la conexión de la tarea en segundo plano, la conexión del planificador de tareas no finaliza, sino que existe hasta que el proceso de trabajo del clúster se cierra o se borra.

Depurador

Es una conexión del depurador con un proceso laboral del clúster que se encuentra en modo de depuración. Está conexión está destinada a la gestión del proceso de depuración y la búsqueda de elementos depuradores que están actualmente disponibles.

Una conexión de depuración se genera cuando se adjunta un elemento depurador o cuando se buscan algunos elementos depuradores. Existe hasta que el elemento depurador se desconecta o se cierra.

Consola del clúster

Es la conexión de la consola de clúster de servidores (mmc) con el proceso de trabajo. Esta conexión está destinada a la administración de bases de información del clúster de servidores.

La conexión de la consola del clúster se genera en el momento en que se accede a los datos del proceso laboral (por ejemplo, al obtener los parámetros de la base de información, al obtener una lista detallada de las conexiones de la base de información, etc.).

Servidor de administración

Es una conexión entre el servidor de administración remota de un clúster de servidores con el proceso laboral. Esta conexión está destinada a la administración de bases de información del clúster de servidores.

Una conexión de administración remota se genera en el momento en que se accede a los datos del proceso laboral (por ejemplo, al recibir los parámetros de la base de información, al recibir una lista detallada de conexiones de la base de información, etc.).

COM-administrador

Es una conexión con el proceso laboral del servidor utilizando la tecnología COM. Esta conexión está destinada a la administración de bases de información del clúster de servidores.

Se genera una conexión COM-administrador cuando se conecta al proceso laboral seleccionado utilizando la tecnología COM, por ejemplo:

// Crear COMConnector de 1C:Enterprise
COMConnector = New COMObject ("V83.COMConnector");

// Establecer conexión con el proceso laboral 1562
// en el clúster 1541 del servidor central TestSrv
ConnectWorkingProcess = COMConnector.ConnectWorkingProcess("tcp://TestSrv:1562");

Es la conexión con el proceso laboral del clúster con la base de información. Esta conexión sirve para realizar una actualización en segundo plano de la configuración de la base de datos.

La conexión de la tarea en segundo plano existe mientras esté en curso la reestructuración en segundo plano.

2.2.4.3. Tipos de sesiones

Son posibles los siguientes tipos de sesiones:

  • Cliente complejo,
  • Cliente ligero,
  • Cliente web,
  • Cliente móvil,
  • Designer,
  • Conexión COM,
  • Conexión WS,
  • Tarea en segundo plano,
  • Consola del clúster,
  • Servidor de administración,
  • COM-administrador.

La descripción de las sesiones generalmente corresponde a la descripción de las conexiones correspondientes. A continuación se ofrece una descripción de sesiones que son diferentes.

Cliente web

Es la presentación en un clúster de servidores de la instancia del cliente web. Esta sesión está destinada a modificar los datos de la base de información y realizar otras funciones proporcionadas por la configuración de la base de información. El cliente web accede al servidor a través de la conexión Módulo de extensión del servidor web.

La sesión del Cliente web se genera como resultado del inicio interactivo del cliente web y existe hasta que se completa la sesión de trabajo interactivo con la base de información (se cierra la última ventana del navegador web).

Cliente móvil

Es la presentación en un clúster de servidores de la instancia del cliente móvil. Esta sesión está destinada a modificar los datos de la base de información y realizar otras funciones proporcionadas por la configuración de la base de información. El cliente web accede al servidor a través de la conexión Módulo de extensión del servidor web.

La sesión del Cliente móvil se genera como resultado de iniciar el cliente móvil en el dispositivo móvil y existe hasta que se completa la sesión con la base de información (se cierra la aplicación móvil en el dispositivo móvil).

<< Prev   Next >>

Icon/Social/001 Icon/Social/006 Icon/Social/005 Icon/Social/004 Icon/Social/002