Apache Ignite Zero Deployment: saʻo Zero?

Apache Ignite Zero Deployment: saʻo Zero?

O matou o se matagaluega tau atina'e tekinolosi feso'ota'iga. O le taimi lava na faʻatulagaina ai e le pulega le galuega o le faʻavavevaveina o le volumetric calculations e ala i le faʻaogaina o Apache Ignite faʻatasi ma MSSQL, faʻaalia se nofoaga ma ata matagofie ma faʻataʻitaʻiga Java code. Fiafia i luga ole saite Zero Deployment, o lana faʻamatalaga e folafola mai ai vavega: e te le tau faʻapipiʻi lima lau Java poʻo Scala code i node taʻitasi i le faʻasologa ma toe faʻapipiʻi i taimi uma e suia ai. I le gasologa o galuega, na faʻaalia ai o le Zero Deployment o loʻo i ai faʻamatalaga patino o le faʻaogaina, o foliga ia ou te manaʻo e faʻasoa. I lalo o le tipi o loʻo i ai mafaufauga ma faʻamatalaga faʻatinoga.

1. Fa'amatalaga o le fa'afitauli

O le aano o le faafitauli e faapea. O lo'o i ai le fa'atauga o fa'atauga fa'atauga ma le fa'atonuga o oloa Sku (Vaega Tausia o Fa'atauga). O le tulaga o le faʻatau atu o loʻo i ai se uiga "Toea ituaiga" faʻatasi ai ma tau "laʻititi" ma le "tele". O se vaega (se lisi o oloa o le nofoaga o le faʻatau) e fesoʻotaʻi atu i vaega taʻitasi o le faʻatau (faʻatauina mai le DBMS) ma faʻamatalaga e tuʻuina atu mai le aso faʻamaonia le oloa faʻamaonia.
aveese mai le laina pe faaopoopo i le laina.

E manaʻomia le faʻatulagaina o se pusa vaeluaga o faʻatauga ma teu i totonu faʻamatalaga e uiga i oloa fesoʻotaʻi mo le masina muamua. O le fetaui ma le faiga tau e mana'omia ai le Ignite client node e uta ai fa'amaumauga, fa'atatau se fa'aputuga o le fomu (ituaiga Faleoloa, ItemID, aso, numera_of_sales_points) ma toe fa'afo'i i le DBMS.

2. Suesuega o tusitusiga

E leai se poto masani, o lea ua amata ona ou siva mai le ogaumu. O lona uiga, mai se iloiloga o lomiga.

Mataupu 2016 Folasaga i Apache Ignite: Amataina o loʻo i ai se fesoʻotaʻiga i faʻamaumauga o le Apache Ignite poloketi ma i le taimi lava e tasi le faʻasalaga mo le le manino o lenei pepa. Toe faitau faalua, e le oo mai le manino. Fa'asino ile a'oa'oga aloa'ia amatalia, lea
folafola atu ma le mautinoa "O le ae tu i luga ma tamoe i se taimi vave!". Ou te feagai ma tulaga o fesuiaiga o le siosiomaga, ou te matamata i ata e lua Apache Ignite Essentials, mo laʻu galuega patino latou te leʻi aoga tele. Faʻamanuiaina le faʻalauiloaina o le Ignite mai le laina faʻatonu ma le faila le "example-ignite.xml", fausia le talosaga muamua Fa'atatauga Fa'atatau faʻaaogaina maven. O le talosaga e galue ma faʻaaogaina Zero Deployment, oka se matagofie!

Ou te faitau atili, ma o iina o le faʻataʻitaʻiga e faʻaaoga vave ai le affinityKey (na faia muamua e ala i se SQL query), ma e oʻo lava i le BinaryObject lilo faʻaaogaina:

IgniteCache<BinaryObject, BinaryObject> people 
        = ignite.cache("Person").withKeepBinary(); 

