Ajuste del servidor 1s 8.3. Desviación permitida del número de errores del servidor.

Tenga en cuenta que la configuración del clúster es responsable de la configuración de todos los servidores que pertenecen al clúster configurado. Un cluster implica el funcionamiento de varios servidores físicos o virtuales que trabajan con las mismas bases de datos de información.

Intervalo de reinicio– es responsable de la frecuencia de reinicio de los procesos de trabajo del clúster. Este parámetro debe configurarse cuando el servidor está funcionando las 24 horas del día. Se recomienda asociar la frecuencia de reinicio con el ciclo tecnológico de las infobases del cluster. Normalmente esto ocurre cada 24 horas (86400 segundos). Como sabe, los procesos de trabajo de los servidores 1C procesan y almacenan datos de trabajo.

El reinicio automático fue diseñado en la plataforma "para minimizar los efectos negativos de la fragmentación y las pérdidas de memoria en los flujos de trabajo". El ITS incluso dispone de información sobre cómo organizar el reinicio de los procesos de trabajo en función de otros parámetros (tamaño de la memoria, recursos ocupados, etc.).

Tamaño de memoria permitido– protege los servidores 1C del uso excesivo de la memoria. Si el proceso excede este volumen en rango de exceder el volumen permitido, se reinicia el proceso. Puede calcularse como el tamaño máximo de memoria ocupado por los procesos "rphost" durante los períodos de carga máxima del servidor. También vale la pena establecer un pequeño intervalo para exceder el volumen permitido.

Desviación permitida del número de errores del servidor.. La plataforma calcula el número medio de errores del servidor en relación con el número de llamadas al servidor en 5 minutos. Si esta proporción excede el valor permitido, entonces el flujo de trabajo se considera "problemático" y el sistema puede finalizarlo si se activa la bandera. "Terminar por la fuerza los procesos problemáticos".

Detenga los procesos deshabilitados después. Cuando se excede la cantidad permitida de memoria, el proceso de trabajo no termina inmediatamente, sino que se "apaga" para que haya tiempo para "transferir" los datos de trabajo sin pérdida al nuevo proceso de trabajo en ejecución. Si se especifica este parámetro, el proceso de "apagado" finalizará en cualquier caso una vez transcurrido este tiempo. Si observa procesos de trabajo "congelados" en el funcionamiento del servidor 1C, puede configurar este parámetro en 2-5 minutos.
Estas configuraciones se establecen para cada servidor 1C individualmente.

Memoria máxima de flujo de trabajo– este es el volumen total Memoria que pueden ocupar los procesos de trabajo (rphost) en el clúster actual. Si el parámetro se establece en "0", ocupa el 80% de la RAM del servidor. “-1” - sin restricciones. Cuando un DBMS y un servidor 1C se ejecutan en el mismo servidor, necesitan compartir RAM. Si durante la operación resulta que el servidor DBMS no tiene suficiente memoria, entonces puede limitar la memoria asignada al servidor 1C usando este parámetro. Si DBMS y 1C están separados por servidores, entonces tiene sentido calcular este parámetro usando la fórmula:

“Volumen máximo” = “RAM total” – “RAM del sistema operativo”;

La “RAM del sistema operativo” se calcula según el principio de 1 GB por cada 16 GB de RAM del servidor.

Consumo seguro de memoria por llamada. En general, las llamadas individuales no deberían ocupar toda la RAM asignada a un proceso de trabajo. Si el parámetro se establece en "0", entonces el caudal seguro será igual al 5% de " Capacidad máxima de memoria para procesos de trabajo". “-1” - sin limitación, lo cual no es muy recomendable. En la mayoría de los casos, es mejor dejar este parámetro en “0”.

Usando parámetros “Número de seguridad de la información por proceso” y “Número de conexiones por proceso” puede controlar la distribución del trabajo del servidor 1C entre los procesos de trabajo. Por ejemplo, ejecute un "rphost" separado para cada base de información, de modo que en caso de fallas del proceso, solo se desconecten los usuarios de una base de datos. Estos parámetros deben seleccionarse individualmente para cada configuración de servidor.

Limitación del uso de RAM por parte del servidor DBMS– El servidor MS SQL DBMS tiene una característica destacable: le gusta cargar completamente en la RAM las bases de datos con las que está trabajando activamente. Si no lo limita, consumirá toda la RAM que pueda.

  • Si el servidor 1C:Enterprise se instala junto con Microsoft SQL Server, entonces el umbral de memoria superior debe reducirse en una cantidad suficiente para el funcionamiento del servidor 1C.
  • Si solo se ejecuta el DBMS en el servidor, entonces para el DBMS de acuerdo con la fórmula:

