Mapa-rathaid Odyssey: dè eile a tha sinn ag iarraidh bho neach-cruinneachaidh ceangail. Andrey Borodin (2019)

Mapa-rathaid Odyssey: dè eile a tha sinn ag iarraidh bho neach-cruinneachaidh ceangail. Andrey Borodin (2019)

Anns an aithisg aige, innsidh Andrey Borodin dhut mar a thug iad aire don eòlas air sgèileadh PgBouncer nuair a bha iad a’ dealbhadh an inneal ceangail Odyssey, fhad 'sa bha iad ga sgaoileadh a-steach don riochdachadh. A bharrachd air an sin, bruidhnidh sinn mu na gnìomhan aig an inneal-tarraing a bu mhath leinn fhaicinn ann an dreachan ùra: tha e cudromach dhuinn chan ann a-mhàin coinneachadh ri ar feumalachdan, ach gus coimhearsnachd luchd-cleachdaidh a leasachadh. Odyssey.

Bhidio:

Mapa-rathaid Odyssey: dè eile a tha sinn ag iarraidh bho neach-cruinneachaidh ceangail. Andrey Borodin (2019)

Hi uile! ’S e Anndra an t-ainm a th’ orm.

Mapa-rathaid Odyssey: dè eile a tha sinn ag iarraidh bho neach-cruinneachaidh ceangail. Andrey Borodin (2019)

Aig Yandex, bidh mi a 'leasachadh stòran-dàta fosgailte. Agus an-diugh tha cuspair againn mu dheidhinn ceanglaichean pooler ceangail.

Mapa-rathaid Odyssey: dè eile a tha sinn ag iarraidh bho neach-cruinneachaidh ceangail. Andrey Borodin (2019)

Ma tha fios agad mar a chuireas tu fios gu pooler ceangail ann an Ruisis, innis dhomh. Tha mi dha-rìribh ag iarraidh teirm theicnigeach math a lorg a bu chòir a stèidheachadh anns an litreachas theicnigeach.

Tha an cuspair gu math toinnte, oir ann am mòran stòran-dàta tha an inneal ceangail air a thogail a-steach agus chan fheum thu eadhon fios a bhith agad mu dheidhinn. Gu dearbh, tha cuid de shuidheachaidhean anns a h-uile àite, ach ann am Postgres chan eil e ag obair mar sin. Agus aig an aon àm (aig HighLoad ++ 2019) tha aithisg le Nikolai Samokhvalov mu bhith a’ stèidheachadh cheistean ann am Postgres. Agus mar a tha mi ga thuigsinn, thàinig daoine an seo a bha air na ceistean aca a rèiteachadh gu foirfe, agus is iad sin daoine a tha mu choinneimh duilgheadasan siostam nas tearca co-cheangailte ris an lìonra agus cleachdadh ghoireasan. Agus ann an cuid de dh’àiteachan dh’ fhaodadh e a bhith caran duilich leis nach eil na duilgheadasan follaiseach.

Mapa-rathaid Odyssey: dè eile a tha sinn ag iarraidh bho neach-cruinneachaidh ceangail. Andrey Borodin (2019)

Tha Postgres aig Yandex. Tha mòran de sheirbheisean Yandex a’ fuireach ann an Yandex.Cloud. Agus tha grunn petabytes de dhàta againn a ghineas co-dhiù millean iarrtas gach diog ann am Postgres.

Mapa-rathaid Odyssey: dè eile a tha sinn ag iarraidh bho neach-cruinneachaidh ceangail. Andrey Borodin (2019)

Agus bidh sinn a’ toirt seachad cruinneachadh gu math àbhaisteach airson a h-uile seirbheis - is e seo am prìomh phrìomh nód den nód, an dà mhac-samhail àbhaisteach (synchronous agus asyncronach), cùl-taic, sgèileadh iarrtasan leughaidh air a’ mhac-samhail.

Mapa-rathaid Odyssey: dè eile a tha sinn ag iarraidh bho neach-cruinneachaidh ceangail. Andrey Borodin (2019)

Is e Postgres a th’ anns gach nód cnuasachaidh, air a bheil, a bharrachd air Postgres agus siostaman sgrùdaidh, inneal-cruinneachaidh ceangail air a chuir a-steach cuideachd. Tha pooler ceangail air a chleachdadh airson feansaichean agus airson a phrìomh adhbhar.

Mapa-rathaid Odyssey: dè eile a tha sinn ag iarraidh bho neach-cruinneachaidh ceangail. Andrey Borodin (2019)

Dè am prìomh adhbhar a tha aig pooler ceangail?

Mapa-rathaid Odyssey: dè eile a tha sinn ag iarraidh bho neach-cruinneachaidh ceangail. Andrey Borodin (2019)

Bidh Postgres a’ gabhail ri modail pròiseas nuair a bhios e ag obair le stòr-dàta. Tha seo a’ ciallachadh gur e aon phròiseas aon cheangal, aon backend Postgres. Agus ann an backend seo tha tòrr diofar caches, a tha gu math daor a dhèanamh eadar-dhealaichte airson diofar cheanglaichean.

Mapa-rathaid Odyssey: dè eile a tha sinn ag iarraidh bho neach-cruinneachaidh ceangail. Andrey Borodin (2019)

A bharrachd air an sin, tha sreath aig còd Postgres ris an canar procArray. Tha dàta bunaiteach ann mu cheanglaichean lìonraidh. Agus tha iom-fhillteachd sreathach aig cha mhòr a h-uile algorithm giollachd procArray; bidh iad a ’ruith thairis air an raon iomlan de cheanglaichean lìonra. Is e cearcall gu math sgiobalta a th’ ann, ach le barrachd cheanglaichean lìonraidh a’ tighinn a-steach bidh cùisean a’ fàs beagan nas daoire. Agus nuair a dh’ fhàsas cùisean beagan nas daoire, faodaidh tu prìs gu math àrd a phàigheadh ​​airson tòrr cheanglaichean lìonraidh.

Mapa-rathaid Odyssey: dè eile a tha sinn ag iarraidh bho neach-cruinneachaidh ceangail. Andrey Borodin (2019)

Tha 3 dòighean-obrach comasach:

  • Air taobh an tagraidh.
  • Air taobh an stòr-dàta.
  • Agus eadar, is e sin, a h-uile seòrsa measgachadh.

Gu mì-fhortanach, tha an pooler togte ga leasachadh an-dràsta. Bidh ar caraidean aig PostgreSQL Professional a’ dèanamh seo sa mhòr-chuid. Nuair a nochdas e tha e duilich ro-innse. Agus gu dearbh, tha dà fhuasgladh againn airson an ailtire a thaghadh. Is iad sin amar taobh tagraidh agus amar proxy.

