Ignite Service Grid - Avereno indray

Tamin'ny 26 Febroary, nanao fihaonana Apache Ignite GreenSource izahay, izay niresahan'ireo mpandray anjara tamin'ny tetikasa open source. Apache Ignite. Hetsika lehibe teo amin’ny fiainan’ity vondrom-piarahamonina ity ny fanavaozana ny singa Ignite Service Grid, izay ahafahanao mametraka microservices manokana mivantana ao anaty cluster Ignite. Niresaka momba ity dingana sarotra ity izy nandritra ny fihaonana Vyacheslav Daradur, injeniera rindrambaiko ary mpandray anjara Apache Ignite nandritra ny roa taona mahery.

Ignite Service Grid - Avereno indray

Andeha isika hanomboka amin'ny atao hoe Apache Ignite amin'ny ankapobeny. Ity dia angon-drakitra izay fitahirizana Key/Value zaraina miaraka amin'ny fanohanana ny SQL, transactionality ary caching. Ankoatr'izay, ny Ignite dia ahafahanao mametraka serivisy mahazatra mivantana ao anaty cluster Ignite. Ny mpamorona dia afaka miditra amin'ny fitaovana rehetra omen'i Ignite - rafitra angon-drakitra zaraina, Messaging, Streaming, Compute ary Data Grid. Ohatra, rehefa mampiasa Data Grid, ny olana amin'ny fitantanana fotodrafitrasa mitokana ho an'ny fitahirizana angon-drakitra ary, vokatr'izany, dia tsy hita intsony ny vidin'ny overhead.

Ignite Service Grid - Avereno indray

Amin'ny fampiasana ny Service Grid API, azonao atao ny mametraka serivisy amin'ny alàlan'ny famaritana fotsiny ny drafitra fametrahana ary, araka izany, ny serivisy mihitsy ao amin'ny konfigurasi.

Amin'ny ankapobeny, ny rafitra fametrahana dia famantarana ny isan'ny tranga tokony hapetraka amin'ny node cluster. Misy drafi-pametrahana mahazatra roa. Ny voalohany dia Cluster Singleton: amin'ny fotoana rehetra, ny ohatra iray amin'ny serivisy mpampiasa dia azo antoka fa ho hita ao amin'ny cluster. Ny faharoa dia Node Singleton: ohatra iray amin'ny serivisy no apetraka amin'ny node cluster tsirairay.

Ignite Service Grid - Avereno indray

Azon'ny mpampiasa atao ihany koa ny mamaritra ny isan'ny trangan'asa ao amin'ny cluster manontolo ary mamaritra ny tondro ho an'ny sivana nodes mety. Amin'ity toe-javatra ity, ny Service Grid dia hanao kajy ny fizarana tsara indrindra amin'ny fametrahana serivisy.

Ankoatra izany, misy ny endri-javatra toy ny Affinity Service. Ny Affinity dia fiasa izay mamaritra ny fifandraisan'ny lakile amin'ny fizarazarana sy ny fifandraisan'ny antoko amin'ny nodes ao amin'ny topolojia. Amin'ny fampiasana ny fanalahidy, azonao atao ny mamaritra ny node voalohany izay itehirizana ny angona. Amin'izany fomba izany dia azonao atao ny mampifandray ny serivisinao manokana amin'ny cache fonction key sy affinity. Raha miova ny fiasan'ny affinity, dia hisy ny famerenana mandeha ho azy. Amin'izany fomba izany, ny serivisy dia ho hita eo akaikin'ny angon-drakitra ilainy hosodoko, ary, araka izany, dia mampihena ny vidin'ny fidirana amin'ny fampahalalana. Ity rafitra ity dia azo antsoina hoe karazana computing collocated.

Ankehitriny rehefa fantatsika ny hatsaran'ny Service Grid, andao hiresaka momba ny tantaran'ny fivoarany.

Inona no nitranga teo aloha