“Memoria DBMS” = “RAM general” – “RAM del sistema operativo”;

Memoria compartida– Se sabe mucho sobre este parámetro, pero todavía sucede que la gente lo olvida. Lo configuramos en "1" si el servidor 1C y el DBMS se ejecutan en el mismo servidor físico o virtual. Por cierto, funciona a partir de la plataforma 8.2.17.

Grado máximo de paralelismo– determina cuántos procesadores se utilizan al ejecutar una solicitud. El DBMS paraleliza la recuperación de datos al ejecutar consultas complejas en múltiples subprocesos. Para 1C se recomienda configurarlo en "1", es decir, en un hilo.

Extensión automática de archivos de bases de datos.- Determinamos el paso en MB con el que se “expande” el archivo de la base de datos. Si el paso es pequeño, entonces, con el crecimiento activo de la base de datos, las expansiones frecuentes generarán una carga adicional en el sistema de disco. Es mejor configurarlo entre 500 y 1000 MB.

Reindexar y desfragmentar índices– se recomienda desfragmentar/reindexar al menos una vez por semana. La reindexación bloquea las tablas, por lo que es mejor ejecutarlas durante horas no laborables o períodos de carga mínima. No tiene sentido realizar una desfragmentación después de reconstruir el índice (reindexar). Según la recomendación de Microsoft, la desfragmentación se realiza si la fragmentación del índice no supera el 30%. Si es mayor, se recomienda reindexar.

Plan de energía– establezca la configuración de energía del sistema operativo en alto rendimiento.

Además de la versión del archivo, el sistema 1C:Enterprise puede trabajar con bases de información en versión cliente-servidor. En este último caso se entiende una arquitectura que consta de varias capas de software, como se muestra esquemáticamente en la figura siguiente.

  • Aplicaciones cliente, clientes ligeros y clientes web.- esto es "1C:Enterprise" en varios modos de inicio con los que trabaja el usuario final. Para aplicaciones cliente y clientes ligeros, un navegador web es suficiente en las computadoras de los usuarios (o en ellas) para un cliente web.
  • Clúster de servidores "1C:Enterprise" es una colección de procesos de trabajo que se ejecutan en una o más computadoras y una lista de bases de información que se encuentran en este clúster. En el clúster de servidores se realiza todo el trabajo de los objetos de la aplicación, se realizan preparativos para mostrar formularios (leer objetos de la base de datos, completar datos de formularios, organizar elementos, etc.) y la interfaz de comando, generar informes y ejecutar trabajos en segundo plano. Los clientes solo muestran información preparada en el clúster de servidores. Además, los archivos de servicio se almacenan en el servidor del clúster 1C:Enterprise, así como un registro de registro de la base de datos.
  • Servidor de base de datos— en el servidor de la base de datos se almacena directamente y se trabaja con los datos proporcionados por uno de los siguientes sistemas de gestión de bases de datos (DBMS) compatibles con el sistema 1C:Enterprise:
    • Microsoft SQL Server desde Microsoft SQL Server 2000 y superior;
    • PostgrageSQL desde la versión 8.1;
    • IBM DB2 desde la versión 9.1;
    • Base de datos Oracle desde la versión 10g Release 2.
  • Servidor web requerido solo para clientes web y una de las opciones de cliente ligero. Proporciona interacción de este tipo de conexiones con un grupo de servidores 1C:Enterprise.

También vale la pena señalar que cada capa de software no necesariamente tiene que estar ubicada en una computadora física separada. Un clúster de servidores puede estar ubicado en la misma computadora que un servidor de base de datos, un servidor web, etc. Por ejemplo, la siguiente estructura de trabajo se encuentra a menudo en organizaciones pequeñas:

En este artículo describiré la instalación del servidor 1C:Enterprise versión 8.3.4.389 (para otras versiones de la plataforma 1C:Enterprise 8.1, 8.2 y 8.3 los pasos son similares) en una computadora con Windows Server 2008 (R2) o Windows Servidor 2012 (R2). Se considerará como DBMS Microsoft SQL Server 2008 (R2) o Microsoft SQL Server 2012. Para ello necesitaremos:

  1. Una computadora que cumpla con los requisitos del sistema para instalar el servidor 1C:Enterprise y con el sistema operativo instalado en esta computadora o .
  2. Una computadora para un servidor de base de datos, que también ejecute un sistema operativo o (puede ser la computadora del paso 1).
  3. Derechos de administrador local en ambas computadoras.
  4. Kit de distribución para instalar el servidor 1C:Enterprise 8.
  5. Licencia de software o clave de protección HASP4 Net para el servidor 1C:Enterprise.
  6. Kit de distribución para instalar Microsoft SQL Server 2008 (R2) o Microsoft SQL Server 2012.

