Zaɓi Harshe

Inganta Aikin Microservices ta Amfani da Dabarun Inganta Hyperparameter

Takarda bincike da ke ba da shawarar amfani da Binciken Grid da Binciken Bazuwar don inganta tsarin aiki na atomatik na microservices, inda aka samu ingantaccen jinkiri har zuwa 10.56%.
apismarket.org | PDF Size: 0.5 MB
Kima: 4.5/5
Kimarku
Kun riga kun ƙididdige wannan takarda
Murfin Takardar PDF - Inganta Aikin Microservices ta Amfani da Dabarun Inganta Hyperparameter

1. Gabatarwa & Bayyani

Wannan aikin yana magance kalubale mai mahimmanci a cikin ci gaban aikace-aikacen gajimare na zamani: sarƙaƙƙiyar aiki na tsarin gine-ginen microservices. Duk da yake microservices suna ba da fa'idodi a cikin ƙima da sauri, suna gabatar da babban nauyin gudanarwa, musamman a cikin inganta aiki. Takardar ta ba da shawarar sabuwar hanya don sarrafa wannan ingantaccen ta hanyar daidaita dabarun inganta hyperparameter (HPO)—musamman Binciken Grid da Binciken Bazuwar—daga koyon inji zuwa fannin daidaita tsarin microservices. Manufar ita ce ba da damar tsarin inganta kai wanda zai iya daidaita sigogin lokacin aiki da gaske don inganta ma'auni na aiki har zuwa ƙarshe kamar jinkiri.

2. Hanyar Tsakiya & Tsarin Gine-gine

2.1 Amfanin Aiki: Tsarin Harajin da ya San Gurbatar Iska

An kimanta hanyar da aka tsara ta amfani da takamaiman aikace-aikacen da ya dogara da microservices: tsarin lissafin haraji mai sanin gurbatar iska. Aikace-aikacen yana sarrafa bayanan wurin mota na ainihi ta hanyar sarkar microservices guda uku na tsakiya:

  1. Sabis na MapMatcher: Yana daidaita ainihin ma'auni na GPS zuwa hanyoyin sadarwar hanya.
  2. Sabis na PollutionMatcher: Yana danganta wurin mota da bayanan gurbatawa daga ma'ajin bayanai.
  3. Sabis na TollCalculator: Yana lissafin harajin muhalli bisa matakan gurbatawa.

Ana auna aiki ta amfani da Binciken Rarraba don ɗaukar jinkiri har zuwa ƙarshe da kowane sabis.

2.2 Bayanan Baya: Inganta Hyperparameter don Microservices