Ny fampiharana ny Service Grid teo aloha dia nifototra tamin'ny cache system replicated transactional an'ny Ignite. Ny teny hoe "cache" ao amin'ny Ignite dia manondro fitahirizana. Izany hoe, tsy zavatra mihelina izany, araka ny mety ho eritreretinao. Na dia eo aza ny zava-misy fa ny cache dia averina ary ny node tsirairay dia misy ny angon-drakitra manontolo, ao anatin'ny cache dia misy fanehoana fisarahana. Izany dia noho ny fanatsarana ny fitahirizana.

Ignite Service Grid - Avereno indray

Inona no nitranga rehefa te-hametraka ny serivisy ny mpampiasa?

  • Ny node rehetra ao amin'ny cluster dia nisoratra anarana hanavao ny angona ao amin'ny fitahirizana amin'ny alàlan'ny mekanika Continuous Query naorina.
  • Ny node fanombohana, teo ambanin'ny fifampiraharahana vita vakiana, dia nanao firaketana an-tsoratra tao amin'ny angon-drakitra izay misy ny fanamafisam-peo, anisan'izany ny ohatra serialized.
  • Rehefa nampahafantarina momba ny fidirana vaovao, ny mpandrindra dia nanao kajy ny fizarana mifototra amin'ny config. Naverina naverina tamin'ny angon-drakitra ny zavatra vokatr'izany.
  • Raha anisan'ny fizarana ny node iray dia tsy maintsy nametraka izany ny mpandrindra.

Inona no tsy nety taminay

Tamin'ny fotoana iray dia tonga tamin'ny fehin-kevitra izahay: tsy izany no fomba fiasa amin'ny serivisy. Nisy antony maromaro.

Raha nisy hadisoana nitranga nandritra ny fametrahana, dia tsy hita afa-tsy avy amin'ny diarin'ny node nisy ny zava-drehetra. Tsy nisy afa-tsy ny fametrahana asynchronous, ka rehefa avy namerina ny fanaraha-maso ny mpampiasa avy amin'ny fomba fametrahana, dia nila fotoana fanampiny hanombohana ny serivisy - ary nandritra izany fotoana izany dia tsy afaka nifehy na inona na inona ny mpampiasa. Mba hampivelatra bebe kokoa ny Service Grid, mamorona endri-javatra vaovao, misarika mpampiasa vaovao ary manamora ny fiainan'ny tsirairay, mila miova ny zavatra.

Rehefa mamolavola ny Serivisy Grid, voalohany indrindra, te-hanome antoka ny fametrahana synchronous izahay: raha vantany vao naverin'ny mpampiasa ny fifehezana avy amin'ny API, dia afaka mampiasa ny serivisy avy hatrany izy. Te-hanome ny mpanatontosa ny fahaiza-mitantana ny fahadisoana amin'ny fametrahana ihany koa aho.

Fanampin'izay, te hanatsotra ny fampiharana aho, dia ny miala amin'ny fifampiraharahana sy ny fampifandanjana. Na dia eo aza ny hoe averina ny cache ary tsy misy fifandanjana, dia nisy olana nandritra ny fametrahana lehibe misy nodes maro. Rehefa miova ny topologie dia mila mifanakalo vaovao ny nodes, ary amin'ny fametrahana lehibe dia mety milanja be ity data ity.

Rehefa tsy milamina ny topologie dia nila nanao kajy indray ny fitsinjarana ny serivisy ny mpandrindra. Ary amin'ny ankapobeny, rehefa tsy maintsy miara-miasa amin'ny fifampiraharahana amin'ny topologie tsy miovaova ianao, dia mety hitarika amin'ny fahadisoana sarotra vinavinaina izany.

olana