2. Instalación del DBMS de MS SQL Server

Instalamos el DBMS MS SQL Server en el ordenador que sirve como servidor de la base de datos. Para operar el sistema 1C:Enterprise, basta con instalar los siguientes componentes:

  • Servicios de motor de base de datos
  • Herramientas de gestión: básicas
    • Herramientas de gestión: completas.

Seleccione opciones de clasificación " Cirílico_General_CI_AS" Detalles sobre la instalación de sistemas.

3. Configuración del Firewall de Windows para el funcionamiento del DBMS

Si el servidor de la base de datos y el servidor del clúster 1C:Enterprise están ubicados en diferentes computadoras físicas, debe configurar el Firewall de Windows en el servidor de la base de datos para que el servidor 1C:Enterprise pueda trabajar con el DBMS, es decir, abrir conexiones entrantes en el puerto 1433 (para la instancia predeterminada de SQL Server).

  • Escribí en detalle sobre la configuración del Firewall de Windows para Microsoft SQL Server 2008 (R2)/2012.

4. Agregar un usuario a MS SQL Server

A continuación, agregaremos un usuario separado al servidor MS SQL, bajo el cual se conectarán las bases de datos del servidor 1C:Enterprise. Este usuario también será el propietario de estas bases de datos. El usuario a agregar debe estar autorizado en el servidor mediante contraseña y tener el siguiente conjunto de roles: creador de bases de datos, administrador de procesos, público. Detalles sobre cómo agregar un usuario a

  • Microsoft SQL Server 2008 (R2) que escribí.
  • Escribí Microsoft SQL Server 2012.

5. Instalación del servidor 1C:Enterprise

Ahora pasemos a instalar los archivos del servidor 1C:Enterprise e iniciar el servicio correspondiente. La instalación requiere un kit de distribución de la plataforma tecnológica 1C:Enterprise. De la lista de distribuciones suministradas, son adecuadas las siguientes:

  • Plataforma tecnológica 1C:Enterprise para Windows: permite la instalación de un servidor 1C:Enterprise de 32 bits
  • Servidor 1C:Enterprise (64 bits) para Windows: permite la instalación de servidores 1C:Enterprise de 32 y 64 bits

(También existe una versión ampliada del servidor KORP 1C:Enterprise 8.3, los detalles se pueden encontrar en el sitio web de 1C)

Abra el directorio con los archivos de instalación del servidor 1C:Enterprise y ejecute el archivo configuración.exe.

Se iniciará el asistente de instalación del sistema 1C:Enterprise. En la primera página haga clic en " Más».

En la página siguiente, debe seleccionar los componentes que se instalarán; requerimos los siguientes componentes:

  • Servidor 1C:Empresa— 1C:Componentes del servidor empresarial
  • Administración de servidores 1C:Enterprise 8— componentes adicionales para administrar un clúster de servidores 1C:Enterprise

El resto de componentes (la lista de componentes puede depender de la distribución específica), según la necesidad, también se pueden instalar en esta computadora. Una vez realizada su elección, haga clic en " Más».

Seleccione el idioma de la interfaz que se utilizará de forma predeterminada y haga clic en " Más».

Si el servidor 1C:Enterprise está instalado como un servicio de Windows (y en la mayoría de los casos debería instalarse como tal), recomiendo crear inmediatamente un usuario independiente bajo el cual se iniciará el servicio creado. Para esto

  • Deja la bandera "encendida" Instale el servidor 1C:Enterprise como servicio de Windows (recomendado)»;
  • Movemos el interruptor correspondiente a “ Crear usuario USR1CV8».
  • Ingrese la contraseña para el usuario que se está creando dos veces. De forma predeterminada, la contraseña debe cumplir con la política de contraseñas de Windows. Puedes leer más sobre esto:
    • Para Microsoft Windows Server 2008 (R2) - ;
    • Para Microsoft Windows Server 2012 - .

