Synthesis o se tasi o metotia mo le faʻaleleia o le PostgreSQL faʻatinoga

Synthesis o se tasi o metotia mo le faʻaleleia o le PostgreSQL faʻatinoga

Folasaga filosofia

E pei ona e iloa, e na o le lua lava auala e foia ai faafitauli:

  1. Metotia o au'ili'iliga po'o le auala o toesega, po'o mai le lautele i le fa'apitoa.
  2. Metotia o le tuʻufaʻatasiga poʻo le auala o le faʻauluina, pe mai le faʻapitoa i le lautele.

Ina ia foia le faʻafitauli "faʻaleleia le faʻaogaina o faʻamaumauga", atonu e pei o lenei.

Iloiloga - matou te suʻesuʻeina le faʻafitauli i ni vaega eseese ma, e ala i le foia, matou te taumafai e faʻaleleia le faʻatinoga o le database atoa.

I le faʻatinoga, o le auʻiliʻiliga e pei o lenei:

  • Ua tupu se fa'afitauli (fa'alavelave fa'atinoga)
  • Aoina mai fa'amatalaga fa'amaumauga e uiga i le tulaga o fa'amaumauga
  • Su'e mo fagufa'atasi
  • Matou te foia faʻafitauli mai bottlenecks

Fa'amatalaga fa'amaufa'ailoga - mea tetele (CPU, Memory, Disks, Network, OS), faʻatulagaga (postgresql.conf), fesili:

Aseta: O avanoa o fa'aaafiaga ma suiga mo se inisinia e toetoe lava leai.

Fa'amaumauga Fa'amaumauga: o avanoa mo suiga e sili atu nai lo le tulaga muamua, ae o se tulafono e fai lava si faigata, aemaise lava i ao.

Talosaga i le database: na'o le avanoa e fa'agasolo ai.

Faʻailoga - matou te faʻaleleia le faʻatinoga o vaega taʻitasi, ma faʻamoemoe o le a faʻaleleia le faʻaogaina o faʻamaumauga o se taunuuga.

Fa'atomuaga fatuga pe aisea e tatau ai nei mea uma

O le a le fa'agasologa mo le foia o fa'alavelave fa'atino pe a le mata'ituina le fa'atinoga o fa'amaumauga:

Tagata fa'atau - "E leaga mea uma ia i matou, e umi tele, fai se mea lelei mo i matou"
Inisinia - "o le a le leaga o lena mea?"
Le tagata fa'atau - "e fa'apei le taimi nei (i le itula talu ai, ananafi, le taimi mulimuli), lemu"
Inisinia - "O anafea na lelei ai?"
Tagata fa'atau – “o le vaiaso (lua vaiaso) talu ai e le’i leaga. “(Ua laki)
Tagata fa'atau - “Ou te le manatua le taimi na lelei ai, ae o lea ua leaga” (Tali masani)

O le taunuuga o se ata masani:

Synthesis o se tasi o metotia mo le faʻaleleia o le PostgreSQL faʻatinoga

O ai e tuua'ia ma o le a le mea e fai?

O le vaega muamua o le fesili e sili ona faigofie ona tali - o le inisinia DBA e masani ona tuuaia.

O le vaega lona lua e le faigata tele foi ona tali - e tatau ona e faʻatinoina se faiga e mataʻituina ai faʻatinoga o faʻamaumauga.

O le fesili muamua e tulaʻi mai - o le a le mea e mataitu?

Auala 1. O le a matou mataituina MEA UMA

Synthesis o se tasi o metotia mo le faʻaleleia o le PostgreSQL faʻatinoga

uta PPU, numera o fa'agaioiga faitau/tusi tisiki, tele o manatua atofa, ma le isi megaton o fa'atau eseese e mafai e so'o se faiga mata'ituina galue e mafai ona maua.

O le taunuuga o le tele o kalafi, otootoga laulau, ma faʻasalalauga imeli faifaipea ma 100% enisinia pisi e foia le tele o tiketi tutusa, peitaʻi, o se tulafono, faʻatasi ai ma upu masani - "Mataupu le tumau. Leai se gaioiga e manaʻomia." Ae o lo'o pisi tagata uma, ma e iai lava se mea e fa'aali atu i le tagata fa'atau - o lo'o fa'agasolo le galuega.