Mapa-rathaid Odyssey: dè eile a tha sinn ag iarraidh bho neach-cruinneachaidh ceangail. Andrey Borodin (2019)

Is e amar taobh tagraidh an dòigh as fhasa. Agus tha cha mhòr a h-uile draibhear teachdaiche a ’toirt dòigh dhut: cuir na milleanan de na ceanglaichean agad ann an còd ann an cruth grunn dhusan ceangal ris an stòr-dàta.

Mapa-rathaid Odyssey: dè eile a tha sinn ag iarraidh bho neach-cruinneachaidh ceangail. Andrey Borodin (2019)

Is e an duilgheadas a tha ag èirigh, aig àm sònraichte a tha thu airson an backend a sgèileadh, gu bheil thu airson a chuir gu mòran innealan brìgheil.

Mapa-rathaid Odyssey: dè eile a tha sinn ag iarraidh bho neach-cruinneachaidh ceangail. Andrey Borodin (2019)

An uairsin tuigidh tu gu bheil grunn shònaichean a bharrachd agad, grunn ionadan dàta. Agus tha an dòigh cruinneachaidh taobh teachdaiche a’ leantainn gu àireamhan mòra. Tha timcheall air 10 ceangal aig feadhainn mòra. Is e seo an oir as urrainn obrachadh gu h-àbhaisteach.

Mapa-rathaid Odyssey: dè eile a tha sinn ag iarraidh bho neach-cruinneachaidh ceangail. Andrey Borodin (2019)

Ma tha sinn a 'bruidhinn mu luchd-poileasaidh neach-ionaid, tha dà neach-poileis ann as urrainn tòrr rudan a dhèanamh. Chan e dìreach luchd-poileis a th’ annta. Tha iad nan poolers + gnìomhachd nas fhuaire. Seo Pgpool и Crunchy-Proxy.

Ach, gu mì-fhortanach, chan fheum a h-uile duine an comas-gnìomh a bharrachd seo. Agus tha e a’ ciallachadh nach bi luchd-cruinneachaidh a’ toirt taic ach do chruinneachadh seisean, ie aon neach-dèiligidh a tha a’ tighinn a-steach, aon neach-dèiligidh a-mach chun stòr-dàta.

Chan eil seo gu math freagarrach airson ar n-adhbharan, agus mar sin bidh sinn a’ cleachdadh PgBouncer, a bhios a’ cur an gnìomh cruinneachadh ghnothaichean, i.e. bidh ceanglaichean frithealaiche air am maidseadh ri ceanglaichean teachdaiche a-mhàin fad beatha a’ ghnothaich.

Mapa-rathaid Odyssey: dè eile a tha sinn ag iarraidh bho neach-cruinneachaidh ceangail. Andrey Borodin (2019)

Agus nar n-eallach obrach, tha seo fìor. Ach tha beagan dhuilgheadasan ann.Mapa-rathaid Odyssey: dè eile a tha sinn ag iarraidh bho neach-cruinneachaidh ceangail. Andrey Borodin (2019)

Bidh na duilgheadasan a’ tòiseachadh nuair a tha thu airson seisean a dhearbhadh, leis gu bheil na ceanglaichean a tha a’ tighinn a-steach agad ionadail. Thàinig a h-uile duine le loopback agus dòigh air choireigin bidh e duilich an seisean a lorg.

Mapa-rathaid Odyssey: dè eile a tha sinn ag iarraidh bho neach-cruinneachaidh ceangail. Andrey Borodin (2019)

Gu dearbh faodaidh tu application_name_add_host a chleachdadh. Is e seo dòigh air taobh Bouncer gus seòladh IP a chuir ri application_name. Ach tha application_name air a shuidheachadh le ceangal a bharrachd.

Mapa-rathaid Odyssey: dè eile a tha sinn ag iarraidh bho neach-cruinneachaidh ceangail. Andrey Borodin (2019)

Air a 'ghraf seo, far a bheil an loidhne bhuidhe iarrtasan fìor, agus far a bheil an loidhne ghorm iarrtasan a tha a' sgèith a-steach don stòr-dàta. Agus is e an eadar-dhealachadh seo dìreach stàladh application_name, a tha a dhìth a-mhàin airson lorg, ach chan eil e an-asgaidh idir.

Mapa-rathaid Odyssey: dè eile a tha sinn ag iarraidh bho neach-cruinneachaidh ceangail. Andrey Borodin (2019)

A bharrachd air an sin, ann am Bouncer chan urrainn dhut aon amar a chuingealachadh, i.e. an àireamh de cheanglaichean stòr-dàta gach neach-cleachdaidh sònraichte, gach stòr-dàta sònraichte.

Mapa-rathaid Odyssey: dè eile a tha sinn ag iarraidh bho neach-cruinneachaidh ceangail. Andrey Borodin (2019)

Dè tha seo a 'leantainn gu? Tha seirbheis luchdaichte agad sgrìobhte ann an C ++ agus an àiteigin faisg air làimh seirbheis bheag air nód nach dèan dad uamhasach leis an stòr-dàta, ach tha an draibhear aige a’ dol às mo chiall. Bidh e a’ fosgladh 20 ceangal agus bidh a h-uile càil eile a’ feitheamh. Tha eadhon do chòd àbhaisteach.

Mapa-rathaid Odyssey: dè eile a tha sinn ag iarraidh bho neach-cruinneachaidh ceangail. Andrey Borodin (2019)

Sgrìobh sinn, gu dearbh, bad bheag airson Bouncer a chuir ris an t-suidheachadh seo, ie a’ cuingealachadh teachdaichean chun amar.

Mapa-rathaid Odyssey: dè eile a tha sinn ag iarraidh bho neach-cruinneachaidh ceangail. Andrey Borodin (2019)

Bhiodh e comasach seo a dhèanamh air taobh Postgres, i.e., cuingealaich na dreuchdan san stòr-dàta leis an àireamh de cheanglaichean.

Mapa-rathaid Odyssey: dè eile a tha sinn ag iarraidh bho neach-cruinneachaidh ceangail. Andrey Borodin (2019)

Ach an uairsin caillidh tu an comas tuigsinn carson nach eil ceanglaichean agad ris an fhrithealaiche. Cha bhith PgBouncer a’ tilgeil mearachd ceangail, bidh e an-còmhnaidh a’ tilleadh an aon fhiosrachadh. Agus chan urrainn dhut a thuigsinn: is dòcha gu bheil am facal-faire agad air atharrachadh, is dòcha gu bheil an stòr-dàta dìreach air chall, is dòcha gu bheil rudeigin ceàrr. Ach chan eil breithneachadh ann. Mura h-urrainnear seisean a stèidheachadh, cha bhi fios agad carson nach urrainnear a stèidheachadh.