También puede seleccionar un usuario existente para ejecutar el servidor 1C:Enterprise. En este caso, el usuario seleccionado deberá tener los siguientes derechos:

  • Iniciar sesión como servicio
  • Inicie sesión como un trabajo por lotes
  • Usuarios del registro de rendimiento.

Además, el usuario debe recibir los derechos necesarios para el directorio de archivos de servicio del servidor (por defecto C:\Archivos de programa\1cv8\srvinfo para 64 bits y C:\Archivos de programa (x86)\1cv8\srvinfo para un servidor de 32 bits).

Usuario creado automáticamente USR1CV8 tendrá todos los derechos anteriores.

Después de completar los parámetros apropiados, haga clic en " Más».

Y finalmente, haga clic en “ Instalar» para iniciar la instalación. Esto copiará los archivos de los componentes seleccionados, creará archivos de configuración, registrará los componentes del programa, creará accesos directos y también iniciará el servicio del servidor 1C:Enterprise.

Una vez que se complete la instalación, el asistente le pedirá que instale el controlador de protección: HASP Device Driver. Si está utilizando una licencia de software para el servidor 1C:Enterprise, no es necesario instalar el controlador. Dejar o quitar la bandera " Instalar el controlador de protección" y haga clic en " Más».

Consideremos el proceso de configuración e instalación de un clúster de servidores 1C en dos o más servidores físicos.

Disponemos de 2 servidores: SERVER1 y SERVER2:

  • Instalamos el servidor 1C 8 en ambas máquinas;
  • Creamos un clúster 1C 8.3 en cada servidor (clúster estándar, 1 servidor en funcionamiento por ahora, el que contiene el clúster);
  • agregar procesos de trabajo, etc. (idéntico en ambos servidores);
  • en SERVIDOR1 agregamos una base de información;
  • agregue SERVIDOR2 a la lista de reservas de SERVIDOR1 (debe ocupar el segundo lugar en la lista);
  • agregue SERVIDOR1 a la lista de reservas de SERVIDOR2 (debe ser el primero en la lista);
  • espere hasta que se sincronicen la lista de seguridad de la información y las sesiones (aprox. 1 minuto).

Eso es todo: la tolerancia a fallas está configurada.

Ejemplo de configuración

Condición de la tarea:

Existe un servidor: V81CORA (192.168.1.222), en el que está instalado el servidor 1C: Enterprise y se registran dos bases de información: test y test1.

Hay un servidor Z3060015, que debe usarse para crear un clúster de conmutación por error 1C de dos servidores: V81CORA y Z3060015.

Este es el caso más simple de creación y uso de un clúster de conmutación por error de servidores empresariales 1C 8.2.

Solución.

  1. Disponemos de un servidor V81CORA con un único proceso de trabajo. Todas las configuraciones son por defecto (1540, 1541) 2 bases de datos 1C están registradas en él.

Propiedades del flujo de trabajo V81CORA 1:

2. En el segundo servidor (Z3060015) levantamos el servidor 1C: Enterprise con un único flujo de trabajo. No existen bases de información registradas al respecto. Todas las configuraciones son predeterminadas (1540, 1541).

El servidor 8.3 se caracteriza por un código interno recién rediseñado, aunque “desde fuera” puede parecer que se trata de un 8.2 ligeramente modificado.

El servidor se ha vuelto más "autoconfigurable"; algunos parámetros, como el número de procesos de trabajo, ya no se crean manualmente, sino que se calculan en función de las descripciones de los requisitos de tolerancia a fallos y tareas de confiabilidad.

Se ha desarrollado un mecanismo de equilibrio de carga, que se puede utilizar para aumentar el rendimiento del sistema en su conjunto o para utilizar un nuevo modo de "ahorro de memoria", que le permite trabajar "con memoria limitada" en los casos en que la configuración usado "le gusta devorar la memoria".

La estabilidad del funcionamiento cuando se utilizan grandes cantidades de memoria estará determinada por los nuevos parámetros del servidor de producción.


Es especialmente interesante el parámetro “consumo seguro de memoria por llamada”. Para aquellos que no tienen idea de qué es, es mejor no entrenar de forma “productiva”. El parámetro "Tamaño máximo de memoria de los procesos de trabajo" permite, en caso de "desbordamiento", no bloquear todo el proceso de trabajo, sino sólo una sesión "con el perdedor". "La cantidad de memoria para los procesos de trabajo hasta la cual el servidor se considera productivo" le permite bloquear nuevas conexiones tan pronto como se excede este umbral de memoria.