Takardar ta tsara daidaita aikin microservices a matsayin matsalar bincike a cikin sararin saitin iyaka. Kowane microservice yana da sigogi masu iya daidaitawa (misali, girman tafkin zaren, girman ma'ajin ajiya, iyakokin haɗi). Haɗin waɗannan sigogi a ko'ina cikin duk sabis ɗin yana bayyana sararin bincike mai girma. Manufar ita ce nemo tsarin da zai rage ma'aunin manufa (misali, matsakaicin jinkiri). Aikin ya bambanta hanyoyin da aka zaɓa (Binciken Grid, Binciken Bazuwar) da sauran dabarun HPO kamar Inganta Bayesian [5] da Hanyoyin Meta-heuristic [6], yana jayayya don sauƙi da bayyananniyar na farkon aikin sarrafa kai.

2.3 Tsarin Gine-gine da aka Tsara & Mai Inganta Microservice

Babban ƙirƙira shine Mai Inganta Microservice, sabon ɓangaren software. Tsarin gine-ginensa (wanda aka tsara a cikin Hoto na 2 na PDF) ya ƙunshi:

  • Ma'anar Sararin Bincike: Ma'aikacin yana ayyana iyakaccen saitin ƙima mai yuwuwa ga kowane sigogi mai iya daidaitawa.
  • Aiwartar Bincike: Mai ingantawa yana samar da sabbin haɗin tsari a jere:
    • Binciken Grid: Yana kimanta duk maki a cikin grid ɗin da aka raba na sararin sigogi.
    • Binciken Bazuwar: Yana ɗaukar samfuran tsari ba da gangan ba daga sararin da aka ayyana.
  • Aiwatar da Tsari & Kimantawa: Ana tura sabon tsarin zuwa microservices. Ana lura da aikin tsarin (jinkiri) kuma a rubuta shi.
  • Haɗa Sakamako: Ana adana bayanan aiki daga kowane maimaitawa don gano mafi kyawun tsari.

Ana sauƙaƙe sadarwa tsakanin mai ingantawa, microservices, da allon sa ido ta hanyar dillalin saƙo (NATS) da uwar garken yanar gizo.

3. Aiwarta ta Fasaha & Kimantawa

3.1 Saitin Gwaji & Muhalli

An kafa yanayin kimantawa akan Amazon AWS ta amfani da misali na EC2 t2.medium (2 vCPUs, 4GB RAM). An aiwatar da duk microservices a cikin Java kuma aka tura su azaman kwantena na Docker. An gudanar da sadarwa tsakanin sabis ba tare da jinkiri ba ta hanyar dillalin saƙo na NATS. Wannan saitin yana kwaikwayon ainihin turawa na gajimare mai ƙarancin albarkatu.

3.2 Sakamakon Kimantawa na Farko & Ribobin Aiki

Sakamakon farko ya nuna yuwuwar hanyar. Ta hanyar amfani da dabarun Binciken Grid da Binciken Bazuwar don daidaita tsarin microservices a lokacin aiki, tsarin ya sami rage jinkiri har zuwa ƙarshe har zuwa 10.56% idan aka kwatanta da tsarin tushe mara inganci. Sakamakon, wanda aka gabatar a cikin tsarin ginshiƙi a cikin PDF, yana nuna matsakaicin lokacin aiki don jimlar aikace-aikacen da kowane sabis na musamman (Pollution Matcher, Map Matcher, Toll Calculator) a cikin tsare-tsaren gwaji daban-daban, yana nuna ingantaccen aiki a sarari don takamaiman saitin sigogi.

Ma'auni mai Muhimmanci na Aiki

Matsakaicin Ingantaccen Jinkiri: 10.56%

An cimma shi ta hanyar binciken tsari na atomatik.

4. Bincike & Fassarar Kwararru

4.1 Hasashe na Tsakiya

Babban hasashen takardar yana da ƙarfi kuma a bayyane yake bayan haka: ku ɗauki tsarin microservices kamar matsalar hyperparameter na koyon inji. Ta hanyar cire takamaiman ma'anar ƙididdigar zaren ko iyakokin ƙwaƙwalwa kuma kawai kallon su azaman maɓalli a cikin sarari mai girma, marubutan sun buɗe jerin ingantattun algorithms na bincike. Wannan motsi ne na tunani na gefe, mai kama da yadda masu bincike suka yi amfani da Cibiyoyin Sadarwa na Generative (GANs) don fassarar hoto zuwa hoto mara haɗin gwiwa a cikin takardar CycleGAN, suna sake amfani da tsarin adawa don sabon yanki. Ƙimar a nan ba ta cikin ƙirƙirar sabon algorithm na bincike ba, amma a cikin tsarin na matsalar.

4.2 Gudun Hankali

Hankali yana da inganci amma yana bayyana yanayin samfurin sa na ilimi. Yana bin tsaftataccen bututun layi: 1) Ayyana sararin bincike (shigarwar ma'aikaci), 2) Turawa mai ingantawa (Binciken Grid/Bazuwar), 3) Maimaita, aiwatar, auna, 4) Zaɓi mafi kyawun tsari. Duk da haka, wannan gudun yana ɗaukan aikin aiki mai tsayi da yanayin dakin gwaji mai sarrafawa. Mahimmin haɗin da ya ɓace shine jinkirin amsawa da lokacin haɗuwa. A cikin ainihin tsarin samarwa, tsarin aiki yana canzawa akai-akai. Nawa "mummunan" tsare-tsare dole ne a gwada (kuma yana iya lalata ƙwarewar mai amfani) kafin a sami mai kyau? Kimantawar takardar, duk da cewa tana da kyau, ba ta isa gwada wannan madauki a ƙarƙashin yanayi mai ƙarfi ba.

4.3 Ƙarfafawa & Kurakurai

Ƙarfafawa:

  • Kyawawan Ra'ayi: Taswirar daga HPO zuwa daidaita tsari yana da haske a cikin sauƙinsa.
  • Sauƙin Aiwarta: Binciken Grid da Bazuwar suna da sauƙin fahimta, gyara kurakurai, da bayyanawa ga ƙungiyoyin aiki, suna guje wa tokar "akwatin baƙi" na Inganta Bayesian.
  • Tushe da aka Tabbatar: Yana gina akan shekarun da suka gabata na binciken HPO daga ML, kamar yadda aka rubuta a cikin albarkatu kamar littafin Koyon Injin Atomatik (Feurer et al.) ko ɗakin karatu na scikit-optimize.
  • Sakamako na Ainihi: Ingantaccen 10.56% ba ƙaramin abu bane, musamman ga aikace-aikacen masu kula da jinkiri.

Kurakurai & Gibin Mai Muhimmanci:

  • Tsakiya na Ƙarfi: Binciken Grid sanannen rashin inganci ne a cikin sarari mai girma ("la'anar girma"). Wannan hanyar ba ta da kyau fiye da ɗan ƙaramin sigogi da aka daidaita kowane sabis.
  • Rashin Sanin Farashi: Binciken yana ingantawa kawai don jinkiri. Ba ya la'akari da farashin albarkatu (CPU, ƙwaƙwalwa, $) na tsari. Tsarin da ke da sauri 5% amma yana amfani da CPU 50% mafi yawa na iya zama mara inganci a tattalin arziki.
  • Babu Koyon Canja wuri: Kowane turawa na aikace-aikacen da alama yana fara bincikensa daga farko. Babu wata hanya don amfani da ilimi daga inganta irin wannan microservices a cikin wasu aikace-aikace, hanyar da aka bincika a cikin meta-learning don HPO.
  • Hanyoyin Tsaro Babu: Takardar ba ta tattauna shinge don hana turawa na mummunan tsari mara kyau wanda zai iya rushe sabis ko haifar da gazawar cascading.

4.4 Hasashe masu Aiki

Ga shugabannin injiniya, wannan binciken shaida ne mai gamsarwa amma ba shirin da ya shirya don samarwa ba. Ga yadda za a yi aiki da shi:

  1. Fara da Binciken Bazuwar, ba Binciken Grid ba. Kamar yadda takardar Bergstra da Bengio ta 2012 "Binciken Bazuwar don Inganta Hyper-Parameter" ta nuna a sananniyar hanyar, Binciken Bazuwar sau da yawa yana da inganci fiye da Binciken Grid don kasafin kuɗi ɗaya na lissafi. Aiwarta wannan da farko.
  2. Gina Aikin Manufa mai Sanin Farashi. Kar a rage jinkiri kawai. Rage aikin nauyi kamar $\text{Manufa} = \alpha \cdot \text{Jinkiri} + \beta \cdot \text{Farashin Albarkatu}$. Wannan yana daidaita aikin fasaha tare da ma'auni na kasuwanci.
  3. Aiwatar da Tsarin "Binciken Canary". Kafin aiwatar da sabon tsari ga duk misalai, turawa shi zuwa misali guda na canary kuma gwada aikin sa da A/B a kan tushe a ƙarƙashin zirga-zirgar rai. Wannan yana rage haɗari.
  4. Saka hannun jari a cikin Ma'ajin Ilimin Tsari. Yi rajistar kowane tsarin da aka gwada da sakamakonsa. Wannan yana haifar da bayanan bayanai don masu ingantawa masu ƙware a nan gaba (misali, samfurin Bayesian) waɗanda za su iya koyo daga tarihi da fara bincike mai dumi.
  5. Mayar da hankali kan Sigogi masu Girma da Farko. Aiwatar da wannan hanyar zuwa sigogi 2-3 kowane sabis da aka sani suna da babban tasiri akan aiki (misali, girman tafkin haɗin ma'ajin bayanai, saitunan JVM heap). Guje wa tafasa tekun.

5. Cikakkun Bayanan Fasaha & Tsarin Lissafi

Za a iya ayyana matsalar ingantawa bisa ƙa'ida. Bari aikace-aikacen microservices ya ƙunshi sabis $n$. Ga kowane sabis $i$, akwai saitin sigogi $m_i$ masu iya daidaitawa. Bari $\theta_i^{(j)}$ ya wakilci sigogi na $j$ na sabis $i$, wanda zai iya ɗaukar ƙima daga saiti mai iyaka $V_i^{(j)}$ (don nau'i) ko tazara mai iyaka $[a_i^{(j)}, b_i^{(j)}]$ (don lambobi).

Sararin haɗin tsari $\Theta$ shine samfurin Cartesian na duk saitin ƙimar sigogi:

$\Theta = V_1^{(1)} \times ... \times V_1^{(m_1)} \times ... \times V_n^{(1)} \times ... \times V_n^{(m_n)}$

Bari $L(\theta)$ ya zama jinkirin ƙarshe da aka lura na aikace-aikacen lokacin da aka tura tsarin $\theta \in \Theta$. Manufar ita ce nemo:

$\theta^* = \arg\min_{\theta \in \Theta} L(\theta)$

Binciken Grid yana aiki ta hanyar rarraba tazara mai ci gaba zuwa saitin ƙima, ƙirƙirar cikakken grid akan $\Theta$, da kimanta $L(\theta)$ ga kowane maki na grid.

Binciken Bazuwar yana ɗaukar samfuran tsari $N$ $\{\theta_1, \theta_2, ..., \theta_N\}$ ba da gangan ba daga $\Theta$ (ko daga saitin ƙima da aka ayyana) kuma yana kimanta $L(\theta)$ ga kowane samfuri, yana zaɓar mafi kyau.

6. Tsarin Bincike & Misalin Lamari

Misali: Inganta Sabis na Microservice na Biyan Kuɗi

Yi la'akari da "Sabis na Biyan Kuɗi" a cikin aikace-aikacen ciniki na e-commerce. Ma'aikaci ya gano sigogi guda uku masu mahimmanci masu iya daidaitawa tare da zargin tasiri akan jinkiri a ƙarƙashin kaya:

  1. Girman Tafkin Haɗin Ma'ajin Bayanai (dbc_conns): Lamba tsakanin 5 da 50.
  2. Zaren Ma'aikacin Uwar Garken HTTP (http_threads): Lamba tsakanin 10 da 100.
  3. Girman Ma'ajin Ajiya a cikin Ƙwaƙwalwa (cache_mb): Lamba tsakanin 128 da 1024 (MB).

Ma'anar Sararin Bincike:
Ma'aikacin ya ayyana sararin bincike don Mai Inganta Microservice:
Sabis na Biyan Kuɗi: { dbc_conns: [5, 10, 20, 30, 40, 50], http_threads: [10, 25, 50, 75, 100], cache_mb: [128, 256, 512, 1024] }

Aiwartar Ingantawa:
- Binciken Grid: Zai gwada duk haɗin guda 6 * 5 * 4 = 120 masu yuwuwa.
- Binciken Bazuwar: Zai iya ɗaukar samfuran haɗin guda 30 ba da gangan ba daga wannan sarari (misali, (dbc_conns=20, http_threads=75, cache_mb=256), (dbc_conns=40, http_threads=25, cache_mb=512), da sauransu).

Sakamako: Mai ingantawa na iya gano cewa tsarin {dbc_conns: 30, http_threads: 50, cache_mb: 512} yana haifar da jinkiri na kashi 12% mafi ƙanƙanta na 95th ga Sabis na Biyan Kuɗi idan aka kwatanta da tsohon {dbc_conns: 10, http_threads: 25, cache_mb: 128}, ba tare da wani gagarumin haɓakar ƙwaƙwalwa ba. Ana adana wannan tsarin a matsayin mafi kyau don tsarin aiki da aka lura.

7. Ayyukan Gaba & Hanyoyin Bincike

Hanyar daga wannan aikin na tushe tana nuna zuwa wasu hanyoyin gaba masu jan hankali:

  • Ingantawa Mai Yawan Manufa & Ƙuntatawa: Ƙara binciken don daidaita jinkiri, kwarara, farashi ($), da aminci (kuskuren kuskure) lokaci guda, mai yiwuwa ta amfani da hanyoyin Pareto-frontier.
  • Haɗin Inganta Bayesian: Maye gurbin Binciken Grid/Bazuwar tare da ƙarin ingantaccen samfuri na Inganta Bayesian (BO) ta amfani da Tsarin Gaussian. BO na iya ƙirƙira yanayin aiki kuma da hankali zaɓi mafi kyawun tsare-tsare don gwadawa na gaba.
  • Meta-Learning don Farawa mai Dumi: Haɗa tsarin da, bayan an ba da sabon microservice, zai iya ba da shawarar tsarin farawa da sararin bincike bisa ga ƙirar da aka koya daga dubunnan sabis ɗin da aka inganta a baya (misali, "sabis ɗin da ke amfani da PostgreSQL tare da yawan rubutu suna da kyau tare da tafkunan haɗi tsakanin 20-40").
  • Koyon Ƙarfafawa (RL) don Daidaitawa mai Ƙarfi: Matsawa bayan ingantawa ɗaya zuwa ci gaba da daidaitawa. Wakilin RL zai iya koyon manufa don daidaita tsare-tsare a ainihin lokaci bisa ga canje-canjen tsarin zirga-zirga, kama da yadda sabis ɗin Vizier na Google ke aiki amma an keɓance shi don dandamalin microservices kamar Kubernetes.
  • Haɗin kai tare da Meshes na Sabis: Saka mai ingantawa a cikin mesh na sabis (misali, Istio, Linkerd). Mesh ɗin ya riga ya sarrafa zirga-zirga kuma yana lura da ma'auni, yana mai da shi dandamalin da ya dace don aiwatar da turawa canje-canjen tsari lafiya ta hanyar sakin canary ko fitarwa a hankali.

8. Nassoshi

  1. Newman, S. (2015). Gina Microservices. O'Reilly Media. (An ambata don fa'idodin microservices).
  2. Dinh-Tuan, H., et al. (2022). Tsarin Harajin da ya San Gurbatar Iska. [Nassoshi ga takamaiman aikace-aikacen amfanin aiki].
  3. Aikin OpenTelemetry. (2021). Ƙa'idar Binciken Rarraba. https://opentelemetry.io
  4. Zhu, L., et al. (2017). Inganta Microservices a cikin Gajimare: Bincike. IEEE Transactions akan Lissafin Gajimare.
  5. Snoek, J., Larochelle, H., & Adams, R. P. (2012). Inganta Bayesian na Aiki na Algorithms na Koyon Injin. Ci gaba a cikin Tsarin Bayanai na NeurIPS.
  6. Barrera, J., et al. (2020). Hanyar Meta-heuristic don Daidaita Tsarin Tsarin Gajimare. IEEE Transactions akan Lissafin Sabis.
  7. Bergstra, J., & Bengio, Y. (2012). Binciken Bazuwar don Inganta Hyper-Parameter. Jaridar Binciken Koyon Injin.
  8. Feurer, M., & Hutter, F. (2019). Inganta Hyperparameter. A cikin Koyon Injin Atomatik (shafi na 3-33). Springer.
  9. Zhu, J., Park, T., Isola, P., & Efros, A. A. (2017). Fassarar Hotuna zuwa Hotuna mara Haɗin gwiwa ta amfani da Cibiyoyin Sadarwa na Cycle-Consistent. Taron Ƙasa da Ƙasa na IEEE akan Kwamfuta (ICCV). (Nassoshi na CycleGAN don kwatancen tunani na gefe).
  10. Golovin, D., et al. (2017). Google Vizier: Sabis don Inganta Akwatin Baƙi. Proceedings na 23rd ACM SIGKDD International Conference akan Gano Ilimi da Ma'ajin Bayanai.