Auala 2. Mataitu na'o mea e mana'omia, ae o mea e le mana'omia e le mana'omia ona mata'ituina

E mafai ona e mataʻituina, e ese teisi, naʻo faʻalapotopotoga ma mea tutupu:

  • O fea DBA Inisinia e mafai ona fa'aaafia
  • O loʻo i ai se algorithm o gaioiga pe a tupu se mea na tupu pe suia se faʻalapotopotoga.

Faʻavae i luga o lenei manatu ma manatua "Folasaga filosofia"ina ia aloese mai le faia soo"Fa'atomuaga fatuga pe aisea e tatau ai nei mea uma"O le a fautuaina le mataʻituina o le faʻatinoga o fesili a tagata taʻitoʻatasi mo le faʻataʻitaʻiina ma le auʻiliʻiliga, lea e tatau ona iʻu ai i le faʻaleleia o faʻatinoga o le database atoa.

Ae ina ia faʻaleleia se fesili mamafa e aʻafia ai le faʻatinoga atoa o faʻamaumauga, e tatau ona e mauaina muamua.

O lea la, e lua fesili fesootai e tulai mai:

  • lea talosaga ua manatu faigata
  • auala e su'e ai fesili faigata.

E manino lava, o se fesili mamafa o se fesili e faʻaaogaina le tele o punaoa OS e maua ai le iʻuga.

Se'i o tatou aga'i i le fesili lona lua - pe fa'afefea ona su'esu'e ona mata'ituina lea o fesili mamafa?

O a mea e mafai ona mata'ituina ai fesili e maua e PostgreSQL?

Faʻatusatusa i Oracle, e itiiti lava avanoa, ae o loʻo iai lava se mea e mafai ona fai.

Synthesis o se tasi o metotia mo le faʻaleleia o le PostgreSQL faʻatinoga

PG_STAT_STATEMENTS

O le faʻaopoopoga masani pg_stat_statements ua mamanuina e suʻe ma mataʻituina fesili mamafa i PostgreSQL.

A maeʻa ona faʻapipiʻi le faʻaopoopoga, o se vaʻaiga o le igoa lava e tasi e aliali mai i totonu o le faʻamaumauga autu, lea e tatau ona faʻaaogaina mo faamoemoega mataʻituina.

Sini pg_stat_statements koluma mo le fausiaina o se faiga mata'ituina:

  • queryid Fa'ailoga o le hash i totonu na fa'atatauina mai le la'au parse a le tagata fa'afoe
  • max_time Ole taimi maualuga e fa'aalu ile fa'amatalaga, ile milliseconds

I le faʻaputuina ma le faʻaogaina o fuainumera i luga o nei koluma e lua, e mafai ona e fausia se faiga mataʻituina.

Fa'afefea ona fa'aogaina pg_stat_statements e mata'ituina ai le faatinoga o PostgreSQL

Synthesis o se tasi o metotia mo le faʻaleleia o le PostgreSQL faʻatinoga

Ina ia mata'ituina le fa'aogaina o fa'atinoga o fesili:
I luga o le itu autu o faʻamaumauga - pg_stat_statements view
Mai le itu sapalai ma faʻamaumauga mataʻituina - o se seti o tusitusiga bash ma laulau tautua.

Laasaga 1 - aoina o fa'amaumauga fa'amaumauga

I luga o le talimalo mataʻituina cron, e faʻalauiloa e le aunoa se tusitusiga e kopi ai mea o loʻo i totonu o le pg_stat_statements view mai le faʻamaumauga autu i le laulau pg_stat_history i le faʻamaumauga mataʻituina.

Ole mea lea e fa'atupuina ai se tala'aga o fa'atonuga fa'atatau a tagata ta'ito'atasi e mafai ona fa'aoga e fa'atupu ai lipoti fa'atinoga ma fa'atulaga metrics.

Laasaga 2 - fa'atulagaina fua fa'atinoga

Faʻavae i luga o faʻamaumauga aoina, matou te filifilia fesili o lona faʻatinoga e sili ona taua / taua mo le kalani (faʻaoga). I le maliliega ma le tagata faʻatau, matou te setiina tau o fua faʻatinoga e faʻaaoga ai le queryid ma max_time fanua.

