Maak 'n navraagsessie oop op die primêre en kyk waarop 'n eenvoudige skryf wag. As die databasis aan 'n beskikbaarheidsgroep met sinchroniese vaslegging behoort en die sekondêre is gekoppel, verlaat 'n deel van daardie wag die gebou: logrekords reis na die replika, word daar gehard, en die woord van daardie verharding kom terug voordat die vaslegging klaar is. Bandbreedte verkort nie daardie heen-en-weer-reis nie. Die deurloop hieronder volg die bevestiging van die skerm na die afgeleë skyf en terug.

Begin by die wagtipe op die primêre

'n Skryf wat op die afgeleë replika wag, wys as 'n logverwante wag eerder as 'n CPU- of sluitwag, en die duur van die transaksie volg die heen-en-weer-reis in plaas van die aantal rye. Baie klein vasleggings maak dit duidelik, want elkeen betaal die reis afsonderlik. 'n Enkele grootmaatbewerking verberg dieselfde koste in een langer bevestiging.

Sorteer jou werklading volgens vasleggingsfrekwensie voordat jy enigiets oor die skakel aflei.

Lees die replikastoestand voordat jy die netwerk lees. Die tellers wat saak maak, is die stuurwagtou, die herdoenwagtou en die sinchroniseringstoestand, en saam wys hulle of die sekondêre byhou of agter raak. 'n Groeiende stuurwagtou dui op vervoer, terwyl 'n groeiende herdoenwagtou op die sekondêre se eie werk of berging dui. Dit is verskillende herstellings, en nie een verbeter deur bandbreedte by te voeg nie.

Volg die bevestiging na die sekondêre

Onder sinchroniese vaslegging wag die primêre op bevestiging dat die betrokke log op die sekondêre gehard is voordat dit die vaslegging as voltooid rapporteer. Gehard beteken duursaam in die log, nie na databladsye herspeel nie. Juist daardie onderskeid is waarom 'n sinchroniese sekondêre agter kan wees met herdoening terwyl dit steeds verharding bevestig.

Stap die pad in volgorde en tyd elke stadium eerder as die geheel. Logrekords gaan oor die vervoer, die sekondêre skryf en spoel hulle, en die bevestiging kom terug oor dieselfde pad. Vervoervertraging, sekondêre skedulering en sekondêre logskyf-latensie beland almal in die totaal, en net die eerste hoort by die netwerkeienaar. 'n Sekondêre wie se logvolume deur iets anders versadig is, kan elke vaslegging rek terwyl die skakel ledig sit.

SELECT ag.name AS ag_name, drs.database_id, drs.synchronization_state_desc,
       drs.log_send_queue_size, drs.redo_queue_size
FROM sys.dm_hadr_database_replica_states AS drs
JOIN sys.availability_groups AS ag ON ag.group_id = drs.group_id;

Neem daardie momentopname voor en na 'n verteenwoordigende skryf eerder as een keer op 'n stil middag. Die verskil is wat jou sê watter tou beweeg het terwyl die vaslegging gewag het.

Meet die pad eerder as die skakel

'n Deursettoets meet kapasiteit tussen twee punte wat nie jou replikas is nie, onder 'n las wat nie jou werklading is nie. Vra die netwerkeienaar vir vertraging en verlies langs die werklike replikapad terwyl werklike verkeer loop, in albei rigtings. Verlies maak hier meer saak as kapasiteit, want 'n verlore segment kos 'n hertransmissie en elke vaslegging wag op een bevestiging. 'n Skakel wat in 'n aflaaitoets uitstekend lyk, kan steeds swak pas by 'n gesprekkerige vasleggingspatroon.

Hou databasistransportbeveiliging en toegangsbeheer ongeskonde terwyl jy meet. Om 'n pad te meet is nooit 'n rede om hulle te omseil nie.

Korreleer tydsberekeninge met die tellers eerder as met intuïsie. As die stuurwagtou leeg bly en die vaslegging wag steeds, is die vertraging in die bevestiging of die sekondêre se spoeling. As die stuurwagtou bestendig groei, is vervoer of kapasiteit die beperking. Teken aan watter waarneming die gevolgtrekking ondersteun het, sodat die volgende persoon die meting kan herhaal in plaas van die argument.

Wat asinchroniese modus werklik verander

Asinchroniese vaslegging verwyder die wag vir die sekondêre se verhardingsbevestiging, en dit is waarom skryfwerk vinniger word en waarom jou duursaamheidsposisie verander. Die primêre bevestig die transaksie sonder daardie afgeleë bevestiging. Die sekondêre mag dan agter raak, en daardie agterstand is die blootstelling.

As die primêre verlore gaan voordat die log 'n bruikbare oorskakelteiken bereik, gooi die dwing van diens op daardie replika transaksies weg wat die toepassing al as vasgelê meegedeel is.

Dit is 'n herstelpuntbeslissing en dit hoort by die databasiseienaar, nie by 'n werkverrigtingoorsig nie. Stel eers die gedoogde dataversliesvenster, kies die modus wat dit bevredig, en optimaliseer dan binne daardie grens. Opsies wat sinchroniese beskerming behou, sluit in die verwydering van vermybare vasleggingsheen-en-weer-reise waar die toepassing dit toelaat, die regmaak van 'n gemete deurvoer- of bergingsknelpunt, en die verskuiwing van die replika sodat die bevestiging minder ver reis. Weeg hulle op teen die duursaamheidsvereiste waarmee jy begin het, wat nie verander het nie.

Verwante artikels