Mapa-rathaid Odyssey: dè eile a tha sinn ag iarraidh bho neach-cruinneachaidh ceangail. Andrey Borodin (2019)

Aig àm sònraichte, bheir thu sùil air grafaichean an tagraidh agus chì thu nach eil an tagradh ag obair.

Mapa-rathaid Odyssey: dè eile a tha sinn ag iarraidh bho neach-cruinneachaidh ceangail. Andrey Borodin (2019)

Seall air a’ mhullach agus faic gu bheil Bouncer aon-snàithlean. Is e seo puing tionndaidh ann am beatha na seirbheis. Tuigidh tu gu robh thu ag ullachadh airson an stòr-dàta a sgèileadh ann am bliadhna gu leth, agus feumaidh tu an pooler a sgèile.

Mapa-rathaid Odyssey: dè eile a tha sinn ag iarraidh bho neach-cruinneachaidh ceangail. Andrey Borodin (2019)

Tha sinn air tighinn chun cho-dhùnadh gu bheil feum againn air barrachd PgBouncers.

Mapa-rathaid Odyssey: dè eile a tha sinn ag iarraidh bho neach-cruinneachaidh ceangail. Andrey Borodin (2019)

https://lwn.net/Articles/542629/

Tha bouncer air a phasgadh beagan.

Mapa-rathaid Odyssey: dè eile a tha sinn ag iarraidh bho neach-cruinneachaidh ceangail. Andrey Borodin (2019)

Agus rinn iad e gus an gabhadh grunn Bouncers a thogail le bhith ag ath-chleachdadh port TCP. Agus bidh an siostam obrachaidh gu fèin-ghluasadach a’ gluasad cheanglaichean TCP a tha a’ tighinn a-steach eatorra le bhith a’ cleachdadh robin cruinn.

Mapa-rathaid Odyssey: dè eile a tha sinn ag iarraidh bho neach-cruinneachaidh ceangail. Andrey Borodin (2019)

Tha seo follaiseach do luchd-dèiligidh, a’ ciallachadh gu bheil e coltach gu bheil aon Bouncer agad, ach gu bheil sgaradh agad de cheanglaichean seòlta eadar ruith Bouncers.

Mapa-rathaid Odyssey: dè eile a tha sinn ag iarraidh bho neach-cruinneachaidh ceangail. Andrey Borodin (2019)

Agus aig àm sònraichte is dòcha gum mothaich thu gu bheil na 3 Bouncers sin gach fear ag ithe suas an cridhe le 100%. Feumaidh tu grunn Bouncers. Carson?

Mapa-rathaid Odyssey: dè eile a tha sinn ag iarraidh bho neach-cruinneachaidh ceangail. Andrey Borodin (2019)

Leis gu bheil TLS agad. Tha ceangal crioptaichte agad. Agus ma chomharraicheas tu Postgres le agus às aonais TLS, gheibh thu a-mach gu bheil an àireamh de cheanglaichean stèidhichte a’ tuiteam le faisg air dà òrdugh meudachd le crioptachadh air a chomasachadh, leis gu bheil crathadh làimhe TLS ag ithe goireasan CPU.

Mapa-rathaid Odyssey: dè eile a tha sinn ag iarraidh bho neach-cruinneachaidh ceangail. Andrey Borodin (2019)

Agus aig a 'mhullach chì thu grunn ghnìomhan criptografach a thèid a chur gu bàs nuair a tha tonn de cheanglaichean a' tighinn a-steach. Leis gum faod ar bun-sgoil gluasad eadar sònaichean ruigsinneachd, tha tonn de cheanglaichean a tha a’ tighinn a-steach na shuidheachadh gu math àbhaisteach. Is e sin, airson adhbhar air choireigin cha robh an t-seann bhun-sgoil ri fhaighinn, chaidh an luchd gu lèir a chuir gu ionad dàta eile. Thig iad uile a bhruidhinn ri TLS aig an aon àm.

Mapa-rathaid Odyssey: dè eile a tha sinn ag iarraidh bho neach-cruinneachaidh ceangail. Andrey Borodin (2019)

Agus is dòcha nach bi àireamh mhòr de chrathadh làimhe TLS ag ràdh hello ri Bouncer tuilleadh, ach bidh e a’ brùthadh amhach. Mar thoradh air an ùine a-muigh, dh’ fhaodadh an tonn de cheanglaichean a tha a’ tighinn a-steach a dhol gun mhilleadh. Ma dh’ fheuchas tu air ais chun bhunait gun chùl-taic exponential, cha tig iad a-rithist is a-rithist ann an tonn ciallach.

Mapa-rathaid Odyssey: dè eile a tha sinn ag iarraidh bho neach-cruinneachaidh ceangail. Andrey Borodin (2019)

Seo eisimpleir de 16 PgBouncers a bhios a’ luchdachadh 16 cores aig 100%.

Mapa-rathaid Odyssey: dè eile a tha sinn ag iarraidh bho neach-cruinneachaidh ceangail. Andrey Borodin (2019)

Thàinig sinn gu PgBouncer cascade. Is e seo an rèiteachadh as fheàrr a ghabhas coileanadh air an luchd againn le Bouncer. Bithear a’ cleachdadh na Bouncers taobh a-muigh againn airson crathadh làimhe TCP, agus thathas a’ cleachdadh Bouncers a-staigh airson fìor chruinneachadh, gus nach bi iad a’ briseadh cus cheanglaichean bhon taobh a-muigh.

Mapa-rathaid Odyssey: dè eile a tha sinn ag iarraidh bho neach-cruinneachaidh ceangail. Andrey Borodin (2019)

Anns an rèiteachadh seo, tha e comasach ath-thòiseachadh rèidh. Faodaidh tu na 18 Bouncers sin ath-thòiseachadh aon às deidh aon. Ach tha e gu math duilich a leithid de rèiteachadh a chumail suas. Cha bhith Sysadmins, DevOps, agus daoine a tha dha-rìribh an urra ris an t-seirbheisiche seo glè thoilichte leis an rèiteachadh seo.

Mapa-rathaid Odyssey: dè eile a tha sinn ag iarraidh bho neach-cruinneachaidh ceangail. Andrey Borodin (2019)

Bhiodh e coltach gum faodar na leasachaidhean againn uile a bhrosnachadh gu stòr fosgailte, ach chan eil Bouncer a’ faighinn taic fìor mhath. Mar eisimpleir, chaidh an comas grunn PgBouncers a ruith air aon phort a ghealltainn mìos air ais. Bha iarrtas tarraing ann leis an fheart seo grunn bhliadhnaichean air ais.