Inona no atao hoe fiovana maneran-tany nefa tsy misy olana? Ny voalohany amin'ireo dia ny fanovana ny topolojia. Mila takatrao fa amin'ny fotoana rehetra, na amin'ny fotoana fametrahana serivisy aza, dia afaka miditra na miala ao amin'ny cluster ny node. Ankoatr'izay, raha toa ka miditra amin'ny cluster ny node amin'ny fotoana fametrahana, dia ilaina ny mamindra tsy tapaka ny fampahalalana rehetra momba ny serivisy amin'ny node vaovao. Ary tsy izay efa napetraka ihany no resahina, fa koa ny fametrahana ankehitriny sy ho avy.

Ity dia iray amin'ireo olana azo angonina ao anaty lisitra mitokana:

  • Ahoana ny fametrahana serivisy voaendrika statika amin'ny fanombohana node?
  • Mamela node avy amin'ny cluster - inona no hatao raha nampiantrano serivisy ny node?
  • Inona no hatao raha niova ny mpandrindra?
  • Inona no tokony hatao raha mifandray indray amin'ny cluster ny mpanjifa?
  • Mila karakaraina ve ny fangatahana activation/deactivation ary ahoana?
  • Ahoana raha miantso famongorana ny cache izy ireo, ary manana serivisy fifandraisana mifamatotra amin'izany isika?

Ary tsy izay ihany.

fanapahan-kevitra

Amin'ny maha-kendrena azy dia nisafidy ny fomba fiasa Event Driven izahay miaraka amin'ny fampiharana ny fifandraisana amin'ny dingana amin'ny alàlan'ny hafatra. Ignite dia efa mampihatra singa roa ahafahan'ny nodes mampita hafatra amin'izy ireo - communication-spi sy discovery-spi.

Ignite Service Grid - Avereno indray

Communication-spi dia mamela ny nodes mifandray mivantana sy mampita hafatra. Mety tsara amin'ny fandefasana angon-drakitra betsaka. Discovery-spi dia ahafahanao mandefa hafatra amin'ny nodes rehetra ao amin'ny cluster. Ao amin'ny fampiharana mahazatra, izany dia atao amin'ny fampiasana topologie peratra. Misy ihany koa ny fampidirana amin'ny Zookeeper, amin'ity tranga ity dia ampiasaina ny topolojia kintana. Hevitra manan-danja iray hafa tokony homarihina dia ny Discovery-spi dia manome antoka fa ny hafatra dia azo antoka fa halefa amin'ny filaharana marina amin'ny nodes rehetra.

Andeha hojerentsika ny protocole deployment. Ny fangatahan'ny mpampiasa rehetra momba ny fametrahana sy ny fanalana azy dia alefa amin'ny alalan'ny discovery-spi. Izany dia manome ireto manaraka ireto miantoka:

  • Ny fangatahana dia horaisin'ny nodes rehetra ao amin'ny cluster. Izany dia hamela ny fangatahana hanohy ny fikarakarana rehefa miova ny mpandrindra. Midika ihany koa izany fa ao anatin'ny hafatra iray, ny node tsirairay dia hanana ny metadata ilaina rehetra, toy ny fandrindrana ny serivisy sy ny ohatra voarindra.
  • Ny fibaikoana henjana amin'ny fandefasana hafatra dia manampy amin'ny famahana ny fifandirana sy ny fangatahana mifanandrina.
  • Koa satria ny fidiran'ny node ao amin'ny topolojia dia voahodina amin'ny alàlan'ny discovery-spi ihany koa, ny node vaovao dia hahazo ny angon-drakitra rehetra ilaina amin'ny fiasana amin'ny serivisy.

Rehefa voaray ny fangatahana, ny nodes ao amin'ny cluster dia manamarina izany ary mamorona asa fanodinana. Ireo asa ireo dia milahatra ary avy eo nokarakarain'ny mpiasa iray hafa amin'ny kofehy hafa. Izany dia ampiharina amin'ny fomba toy izany satria ny fametrahana dia mety maka fotoana be ary manemotra ny fikorianan'ny fikarohana lafo.