I'uga - amata o le mata'ituina o faatinoga

  1. O le tusitusiga mata'ituina, pe a fa'agasolo, siaki le fa'atulagaina o fua fa'atinoga e ala i le fa'atusatusaina o le tau max_time o le metric ma le tau mai le pg_stat_statements va'aiga i le fa'amaumauga autu.
  2. Afai o le tau o loʻo i totonu o faʻamaumauga autu e sili atu i le tau metric, e faia se lapataiga (o se faʻalavelave i le faiga tiketi)

Filifiliga faaopoopo 1

Tala fa'asolopito o fuafuaga

Ina ia fesoasoani e foia faʻalavelave faʻatinoga mulimuli ane, o se manatu lelei le i ai o se talaʻaga o suiga o fuafuaga faʻatinoina o fesili.

O le log_query service table e fa'aoga e teu ai tala fa'asolopito. O lo'o fa'atumuina le laulau pe a su'esu'eina le faila faila o le PostgreSQL. Talu ai o le faila ogalaau, e le pei o le pg_stat_statements view, o loʻo i ai le tusitusiga atoa ma le taua o faʻasologa o faʻatinoga, ae le o faʻamaumauga masani, e mafai ona faʻamauina e le gata i le taimi ma le umi o talosaga, ae faʻapea foʻi le teuina o fuafuaga faʻatinoina i le taimi nei. taimi.

Filifiliga faaopoopo 2

Fa'aauau le fa'aleleia o galuega

O le mataʻituina o fesili a tagata taʻitoʻatasi i se tulaga lautele e le o faʻamoemoe e foia ai le faʻafitauli o le faʻaauauina pea o le faʻaleleia o le faʻatinoga o le database atoa, talu ai e mataʻituina ma foia faʻafitauli faʻatinoga mo naʻo fesili taʻitasi. Ae ui i lea, e mafai ona e faʻalauteleina le metotia ma faʻapipiʻi fesili mataʻituina mo faʻamaumauga uma.

Ina ia faia lenei mea, e te manaʻomia le tuʻuina atu o metotia faʻatinoga faʻaopoopo:

  • I aso talu ai nei
  • Mo le vaitaimi faavae

E filifilia e le tusitusiga ni fesili mai le pg_stat_statements view i le faʻamaumauga autu ma faʻatusatusa le max_time tau ma le averesi max_time tau, i le tulaga muamua mo aso mulimuli poʻo le taimi filifilia (baseline), i le tulaga lona lua.

O le mea lea, i le tulaga o le faʻaleagaina o faʻatinoga mo soʻo se talosaga, o le a faʻatupuina otometi se lapataiga, e aunoa ma se suʻesuʻega tusilima o lipoti.

O le a le mea e fai i le synthesis?

I le faʻamatalaga faʻamatalaina, e pei ona taʻu mai e le synthesis method, e ala i le faʻaleleia o vaega taʻitasi o le faiga, matou te faʻaleleia le faiga atoa.

  • Su'esu'e fa'atino e se fa'amaumauga - abstract
  • Suia talosaga - tetee
  • Suia le tulaga o le faiga - synthesis

Synthesis o se tasi o metotia mo le faʻaleleia o le PostgreSQL faʻatinoga

Atinae atinae

  • Fa'aopoopoina o fa'amaumauga ua aoina e ala i le fa'aopoopoina o tala fa'asolopito mo le pg_stat_activity system view
  • Fa'alautele le aofa'i o fa'amaumauga e ala i le fa'aopoopoina o tala fa'asolopito mo fa'amaumauga o laulau ta'itasi o lo'o auai i fesili.
  • Fa'atasi ma le AWS cloud monitoring system
  • Ae ui i lea, e mafai ona e sau i se mea ...

puna: www.habr.com

Faʻatau talimalo faʻatuatuaina mo nofoaga ma DDoS puipuiga, VPS VDS servers 🔥 Fa'atau le 'upega tafa'ilagi talimalo fa'atuatuaina ma le puipuiga DDoS, 'au'aunaga VPS VDS | ProHoster