Mapa-rathaid Odyssey: dè eile a tha sinn ag iarraidh bho neach-cruinneachaidh ceangail. Andrey Borodin (2019)

https://www.postgresql.org/docs/current/libpq-cancel.html

https://github.com/pgbouncer/pgbouncer/pull/79

No eisimpleir eile. Ann am Postgres, faodaidh tu iarrtas a tha a’ dol air adhart a chuir dheth le bhith a’ cur an dìomhair gu ceangal eile gun dearbhadh neo-riatanach. Ach bidh cuid de luchd-dèiligidh dìreach a’ cur ath-shuidheachadh TCP, i.e. bidh iad a’ briseadh a’ cheangal lìonraidh. Dè a nì Bouncer? Cha dèan e dad. Leanaidh e air adhart leis an iarrtas a chuir an gnìomh. Ma tha thu air àireamh mhòr de cheanglaichean fhaighinn a chruthaich stòr-dàta le iarrtasan beaga, cha bhith e gu leòr dìreach an ceangal a dhì-cheangal bho Bouncer; feumaidh tu cuideachd na h-iarrtasan sin a tha a’ ruith san stòr-dàta a choileanadh.

Chaidh seo fhuasgladh agus cha deach an duilgheadas seo a chur còmhla ri Bouncer shuas an abhainn fhathast.

Mapa-rathaid Odyssey: dè eile a tha sinn ag iarraidh bho neach-cruinneachaidh ceangail. Andrey Borodin (2019)

Agus mar sin thàinig sinn chun a 'cho-dhùnaidh gu bheil feum againn air an inneal ceangail againn fhèin, a thèid a leasachadh, a ghleidheadh, anns am faodar duilgheadasan a cheartachadh gu luath agus a dh'fheumas, gu dearbh, a bhith ioma-snàithlean.

Mapa-rathaid Odyssey: dè eile a tha sinn ag iarraidh bho neach-cruinneachaidh ceangail. Andrey Borodin (2019)

Shuidhich sinn multithreading mar phrìomh obair. Feumaidh sinn a bhith comasach air an tonn de cheanglaichean TLS a tha a’ tighinn a-steach a làimhseachadh gu math.

Gus seo a dhèanamh, bha againn ri leabharlann air leth a leasachadh ris an canar Machinarium, a tha air a dhealbhadh gus cunntas a thoirt air stàitean inneal ceangal lìonra mar chòd sreath. Ma choimheadas tu air còd stòr libpq, chì thu gairmean gu math toinnte a bheir toradh dhut agus a chanas tu, “Cuir fòn thugam nas fhaide air adhart. Tha IO agam an-dràsta, ach nuair a dh’ fhalbhas an IO bidh eallach agam air a’ phròiseasar.” Agus is e sgeama ioma-ìre a tha seo. Mar as trice bidh conaltradh lìonra air a mhìneachadh le inneal stàite. Tòrr riaghailtean mar “Ma fhuair mi bann-cinn pacaid de mheud N roimhe seo, a-nis tha mi a’ feitheamh ri N bytes, ”“ Ma chuir mi pasgan SYNC, a-nis tha mi a ’feitheamh ri pacaid le meata-dàta toraidh.” Is e an toradh còd caran duilich, mì-thuigseach, mar gum biodh a’ chuartan air a thionndadh gu scan loidhne. Rinn sinn e gus am bi am prògramadair a’ toirt cunntas air a’ phrìomh shlighe eadar-obrachaidh ann an cruth còd àbhaisteach an àite inneal stàite. Is e dìreach sin anns a ’chòd riatanach seo a dh’ fheumas tu àiteachan a chuir a-steach far am feumar stad a chuir air an t-sreath cur gu bàs le bhith a ’feitheamh ri dàta bhon lìonra, a’ dol seachad air a ’cho-theacsa cur gu bàs gu coroutine eile (snàthainn uaine). Tha an dòigh-obrach seo coltach ris an fhìrinn gu bheil sinn a 'sgrìobhadh sìos an t-slighe ris a bheil dùil anns a' chuartan ann an sreath, agus an uairsin cuiridh sinn geugan ris.

Mapa-rathaid Odyssey: dè eile a tha sinn ag iarraidh bho neach-cruinneachaidh ceangail. Andrey Borodin (2019)

Mar thoradh air an sin, tha aon snàithlean againn a tha TCP a 'gabhail ris agus bidh robin cruinn a' dol seachad air ceangal TPC gu mòran luchd-obrach.

Anns a 'chùis seo, bidh gach ceangal cleachdaiche an-còmhnaidh a' ruith air aon phròiseas. Agus leigidh seo leat a dhèanamh càirdeil le cache.

Agus a bharrachd air an sin, tha sinn air beagan leasachaidh a dhèanamh air cruinneachadh phasganan beaga gu aon phasgan mòr gus faochadh a thoirt don t-siostam TCP stack.

Mapa-rathaid Odyssey: dè eile a tha sinn ag iarraidh bho neach-cruinneachaidh ceangail. Andrey Borodin (2019)

A bharrachd air an sin, tha sinn air cruinneachadh malairt a leasachadh anns an fhaireachdainn gun urrainn dha Odyssey, nuair a thèid a rèiteachadh, CANCEL agus ROLLBACK a chuir ma dh’ fhàillig ceangal lìonra, ie mura h-eil duine a’ feitheamh ri iarrtas, innsidh Odyssey don stòr-dàta gun a bhith a’ feuchainn ri an t-iarrtas a choileanadh a dh’ fhaodadh goireasan luachmhor a chaitheamh.

Agus nuair as urrainnear, bidh sinn a’ cumail cheanglaichean ris an aon neach-dèiligidh. Bidh seo a’ seachnadh a bhith ag ath-shuidheachadh application_name_add_host. Ma tha seo comasach, chan fheum sinn a bharrachd ath-shuidheachadh nam paramadairean a tha a dhìth airson diagnosachd.

Mapa-rathaid Odyssey: dè eile a tha sinn ag iarraidh bho neach-cruinneachaidh ceangail. Andrey Borodin (2019)

Bidh sinn ag obair airson ùidhean Yandex.Cloud. Agus ma chleachdas tu PostgreSQL fo stiùir agus ma tha inneal ceangail agad air a chuir a-steach, faodaidh tu mac-samhail loidsigeach a chruthachadh a-muigh, ie, fàg sinn, ma tha thu ag iarraidh, a’ cleachdadh ath-riochdachadh loidsigeach. Cha leig bouncer an sruth mac-samhail loidsigeach a-muigh.

Mapa-rathaid Odyssey: dè eile a tha sinn ag iarraidh bho neach-cruinneachaidh ceangail. Andrey Borodin (2019)

Seo eisimpleir de bhith a’ stèidheachadh mac-samhail loidsigeach.

