sql >> Database teknologi >  >> RDS >> Sqlserver

Fejlfinding, der løber tør for arbejdstråde

Da din instans oplever højere trafik sammen med samtidig brug, kan den løbe tør for arbejdstråde, der er nødvendige for at behandle sessionsanmodninger. Dette betyder, at sessioner venter på, at der tildeles arbejdertråde til at behandle anmodningerne. Det ville højst sandsynligt føre til langsommere behandlingstider og resultere i at støde på ventetyper såsom SOS_SCHEDULER_YIELD, THREADPOOL og CXPACKET.

Typisk er problemet forårsaget af et af følgende:

  • Mange aktive forbindelser
  • Mange langvarige forespørgsler
  • Forespørgsler, der bruger parallelisme
  • Server-CPU er ikke kraftig nok til arbejdsbyrden

De mest almindelige midler er:

  • Reducer antallet af forbindelser
  • Identificer og juster langvarige forespørgsler
  • Identificer og juster forespørgsler med brug af høj grad af parallelitet
  • Identificer og juster forespørgsler med CPU-ventetype
  • Identificer og juster forespørgsler med CXPACKET ventetype
SQL - Running Out of Threads-alarmen i Spotlight Cloud giver brugeren besked, når instansen løber tør for arbejdstråde for at behandle sessionsanmodninger.


Brug Spotlight Cloud-diagnose-dashboards til at fejlfinde problemet:

  1. Reducer antallet af forbindelser. Besøg Sessions-dashboardet for at identificere mængden af ​​aktivitet:

  2. Identificer og juster langvarige forespørgsler:

    en. Brug Workload Analyzer-dashboardet til at se den øverste SQL efter Active Time. Klik på dimensionen SQL-sætninger, og sorter forespørgsler efter Active Time-metrik:


    b. Brug Workload Analyzer-dashboardet til at se den øverste SQL efter grad af parallelitet. Juster forespørgsler eller brug forespørgselstip i forespørgselsudsagn for at reducere brugen af ​​parallelitetsgrad.

    I. Fremhæv SQL-sætningsdimensionen fra træet, og klik på hamburgerikonet for at åbne metrikvælgeren:


    II. Find feltet Grad af parallelisme, og aktiver det. Brug musen til at trække feltet mod toppen af ​​listen over felter


    III. Sorter efter kolonnen Grad af parallelisme for at identificere forespørgsler med højeste tråde:


    c. Brug Workload Analyzer til at filtrere top SQL efter CPU-ventetype. Klik på ikonet CPU-ventetype på banneret, og udvid dimensionen SQL-sætninger. Juster forespørgsler i overensstemmelse hermed:


    d. Brug Workload Analyzer-dashboardet til at filtrere top SQL efter Anden ventetype. Klik på ikonet Anden ventetype på banneret. Udvid dimensionen SQL-sætninger. Brug ruden Ressourceopdeling til at identificere forespørgsler med CXPACKET ventetype. Juster forespørgsler i overensstemmelse hermed:
Prøv Spotlight Cloud gratis!


  1. Grupperet strengaggregering / LISTAGG til SQL Server

  2. Hvad er formålet med systemtabel master..spt_values, og hvad er betydningen af ​​dets værdier?

  3. Importerer zippet CSV-fil til PostgreSQL

  4. Hvad er nyt i MariaDB 10.4