none
Servidor lento por replicación RRS feed

  • Pregunta

  • Buenas tardes quisiera saber si a alguien le ha pasado lo siguiento: Mis procesos normalmente duran entre 20 a 25 minutos (stored procedures) pero cuando aplico la replicación esta se eleva a la hora y 15 minutos, ya  quite la sincronizacion inmediata, transfiero solo los datos que deseo, el nivel de isolation es uncomitted, no replico los dll, ni los esquemas de diseño. Alquien que me ayude por favor
    miércoles, 24 de junio de 2015 20:54

Respuestas

  • Hola

    Puedes utilizar la siguiente herramienta en tus servidores

    Performance Dashboard 2012
    http://www.microsoft.com/en-us/download/details.aspx?id=29063

    Ahí podrás monitorear el estado de los mismos con una interfaz muy amigable.

    Puedes instalar todo el paquete en tu computadora y ejecutar el script en los servidores y desde tu computadora acceder a la información en tus servidores por si no tienes sql management en ellos ya que lo requieres.

    Espero que te sirva

    Saludos cordiales


    Jaime B. Garcia de Alba

    jueves, 25 de junio de 2015 1:14

Todas las respuestas

  • Josue,

    Como estas? que tipo de replicacion tenes? en el caso de ser mirroring sincrono (la opcion que no es high performance) tene en cuenta que tiene que hacer commit en los dos lados al mismo tiempo... asi que si tu escenario es ese una de las variables podria ser esa... de todas formas espero tu respuesta para ver como podemos seguir.

    saludos!

    miércoles, 24 de junio de 2015 21:06
  • Bien gracias.
    No, mi replicación es transaccional, los puse en uncomitted dado que en algunos foros encontré que ese era el problema, sin embargo he obtenido los mismos resultados con ambas configuraciones así que no creo que sea eso.
    miércoles, 24 de junio de 2015 21:09
  • okas! que  version de sql estas manejando??

    te paso un link de kendra little que puede ayudarte

    http://www.brentozar.com/archive/2014/07/performance-tuning-sql-server-transactional-replication-checklist/

    hay recomendaciones y chequeos para este tipo de replicaciones.

    y aca hay otro de microsoft

    https://msdn.microsoft.com/en-us/library/ms151762%28v=sql.110%29.aspx?f=255&MSPPError=-2147217396

    espero te sirva!

    saludos!


    miércoles, 24 de junio de 2015 21:11
  • Por favpr ejecuta esto y pega los resultados

    select top 10 *
    from sys.dm_os_wait_stats
    where wait_type not in --remove common waits to identify worst bottlenecks
    ( 
    'KSOURCE_WAKEUP', 'SLEEP_BPOOL_FLUSH', 'BROKER_TASK_STOP',
    'XE_TIMER_EVENT', 'XE_DISPATCHER_WAIT', 'FT_IFTS_SCHEDULER_IDLE_WAIT',
    'SQLTRACE_BUFFER_FLUSH', 'CLR_AUTO_EVENT', 'BROKER_EVENTHANDLER',
    'LAZYWRITER_SLEEP', 'BAD_PAGE_PROCESS', 'BROKER_TRANSMITTER', 
    'CHECKPOINT_QUEUE', 'DBMIRROR_EVENTS_QUEUE', 'LAZYWRITER_SLEEP', 
    'ONDEMAND_TASK_QUEUE', 'REQUEST_FOR_DEADLOCK_SEARCH', 'LOGMGR_QUEUE', 
    'SLEEP_TASK', 'SQLTRACE_BUFFER_FLUSH', 'CLR_MANUAL_EVENT',
    'BROKER_RECEIVE_WAITFOR', 'PREEMPTIVE_OS_GETPROCADDRESS', 
    'PREEMPTIVE_OS_AUTHENTICATIONOPS', 'BROKER_TO_FLUSH'
    ) 
    
    order by wait_time_ms des

    miércoles, 24 de junio de 2015 21:24
  • Es sql server 2008 R2.

    y si ya leí las recomendaciones sin embargo aplicando todo inclusive lo de los agentes de los threads, etc. 

    El problema persiste ni baja ni aumenta es estático. No mas quito la replicación los tiempos regresan a los mismos de antes. 

    miércoles, 24 de junio de 2015 23:36
  • wait_type                     waiting_tasks_count wait_time_ms max_wait_time_ms signal_wait_time_ms
    LATCH_EX 1840534627 326817940         3155 91896768
    ASYNC_NETWORK_IO 1980177                 207888329 4063 183462
    CXPACKET                         70556021         170911799 30487 3968800
    WRITELOG                 3913504    52805380 4530 270938
    PAGEIOLATCH_SH          221714 3108379 2691 18665
    SOS_SCHEDULER_YIELD 16483172 3005210 2800 2994859
    LCK_M_IS                         582 2202248 21410 4303
    IO_COMPLETION        293020 1583500 2012 2160
    LCK_M_S 22547        1167473 43786 4241
    PAGEIOLATCH_EX       79527 1074593 1717 6772 
    miércoles, 24 de junio de 2015 23:41
  • Hola Josue

    Con los waits mostrados veo que hay 3 puntos importantes

    Red, Disco y Procesador

    El procesador puede ser consecuencia de los otros pero habría que ver a fondo

    Te recomiendo ver el log de SQL para que verifiques que no tengas operaciones IO que tarden mas de 15 segundos pues puedes tener un problema de saturación del canal a los discos o un problema en discos

    También por favor revisa el event viewer para ver si no hay problemas de red, también pueden aparecer en el log de SQL

    Te recomendaría verificar estos dos puntos antes de una revisión del procesador pues como te comenté puede ser consecuencia de lo que pasa en los dos puntos anteriores y sí no lo es entonces tu servidor puede estar llegando a un punto donde ya esta al limite.

    Espero te sirva la información

    Saludos cordiales


    Jaime B. Garcia de Alba

    jueves, 25 de junio de 2015 0:05
  • ok ¿y sobre este otro servidor esta pasando lo mismo? disculpa que te pregunte es que son 5 sin embargo los que mas pesan son estos 2 gracias de ante mano 

    wait_type waiting_tasks_count wait_time_ms max_wait_time_ms signal_wait_time_ms
    LATCH_EX 7643449415 9266830112 46627 763693686
    CXPACKET 456247887 1606914922 214421 46899160
    ASYNC_NETWORK_IO 11877867 290835274 40006 1085477
    WRITELOG 6084661 104637890 5702 573414
    LCK_M_X 10925 73080226 40849931 1824
    SOS_SCHEDULER_YIELD 122622248 56659121 2061 56559297
    IO_COMPLETION 3751978 34571515 4049 40875
    LCK_M_S 80895 27220290 1884116 15261
    LCK_M_IS 2340 22543739 256772 7249
    PREEMPTIVE_OS_WAITFORSINGLEOBJECT 8671989 20556058 2005 0

    jueves, 25 de junio de 2015 0:27
  • Hola

    En este no vemos PAGEIOLATCH_xx

    Sigue estando latente Network verifiquemos la red y en el otro verifica de todos modos los discos

    Deja al final le presión del procesador :)

    Nuevo orden -> Red , Discos , Procesador

    Espero que te sirva la información

    Saludos cordiales


    Jaime B. Garcia de Alba

    jueves, 25 de junio de 2015 0:39
  • ok gracias, lo revisare 
    jueves, 25 de junio de 2015 0:51
  • Jose si tienes tiempo podria ayudarte, buscame en skype
    jueves, 25 de junio de 2015 1:13
  • Hola

    Puedes utilizar la siguiente herramienta en tus servidores

    Performance Dashboard 2012
    http://www.microsoft.com/en-us/download/details.aspx?id=29063

    Ahí podrás monitorear el estado de los mismos con una interfaz muy amigable.

    Puedes instalar todo el paquete en tu computadora y ejecutar el script en los servidores y desde tu computadora acceder a la información en tus servidores por si no tienes sql management en ellos ya que lo requieres.

    Espero que te sirva

    Saludos cordiales


    Jaime B. Garcia de Alba

    jueves, 25 de junio de 2015 1:14
  • Si, gracias, pero ya he leído todo eso, por eso vine acá, porque no he encontrado nada de lo que este documentado para solucionarlo. 
    jueves, 25 de junio de 2015 2:03
  • ok ahorita te agrego a skype y gracias de ante mano 
    jueves, 25 de junio de 2015 2:04