Mapa-rathaid Odyssey: dè eile a tha sinn ag iarraidh bho neach-cruinneachaidh ceangail. Andrey Borodin (2019)

A bharrachd air an sin, tha taic againn airson ath-riochdachadh corporra a-muigh. Anns an Cloud, gu dearbh, tha seo do-dhèanta, oir an uairsin bheir am brabhsair dhut cus fiosrachaidh mu dheidhinn fhèin. Ach anns na h-ionadan agad, ma tha feum agad air ath-riochdachadh corporra tron ​​​​pooler ceangail ann an Odyssey, tha seo comasach.

Mapa-rathaid Odyssey: dè eile a tha sinn ag iarraidh bho neach-cruinneachaidh ceangail. Andrey Borodin (2019)

Tha sgrùdadh làn-fhreagarrach aig Odyssey le PgBouncer. Tha an aon consol againn a bhios a’ ruith cha mhòr a h-uile h-aon àitheantan. Ma tha rudeigin a dhìth, cuir iarrtas tarraing, no co-dhiù cùis air GitHub, agus cuiridh sinn crìoch air na h-òrdughan riatanach. Ach tha prìomh ghnìomhachd an consol PgBouncer againn mu thràth.

Mapa-rathaid Odyssey: dè eile a tha sinn ag iarraidh bho neach-cruinneachaidh ceangail. Andrey Borodin (2019)

Agus, gu dearbh, tha mearachd againn air adhart. Tillidh sinn am mearachd a chaidh aithris leis an stòr-dàta. Gheibh thu fiosrachadh mu carson nach eil thu san stòr-dàta, agus chan e dìreach nach eil thu air do ghabhail a-steach ann.

Mapa-rathaid Odyssey: dè eile a tha sinn ag iarraidh bho neach-cruinneachaidh ceangail. Andrey Borodin (2019)

Tha am feart seo à comas gun fhios nach bi feum agad air co-chòrdalachd 100% le PgBouncer. Faodaidh sinn a bhith gad ghiùlan fhèin san aon dòigh ri Bouncer, dìreach airson a bhith air an taobh shàbhailte.

Leasachadh

Beagan fhaclan mu chòd stòr Odyssey.

Mapa-rathaid Odyssey: dè eile a tha sinn ag iarraidh bho neach-cruinneachaidh ceangail. Andrey Borodin (2019)

https://github.com/yandex/odyssey/pull/66

Mar eisimpleir, tha òrdughan “Pause / Resume”. Mar as trice bidh iad air an cleachdadh gus an stòr-dàta ùrachadh. Ma dh’ fheumas tu Postgres ùrachadh, faodaidh tu stad a chuir air anns an pooler ceangail, dèan pg_upgrade, agus an uairsin ath-thòiseachadh. Agus bho thaobh an neach-dèiligidh seallaidh e mar gum biodh an stòr-dàta dìreach a’ slaodadh sìos. Chaidh an gnìomh seo a thoirt thugainn le daoine bhon choimhearsnachd. Chan eil i reòta fhathast, ach a dh'aithghearr bidh a h-uile dad. (Reòthte mar-thà)

Mapa-rathaid Odyssey: dè eile a tha sinn ag iarraidh bho neach-cruinneachaidh ceangail. Andrey Borodin (2019)

https://github.com/yandex/odyssey/pull/73 - reòta mu thràth

A bharrachd air an sin, is e aon de na feartan ùra ann am PgBouncer taic airson SCRAM Authentication, a chaidh a thoirt dhuinn cuideachd le neach nach eil ag obair ann an Yandex.Cloud. Tha an dà chuid gnìomhachd iom-fhillte agus cudromach.

Mapa-rathaid Odyssey: dè eile a tha sinn ag iarraidh bho neach-cruinneachaidh ceangail. Andrey Borodin (2019)

Mar sin, bu mhath leam innse dhut cò às a tha Odyssey air a dhèanamh, air eagal gu bheil thu airson còd beag a sgrìobhadh a-nis.

Tha bunait stòr Odyssey agad, a tha an urra ri dà phrìomh leabharlann. Tha leabharlann Kiwi na bhuileachadh air protocol teachdaireachd Postgres. Is e sin, tha proto dùthchasach 3 de Postgres na theachdaireachdan àbhaisteach as urrainn cinn-aghaidh agus cinn-cùil iomlaid. Tha iad air an cur an gnìomh ann an leabharlann Kiwi.

Tha leabharlann Machinarium na leabharlann buileachaidh snàithlean. Tha criomag bheag den Machinarium seo sgrìobhte ann an cànan co-chruinneachaidh. Ach na biodh eagal ort, chan eil ann ach 15 loidhnichean.

Mapa-rathaid Odyssey: dè eile a tha sinn ag iarraidh bho neach-cruinneachaidh ceangail. Andrey Borodin (2019)

Odyssey ailtireachd. Tha prìomh inneal air a bheil coroutines a 'ruith. Bidh an inneal seo a’ buileachadh gabhail ri ceanglaichean TCP a tha a’ tighinn a-steach agus gan sgaoileadh am measg luchd-obrach.

Faodaidh neach-làimhseachaidh airson grunn luchd-dèiligidh obrachadh taobh a-staigh aon neach-obrach. Bidh am prìomh snàithlean cuideachd a’ ruith a’ chonsail agus a’ giullachd ghnìomhan crone gus ceanglaichean nach eil a dhìth tuilleadh san amar a dhubhadh às.

Mapa-rathaid Odyssey: dè eile a tha sinn ag iarraidh bho neach-cruinneachaidh ceangail. Andrey Borodin (2019)

Bithear a’ dèanamh deuchainn air Odyssey a’ cleachdadh an t-sreath deuchainn àbhaisteach Postgres. Bidh sinn dìreach a’ ruith install-check tro Bouncer agus tro Odyssey, gheibh sinn null div. Tha grunn dheuchainnean co-cheangailte ri cruth cinn-latha nach eil a’ dol seachad air an aon rud ann am Bouncer agus ann an Odyssey.

A bharrachd air an sin, tha mòran dhraibhearan ann aig a bheil an deuchainn fhèin. Agus bidh sinn a’ cleachdadh na deuchainnean aca gus an Odyssey a dhearbhadh.

Mapa-rathaid Odyssey: dè eile a tha sinn ag iarraidh bho neach-cruinneachaidh ceangail. Andrey Borodin (2019)

A bharrachd air an sin, mar thoradh air an rèiteachadh cascade againn, feumaidh sinn grunn phasganan a dhearbhadh: Postgres + Odyssey, PgBouncer + Odyssey, Odyssey + Odyssey gus a bhith cinnteach ma thàinig Odyssey gu crìch ann an gin de na pàirtean san cascade, bidh e fhathast ag obair mar a tha sinn an dùil.