Recomiendo aislar los procesos de trabajo por base de información, por ejemplo, especificando el parámetro “Número de seguridad de la información por proceso = 1”. Con varias bases de datos altamente cargadas, esto reducirá la influencia mutua tanto en términos de confiabilidad como de rendimiento.

Una contribución separada a la estabilidad del sistema la realiza el “gasto” de licencias/claves. En 8.3, fue posible utilizar un "administrador de licencias de software", que recuerda al administrador "aladin". El objetivo es poder colocar la llave en una máquina separada.

Se implementa como un "servicio" más en el administrador del clúster. Puede utilizar, por ejemplo, una computadora portátil "gratuita". Agréguelo al clúster 1C 8.3, cree un administrador separado con el servicio "servicio de licencias". Puede insertar una llave de hardware en su computadora portátil o activar licencias de software.

De mayor interés para los programadores deberían ser los "Requisitos de asignación de funcionalidad".

Entonces, en una computadora portátil con una clave de seguridad, para no iniciar usuarios en el servidor del clúster, debe agregar "requisitos" al objeto de requisito "Conexión del cliente a la seguridad de la información" - "No asignar", es decir impedir que los procesos de trabajo en este servidor procesen las conexiones del cliente.

Aún más interesante es la capacidad de ejecutar "sólo trabajos en segundo plano" en el servidor de producción del clúster sin sesiones de usuario. De esta manera, puede mover tareas (código) muy cargadas a una máquina separada. Además, puede ejecutar una tarea en segundo plano de "cerrar el mes" usando el "Valor de un parámetro adicional" en una computadora, y la tarea en segundo plano "Actualizar el índice de texto completo" en otra se produce mediante la indicación "Valor de". un parámetro adicional”. Por ejemplo, si especifica BackgroundJob.CommonModule como valor, puede limitar el trabajo del servidor de trabajo en el clúster a trabajos en segundo plano con cualquier contenido. El valor BackgroundJob.CommonModule..- indicará el código específico.

Está claro que no tiene sentido volver a contar la documentación. Pero si alguien da algún consejo útil, ampliaré el artículo.

Este artículo contiene información sobre el procedimiento de instalación de 1C en la versión cliente-servidor.

La instalación de la plataforma 1C se describe en nuestro otro artículo: "Administración de 1C", en la sección "Instalación de 1C". Instalar en un servidor es casi exactamente lo mismo que instalar en una computadora local, con una sola diferencia. En la versión de servidor, al seleccionar los componentes a instalar, debe seleccionar “1C:Enterprise Server” y “1C:Enterprise Server Administration”.

Instale 1C en las computadoras cliente desde las cuales se realizarán las conexiones al servidor.

La instalación en computadoras cliente no difiere del método descrito anteriormente en el artículo "Administración 1C".

Crear una base de datos en SQL.

Crear una base de datos en SQL también es muy similar a crear una base de datos en la versión de archivo. La diferencia es que en la etapa de selección del tipo de ubicación de la base de información, debe seleccionar "En el servidor 1C:Enterprise".

En el elemento "Clúster de servidores", especifique el nombre (o mejor aún, la dirección IP) del servidor en el que instaló SQL.

En la sección "Nombre de la base de datos", especifique el nombre que desee darle a la base de datos.

Tipo de DBMS: SQL.

El usuario de la base de datos y su contraseña son los mismos superusuario mencionados anteriormente durante la instalación de MS SQL.

Deje el desplazamiento de fecha por defecto.

Es necesario marcar la opción “Crear una base de datos si no existe” y hacer clic en “Siguiente”.

Ahora la base de datos se creó correctamente en el servidor SQL y se agregó a la lista de bases de datos disponibles. Abajo en la imagen podéis ver el resultado del trabajo realizado.

Vale la pena señalar que la base de datos creada todavía está vacía. Este es un marco, un lugar asignado en SQL para su base de información. Para cargar su base de datos en este marco, necesita utilizar las herramientas Cargar/Cargar base de información. El procedimiento de carga/descarga también se describe en nuestro otro artículo "Administración 1C".

Para llevar el sistema a un estado ideal en el futuro, será necesario configurar un "plan de mantenimiento" para la base de datos creada. Un plan de mantenimiento es un conjunto de procedimientos que SQL realizará periódicamente según un cronograma determinado. Por ejemplo, realizará copias de seguridad y eliminará archivos temporales con regularidad. Trabajar con SQL está más allá del alcance de este artículo y se describirá en uno de los siguientes.



gastrogurú 2017