faitau sina vaega: fa'avasegaina binary - o se mea e pei o le manatunatu, avanoa i fanua mea i le igoa. E mafai ona faitau le taua o le fanua e aunoa ma le fa'aleaga atoa o le mea (fa'asao manatua). Ae aisea e faʻaaoga ai BinaryObject nai lo le Tagata, aua o loʻo i ai Zero Deployment? Aisea IgniteCache faaliliuina i le IgniteCache ? E le o manino mai.

O lo'o ou toe fa'atulagaina le Compute Application mo la'u mataupu. O le autu autu o le lisi o le faʻatau atu i MSSQL o loʻo faʻamatalaina o le [id] [int] NOT NULL, ou te fatuina se faʻaoga e ala i le faʻatusa.

IgniteCache<Integer, SalesPoint> salesPointCache=ignite.cache("spCache")

I le xml-config ou te faʻamaonia o le cache ua vaeluaina

<bean class="org.apache.ignite.configuration.CacheConfiguration">
    <property name="name" value="spCache"/>
    <property name="cacheMode" value="PARTITIONED"/>
</bean>

O le vaevaega i vaega o fa'atauga e fa'apea o le fa'aputuga mana'omia o le a fausia i luga o node fuifui ta'itasi mo fa'amaumauga o salesPointCache o lo'o maua iina, a mae'a ona faia lea e le tagata o tausia le aofa'iga mulimuli.

Faitau le a'oa'oga Talosaga Fa'amatalaga Fa'amatalaga Muamua, ou te faia i se talafaatusa. I luga o node taʻitasi o le fuifui, ou te tamoe IgniteRunnable (), pei o lenei:

  @Override
  public void run() {
    SalesPoint sp=salesPointCache.get(spId);
    sp.calculateSalesPointCount();
    ..
  }

Ou te faʻaopoopoina le faʻaogaina o le tuʻufaʻatasia ma le faʻapipiʻiina, ou te taʻavale i luga o se seti faʻamaumauga o suʻega. O mea uma e galue i le lotoifale i luga o le atinaʻe server.

Ou te faʻatautaia ni suʻega suʻega CentOs e lua, faʻamaonia tuatusi IP ile default-config.xml, faʻatino i luga o taʻitasi

./bin/ignite.sh config/default-config.xml

E amata uma nodes Ignite ma va'ai le tasi i le isi. Ou te faʻamaonia tuatusi manaʻomia i le xml-config o le talosaga a le kalani, e amata, faʻaopoopo le tolu node i le topology, ma vave ona toe lua nodes. Fai mai le ogalaau "ClassNotFoundException: model.SalesPoint" i le laina

SalesPoint sp=salesPointCache.get(spId);

StackOverflow fai mai o le mafuaʻaga o le mea sese o le leai o se aganuʻu SalesPoint vasega ile CentOs servers. Ua matou taunuu. E fa'afefea "e te le tau fa'aogaina ma le lima lau Java code i node ta'itasi" ma isi? Po'o le "lau Java code" e le o le SalesPoint?

Atonu na ou misia se mea - ua amata ona ou toe su'esu'e, faitau ma toe su'e. Ina ua mavae sina taimi, ua i ai se lagona ua ou faitauina mea uma i luga o le autu, ua leai se mea fou. A o ou suʻesuʻe, na ou maua ai ni faamatalaga mananaia.

Valentin Kulichenko, Fa'ata'ita'i ta'ita'i ile GridGain Systems, tali luga StackOverflow, Aperila 2016:

Model classes are not peer deployed, but you can use withKeepBinary() flag
on the cache and query BinaryObjects. This way you will avoid deserialization
on the server side and will not get ClassNotFoundException.

O le isi manatu faʻapitoa: Denis Magda, Faatonu o le pulega o oloa, GridGain Systems.

Tala i Habré e uiga i microservices o loo taʻua ai ni tala se tolu a Denis Magda: Microservices Vaega I, Microservices Vaega II, Microservices Vaega III 2016-2017. I le tusiga lona lua, ua fautuaina e Denis le amataina o se node fuifui e ala i MaintenanceServiceNodeStartup.jar. E mafai foʻi ona e faʻaogaina le faʻalauiloaina ma le xml configuration ma le laina faʻatonu, ae e manaʻomia le tuʻuina ma le lima o vasega masani i luga o node kulupu faʻapipiʻi taʻitasi:

That's it. Start (..)  node using MaintenanceServiceNodeStartup file or pass
maintenance-service-node-config.xml to Apache Ignite's ignite.sh/bat scripts.
If you prefer the latter then make sure to build a jar file that will contain
all the classes from java/app/common and java/services/maintenance directories.
The jar has to be added to the classpath of every node where the service
might be deployed.

Ioe, o le mea lena. O le mea lea, e foliga mai, aisea, o lenei faʻailoga faʻailoga binary!

3.SleJar

Na muamua Denis i laʻu fua faʻatatau, IMHO le aʻoaʻoga sili ona aoga e maua. I lana MicroServicesExample o le github o loʻo i ai se faʻataʻitaʻiga saunia atoatoa o le faʻatulagaina o nodes fuifui, lea e tuʻufaʻatasia e aunoa ma ni squats faaopoopo.

Ou te faia i le ata ma foliga, ou te mauaina se faila fagu e tasi e faʻalauiloa ai le "node data" poʻo le "node client" e faʻatatau i le finauga laina laina. O lo'o fa'agasolo le fausiaina. Ua faatoilaloina le Zero Deployment.

O le suiga mai le megabytes o faʻamaumauga o suʻega i le sefulu o gigabytes o faʻamaumauga o taua na faʻaalia ai o le binary format e iai mo se mafuaʻaga. Sa tatau ona faʻamalieina le faʻaaogaina o mafaufauga i luga o nodes, ma o le BinaryObject na avea ma aoga tele.

4. Faaiuga

O le faʻasalaga muamua na faʻafeiloaʻi ma le le manino o faʻamaumauga o le Apache Ignite poloketi na faʻaalia e saʻo, e itiiti se suiga talu mai le 2016. E le faigofie mo se tagata amata ona fausia se faʻataʻitaʻiga galue faʻavae i luga o se upega tafaʻilagi ma / poʻo se fale teu oloa.

O se taunuuga o le galuega na faia, o le lagona o le Zero Deployment e galue, ae naʻo le tulaga o le polokalama. O se mea e pei o lenei: BinaryObject e faʻaaogaina e aʻoaʻo ai nodes fuifui mamao e galulue ma vasega masani; Zero Deployment - masini i totonu
Apache Ignite lava ia ma tufatufa mea faʻaoga i totonu o le fuifui.

Ou te faʻamoemoe o le a aoga loʻu poto masani i tagata fou o Apache Ignite.

puna: www.habr.com

Faaopoopo i ai se faamatalaga