Rake

Mapa-rathaid Odyssey: dè eile a tha sinn ag iarraidh bho neach-cruinneachaidh ceangail. Andrey Borodin (2019)

Bidh sinn a’ cleachdadh Odyssey ann an cinneasachadh. Agus cha bhiodh e cothromach nan tuirt mi gu bheil a h-uile dad dìreach ag obair. Chan e, is e sin, tha, ach chan ann an-còmhnaidh. Mar eisimpleir, ann an cinneasachadh bha a h-uile dad dìreach ag obair, an uairsin thàinig ar caraidean bho PostgreSQL Professional agus thuirt iad gu robh aodion cuimhne againn. Bha iad dha-rìribh, cheartaich sinn iad. Ach bha e sìmplidh.

Mapa-rathaid Odyssey: dè eile a tha sinn ag iarraidh bho neach-cruinneachaidh ceangail. Andrey Borodin (2019)

An uairsin fhuair sinn a-mach gu bheil ceanglaichean TLS a’ tighinn a-steach agus ceanglaichean TLS a tha a’ dol a-mach aig an inneal ceangail. Agus feumaidh ceanglaichean teisteanasan teachdaiche agus teisteanasan frithealaiche.

Bidh teisteanasan frithealaiche Bouncer agus Odyssey air an ath-leughadh leis a’ pcache aca, ach chan fheum teisteanasan teachdaiche a bhith air an ath-leughadh bho pcache, oir tha an Odyssey scalable againn mu dheireadh a’ ruith a-steach do choileanadh an t-siostaim airson an teisteanas seo a leughadh. Chuir so iongantas oirnn, oir cha do ghabh e fada ri cur na aghaidh. An toiseach chaidh e sìos gu sreathach, ach an dèidh 20 ceangal a-steach aig an aon àm nochd an duilgheadas seo fhèin.

Mapa-rathaid Odyssey: dè eile a tha sinn ag iarraidh bho neach-cruinneachaidh ceangail. Andrey Borodin (2019)

Is e Modh Dearbhaidh Pluggable an comas dearbhadh a’ cleachdadh innealan Lunux togte. Ann am PgBouncer tha e air a chuir an gnìomh ann an dòigh is gu bheil snàithlean air leth ann gus feitheamh ri freagairt bho PAM agus tha prìomh snàithlean PgBouncer ann a bheir seirbheis don cheangal gnàthach agus is urrainn dhaibh iarraidh orra fuireach san t-snàthainn PAM.

Cha do chuir sinn seo an gnìomh airson aon adhbhar sìmplidh. Tha tòrr snàithleanan againn. Carson a tha feum againn air seo?

Faodaidh seo duilgheadasan a chruthachadh aig a’ cheann thall leis ma tha dearbhadh PAM agad agus dearbhadh neo-PAM, faodaidh tonn mòr de dhearbhadh PAM dàil mhòr a chuir air dearbhadh neo-PAM. Is e seo aon de na rudan nach do shocraich sinn. Ach ma tha thu airson a chàradh, faodaidh tu seo a dhèanamh.

Mapa-rathaid Odyssey: dè eile a tha sinn ag iarraidh bho neach-cruinneachaidh ceangail. Andrey Borodin (2019)

B 'e ràcan eile gu bheil aon snàithlean againn a tha a' gabhail ris a h-uile ceangal a tha a 'tighinn a-steach. Agus an uairsin thèid an gluasad gu amar an luchd-obrach, far an tachair an crathadh làimhe TLS.

Gu h-ìosal, ma tha tonn ciallach de cheanglaichean lìonra 20 agad, thèid gabhail riutha uile. Agus air taobh an neach-dèiligidh tòisichidh libpq ag aithris ùine-ama. Gu gnàthach tha e coltach gu bheil e 000 diogan.

Mura h-urrainn dhaibh uile a dhol a-steach don stòr-dàta aig an aon àm, chan urrainn dhaibh a dhol a-steach don stòr-dàta, oir faodaidh seo a bhith air a chòmhdach le ath-fheuchainn neo-eisimeileach.

Thàinig sinn chun cho-dhùnadh gun do rinn sinn leth-bhreac den sgeama bho PgBouncer an seo leis gu bheil sinn air an àireamh de cheanglaichean TCP ris a bheil sinn a’ gabhail ris a shàrachadh.

Ma chì sinn gu bheil sinn a’ gabhail ri ceanglaichean, ach aig a’ cheann thall chan eil ùine aca crathadh làimhe, cuiridh sinn ann an ciudha iad gus nach caith iad goireasan CPU. Tha seo a’ ciallachadh gur dòcha nach tèid crathadh làimhe aig an aon àm a dhèanamh airson a h-uile ceangal a tha air ruighinn. Ach co-dhiù thèid cuideigin a-steach don stòr-dàta, eadhon ged a tha an luchd gu math trom.

mhapa-rathaid

Dè a bhiodh tu airson fhaicinn san àm ri teachd ann an Odyssey? Dè tha sinn deiseil airson sinn fhèin a leasachadh agus dè a tha sinn a’ sùileachadh bhon choimhearsnachd?

Mapa-rathaid Odyssey: dè eile a tha sinn ag iarraidh bho neach-cruinneachaidh ceangail. Andrey Borodin (2019)

Bhon Lùnastal 2019.

Seo mar a bha mapa-rathaid Odyssey coltach san Lùnastal:

  • Bha sinn ag iarraidh dearbhadh SCRAM agus PAM.
  • Bha sinn airson iarrtasan leughaidh a chuir air adhart gu cùl-taic.
  • Bu mhath leam ath-thòiseachadh air-loidhne.
  • Agus an comas stad air an fhrithealaiche.

Mapa-rathaid Odyssey: dè eile a tha sinn ag iarraidh bho neach-cruinneachaidh ceangail. Andrey Borodin (2019)

Tha leth den mhapa-rathaid seo air a chrìochnachadh, agus chan ann leinn. Agus tha seo math. Mar sin bruidhnidh sinn air na tha air fhàgail agus cuir barrachd ris.

Mapa-rathaid Odyssey: dè eile a tha sinn ag iarraidh bho neach-cruinneachaidh ceangail. Andrey Borodin (2019)

A thaobh ceistean air adhart ri leughadh a-mhàin gu cùl-taic? Tha mac-samhail againn a bhios dìreach a’ teasachadh an èadhair gun a bhith a’ cur an gnìomh iarrtasan. Feumaidh sinn iad airson failover agus tionndadh. Ma tha duilgheadasan ann an aon de na h-ionadan dàta, bu mhath leam beagan obair fheumail a ghabhail orra. Leis nach urrainn dhuinn na h-aon phròiseasan meadhanach a rèiteachadh, an aon chuimhne ann an dòigh eadar-dhealaichte, oir air dhòigh eile cha bhith ath-riochdachadh ag obair.