Ny fangatahana rehetra avy amin'ny filaharana dia karakarain'ny mpitantana ny fametrahana. Manana mpiasa manokana izy izay misintona asa avy amin'ity filaharana ity ary manomboka izany mba hanombohana ny fametrahana. Aorian'izany dia miseho ireto hetsika manaraka ireto:

  1. Ny node tsirairay dia manao kajy tsy miankina ny fizarana noho ny asa fanendrena vaovao.
  2. Mamorona hafatra miaraka amin'ny valin'ny fametrahana ny Nodes ary mandefa izany any amin'ny mpandrindra.
  3. Ny mpandrindra dia manangona ny hafatra rehetra ary miteraka ny vokatry ny fizotran'ny fametrahana manontolo, izay alefa amin'ny alalan'ny discovery-spi amin'ny node rehetra ao amin'ny cluster.
  4. Rehefa voaray ny valiny dia tapitra ny fizotran'ny fametrahana, ary avy eo dia nesorina tao amin'ny filaharana ny asa.

Ignite Service Grid - Avereno indray
Famolavolana vaovao entin'ny hetsika: org.apache.ignite.internal.processors.service.IgniteServiceProcessor.java

Raha misy hadisoana mitranga mandritra ny fametrahana, ny node dia mampiditra avy hatrany io fahadisoana io amin'ny hafatra alefany any amin'ny mpandrindra. Aorian'ny fanangonana hafatra, ny mpandrindra dia hanana fampahalalana momba ny lesoka rehetra mandritra ny fametrahana ary handefa ity hafatra ity amin'ny alàlan'ny discovery-spi. Ny fampahalalana diso dia ho hita amin'ny node rehetra ao amin'ny cluster.

Ny hetsika manan-danja rehetra ao amin'ny Service Grid dia karakaraina amin'ny alàlan'ity algorithm miasa ity. Ohatra, ny fanovana ny topolojia dia hafatra amin'ny alàlan'ny discovery-spi. Ary amin'ny ankapobeny, raha ampitahaina amin'ny teo aloha, ny protocol dia nanjary maivana sy azo itokisana. Ampy hiatrehana toe-javatra rehetra mandritra ny fametrahana.

Inona no hitranga manaraka

Ankehitriny momba ny drafitra. Ny fiovana lehibe rehetra amin'ny tetikasa Ignite dia vita ho toy ny hetsika fanatsarana Ignite, antsoina hoe IEP. Ny fanavaozana ny Service Grid dia manana IEP - IEP #17 miaraka amin'ny lohateny maneso hoe "Fiovana solika ao amin'ny serivisy serivisy". Saingy raha ny marina, tsy nosoloinay ny menaka maotera, fa ny motera manontolo.

Nozarainay ho dingana 2 ny asa ao amin'ny IEP. Ny voalohany dia dingana lehibe, izay ahitana ny famerenana ny protocole deployment. Efa tafiditra ao amin'ny tompony izany, azonao atao ny manandrana ny Service Grid vaovao, izay hiseho amin'ny version 2.8. Ny dingana faharoa dia ahitana asa maro hafa:

  • Hot redeploy
  • Service versioning
  • Nitombo ny fandeferana diso
  • Thin client
  • Fitaovana fanaraha-maso sy fanisana metrika isan-karazany

Farany, afaka manoro hevitra anao momba ny Service Grid izahay amin'ny fananganana rafitra mahazaka lesoka sy avo lenta. Manasa anao koa izahay hitsidika anay amin'ny dev-list и lisitry ny mpampiasa zarao ny traikefanao. Tena zava-dehibe ho an'ny vondrom-piarahamonina ny traikefanao; izany dia hanampy anao hahatakatra ny toerana hifindrana manaraka, ny fomba hampivelarana ny singa amin'ny ho avy.

Source: www.habr.com

Add a comment