Mapa-rathaid Odyssey: dè eile a tha sinn ag iarraidh bho neach-cruinneachaidh ceangail. Andrey Borodin (2019)

Ann am prionnsapal, ann am Postgres, a’ tòiseachadh bho 10, tha e comasach seisean_attrs a shònrachadh nuair a bhios tu a’ ceangal. Faodaidh tu na h-aoighean stòr-dàta gu lèir a liostadh sa cheangal agus innse carson a tha thu a’ dol chun stòr-dàta: sgrìobh no leugh a-mhàin. Agus taghaidh an draibhear fhèin a’ chiad aoigh air an liosta as fheàrr leis, a choileanas riatanasan session_attrs.

Mapa-rathaid Odyssey: dè eile a tha sinn ag iarraidh bho neach-cruinneachaidh ceangail. Andrey Borodin (2019)

Ach is e an duilgheadas leis an dòigh-obrach seo nach eil smachd aige air an dàil ath-riochdachadh. Is dòcha gu bheil mac-samhail agad a tha air a dhol air dheireadh airson ùine neo-iomchaidh airson do sheirbheis. Gus leigeil le làn-nochdadh cheistean leughaidh air mac-samhail, feumaidh sinn gu bunaiteach taic a thoirt do chomas Odyssey gun a bhith a’ ruith nuair nach gabh a leughadh.

Feumaidh Odyssey a dhol chun stòr-dàta bho àm gu àm agus iarraidh air an astar ath-riochdachadh bhon bhun-sgoil. Agus ma tha e air an luach crìche a ruighinn, na leig le iarrtasan ùra a-steach don stòr-dàta, innis don neach-dèiligidh gum feum e ceanglaichean ath-thòiseachadh agus, is dòcha, tagh aoigh eile gus iarrtasan a chuir an gnìomh. Leigidh seo leis an stòr-dàta an dàil ath-riochdachadh a thoirt air ais gu sgiobalta agus tilleadh a-rithist gus freagairt le iarrtas.

Tha e duilich clàr-ama a thoirt seachad airson a bhuileachadh, oir tha e fosgailte. Ach, tha mi an dòchas, chan e 2,5 bliadhna mar mo cho-obraichean bho PgBouncer. Is e seo am feart a bu mhath leam fhaicinn anns an Odyssey.

Mapa-rathaid Odyssey: dè eile a tha sinn ag iarraidh bho neach-cruinneachaidh ceangail. Andrey Borodin (2019)

Anns a’ choimhearsnachd, dh’fhaighnich daoine mu thaic don aithris ullaichte. A-nis faodaidh tu aithris ullaichte a chruthachadh ann an dà dhòigh. An toiseach, faodaidh tu an àithne SQL a chuir an gnìomh, is e sin “ullaichte”. Gus an àithne SQL seo a thuigsinn, feumaidh sinn ionnsachadh gus an SQL air taobh Bouncer a thuigsinn. Bhiodh seo na overkill, oir tha e cus, oir tha feum againn air a’ pharser gu lèir. Chan urrainn dhuinn a h-uile òrdugh SQL a pharsadh.

Ach tha aithris ullaichte aig ìre protocol teachdaireachd air proto3. Agus is e seo an t-àite nuair a thig am fiosrachadh gu bheil aithris ullaichte ga chruthachadh ann an cruth structaraichte. Agus b’ urrainn dhuinn taic a thoirt don tuigse gun do dh’ iarr an neach-dèiligidh air cuid de cheangal frithealaiche aithrisean ullaichte a chruthachadh. Agus eadhon ged a tha an gnothach dùinte, feumaidh sinn fhathast ceangal a chumail eadar an fhrithealaiche agus an neach-dèiligidh.

Ach an seo tha eadar-dhealachadh sa chòmhradh ag èirigh, oir tha cuideigin ag ràdh gum feum thu tuigsinn dè an seòrsa aithrisean ullaichte a chruthaich an neach-dèiligidh agus an ceangal frithealaiche a cho-roinn eadar a h-uile neach-dèiligidh a chruthaich an ceangal frithealaiche seo, ie, a chruthaich aithris ullaichte.

Thuirt Andres Freund ma thig neach-dèiligidh thugad a tha air aithris ullaichte a chruthachadh mar-thà ann an ceangal frithealaiche eile, cruthaich e dha. Ach tha e coltach gu bheil e beagan ceàrr iarrtasan a chuir an gnìomh san stòr-dàta an àite an neach-dèiligidh, ach bho shealladh an leasaiche a bhios a ’sgrìobhadh a’ phròtacal airson eadar-obrachadh leis an stòr-dàta, bhiodh e goireasach nam biodh e dìreach air ceangal lìonra a thoirt dha anns a bheil tha iarrtas ullamh mar sin ann.

Mapa-rathaid Odyssey: dè eile a tha sinn ag iarraidh bho neach-cruinneachaidh ceangail. Andrey Borodin (2019)

Agus aon fheart eile a dh’ fheumas sinn a bhuileachadh. Tha sgrùdadh againn a-nis co-chosmhail ri PgBouncer. Is urrainn dhuinn an ùine cuibheasach airson cur an gnìomh ceist a thilleadh. Ach is e an ùine chuibheasach an teòthachd cuibheasach san ospadal: tha cuid fuar, tha cuid blàth - gu cuibheasach, tha a h-uile duine fallain. Chan eil e fìor.

Feumaidh sinn taic a chuir an gnìomh airson ceudadan a bhiodh a’ nochdadh gu bheil ceistean slaodach ann a tha a’ caitheamh ghoireasan agus a dhèanadh sgrùdadh nas iomchaidh.

Mapa-rathaid Odyssey: dè eile a tha sinn ag iarraidh bho neach-cruinneachaidh ceangail. Andrey Borodin (2019)

Is e an rud as cudromaiche gu bheil mi ag iarraidh dreach 1.0 (Tionndadh 1.1 air a leigeil ma sgaoil mu thràth). Is e an fhìrinn gu bheil Odyssey a-nis ann an dreach 1.0rc, i.e. tagraiche fuasglaidh. Agus chaidh a h-uile duilgheadas a chuir mi a-steach a rèiteachadh leis an aon dreach, ach a-mhàin an aodion cuimhne.

Dè bhios dreach 1.0 a’ ciallachadh dhuinne? Tha sinn a’ sgaoileadh Odyssey gu ar bunaitean. Tha e mu thràth a’ ruith air na stòran-dàta againn, ach nuair a ruigeas e ìre 1 iarrtas gach diog, faodaidh sinn a ràdh gur e seo an dreach fuasglaidh agus is e seo dreach ris an canar 000.

Tha grunn dhaoine sa choimhearsnachd air iarraidh gum biodh dreach 1.0 a’ toirt a-steach stad agus SCRAM. Ach bidh seo a’ ciallachadh gum feum sinn an ath dhreach a sgaoileadh a-mach gu cinneasachadh, leis nach deach SCRAM no stad a mharbhadh fhathast. Ach, as coltaiche, thèid a 'chùis seo a rèiteachadh gu math luath.

Mapa-rathaid Odyssey: dè eile a tha sinn ag iarraidh bho neach-cruinneachaidh ceangail. Andrey Borodin (2019)

Tha mi a’ feitheamh ris an iarrtas tarraing agad. Bu mhath leam cuideachd cluinntinn dè na duilgheadasan a th’ agad le Bouncer. Bruidhnidh sinn riutha. Is dòcha gun urrainn dhuinn cuid de na gnìomhan a tha a dhìth ort a chuir an gnìomh.

'S e so crioch mo chuid-sa, Bu mhiann leam èisdeachd riut. Tapadh leat!

Do cheistean

Ma shuidhicheas mi an application_name agam fhìn, an tèid a chuir air adhart gu ceart, a’ gabhail a-steach cruinneachadh malairt ann an Odyssey?

Odyssey neo Bouncer?

Ann an Odyssey. Ann am Bouncer tha e air a thilgeil.

Nì sinn seata.

Agus ma leumas an fhìor cheangal agam air ceanglaichean eile, an tèid a ghluasad?

Nì sinn seata de na paramadairean uile a tha air an liostadh san liosta. Chan urrainn dhomh innse a bheil application_name air an liosta seo. Tha mi a’ smaoineachadh gum faca mi an sin e. Suidhichidh sinn na h-aon pharaimearan uile. Le aon iarrtas, nì an seata a h-uile dad a chaidh a chuir a-steach leis an neach-dèiligidh aig àm tòiseachaidh.

Tapadh leibh, Andrey, airson an aithris! Deagh aithris! Tha mi toilichte gu bheil Odyssey a 'leasachadh nas luaithe agus nas luaithe gach mionaid. Tha mi airson leantainn air adhart mar seo. Tha sinn mu thràth air iarraidh ort ceangal ioma-stòr dàta a bhith agad gus an urrainn dha Odyssey ceangal ri diofar stòran-dàta aig an aon àm, ie prìomh thràill, agus an uairsin ceangal gu fèin-ghluasadach ri maighstir ùr às deidh fàilligeadh.

Tha, tha e coltach gu bheil cuimhne agam air an deasbad seo. A-nis tha grunn stòran ann. Ach chan eil tionndadh eatorra. Air ar taobh, feumaidh sinn sgrùdadh a dhèanamh air an t-seirbheisiche gu bheil e fhathast beò agus tuigsinn gu bheil fàilligeadh air tachairt, cò a chanas pg_recovery. Tha dòigh àbhaisteach agam air tuigse nach tàinig sinn chun a’ mhaighstir. Agus am bu chòir dhuinn dòigh air choireigin a thuigsinn bho na mearachdan no dè? Is e sin, tha am beachd inntinneach, thathar ga dheasbad. Sgrìobh barrachd bheachdan. Ma tha luchd-obrach agad a tha eòlach air C, tha sin math san fharsaingeachd.

Tha a’ cheist mu bhith a’ sgèileadh thairis air mac-samhail cuideachd inntinneach dhuinn, leis gu bheil sinn airson gabhail ri cruinneachaidhean mac-samhail a dhèanamh cho sìmplidh sa ghabhas do luchd-leasachaidh thagraidhean. Ach an seo tha mi ag iarraidh barrachd bheachdan, i.e. dìreach mar a nì thu e, mar a nì thu e gu math.

Tha a’ cheist cuideachd mu dheidhinn mac-samhail. Tha e a 'tionndadh a-mach gu bheil maighstir agad agus grunn mac-samhail. Agus tha e soilleir gu bheil iad a 'dol gu mac-samhail nas lugha na chun a' mhaighstir airson ceanglaichean, oir is dòcha gu bheil eadar-dhealachaidhean aca. Thuirt thu gum faodadh an diofar anns an dàta a bhith cho mòr is nach sàsaich e do ghnìomhachas agus nach tèid thu ann gus an tèid ath-aithris. Aig an aon àm, mura deach thu ann airson ùine mhòr, agus an uairsin thòisich thu a 'dol, cha bhi an dàta a tha a dhìth ri fhaighinn sa bhad. Is e sin, ma thèid sinn an-còmhnaidh chun mhaighstir, bidh an tasgadan an sin air a bhlàthachadh, ach anns a ’mhac-samhail bidh an tasgadan a’ dol sìos beagan.

Tha, tha e fìor. Cha bhith na blocaichean dàta a tha thu ag iarraidh aig a’ pcache, cha bhith fiosrachadh aig an fhìor tasgadan mu na clàran a tha thu ag iarraidh, cha bhith ceistean parsaichte aig na planaichean, cha bhith dad idir ann.

Agus nuair a bhios cruinneachadh de sheòrsa air choreigin agad, agus gun cuir thu mac-samhail ùr an sin, an uairsin fhad ‘s a thòisicheas e, tha a h-uile dad dona ann, i.e. bidh e ag àrdachadh an tasgadan aige.

Fhuair mi am beachd. B’ e an dòigh-obrach cheart àireamh bheag sa cheud de cheistean a ruith air a’ mhac-samhail an toiseach, a chuireadh blàths air an tasgadan. Gu ìre mhòr, tha suidheachadh againn gum feum sinn a bhith air dheireadh air a’ mhaighstir gun a bhith nas fhaide na 10 diogan. Agus chan eil an suidheachadh seo air a ghabhail a-steach ann an aon tonn, ach gu rèidh airson cuid de luchd-dèiligidh.

Tha, àrdaich cuideam.

Is e deagh bheachd a tha seo. Ach an toiseach feumaidh sinn an dùnadh seo a chuir an gnìomh. An toiseach feumaidh sinn tionndadh dheth, agus an uairsin smaoinichidh sinn air mar a thionndaidheas sinn. Tha seo na fheart math airson a chomasachadh gu rèidh.

Tha an roghainn seo aig Nginx slowly start ann am braisd airson an t-seirbheisiche. Agus mean air mhean bidh e a 'meudachadh an luchd.

Tha, deagh bheachd, feuchaidh sinn e nuair a gheibh sinn timcheall air.

Source: www.habr.com

Cuir beachd ann