{"id":38981,"date":"2019-10-31T22:27:10","date_gmt":"2019-10-31T19:27:10","guid":{"rendered":"https:\/\/prohoster.info\/blog\/servisy-siroty-obratnaya-storona-mikro-servisnoj-arhitektury\/"},"modified":"2019-10-31T22:27:10","modified_gmt":"2019-10-31T19:27:10","slug":"servisy-siroty-obratnaya-storona-mikro-servisnoj-arhitektury","status":"publish","type":"post","link":"https:\/\/prohoster.info\/sq\/blog\/administrirovanie\/servisy-siroty-obratnaya-storona-mikro-servisnoj-arhitektury","title":{"rendered":"Sh\u00ebrbimet jetim\u00eb: ana tjet\u00ebr e arkitektur\u00ebs (mikro)sh\u00ebrbimore","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Drejtori i operacioneve t\u00eb portalit Banki.ru, Andrei Nikolskyi, fol n\u00eb konferenc\u00ebn e vitit t\u00eb kaluar. <noindex><a rel=\"nofollow\" href=\"http:\/\/devopsdays.ru\/?utm_source=habr&amp;utm_medium=social&amp;utm_campaign=dod-2019&amp;utm_content=post3\">DevOpsDays Moscow<\/a><\/noindex> p\u00ebr sh\u00ebrbimet jetimore: si t\u00eb identifikoni nj\u00eb jetimore n\u00eb infrastruktur\u00eb, \u00e7far\u00eb \u00ebsht\u00eb keq p\u00ebr sh\u00ebrbimet jetimore, \u00e7far\u00eb t\u00eb b\u00ebni me to, dhe si t\u00eb veproni n\u00ebse asgj\u00eb tjet\u00ebr nuk ndihmon.<\/p>\n<p>Posht\u00eb \u00ebsht\u00eb versioni tekstual i raportit. <\/p>\n<p><center><div class=\"youtube-placeholder\" data-id=\"j9I4oeEXBO8\" onclick=\"loadVideo(this)\">\r\n        <img decoding=\"async\" src=\"https:\/\/img.youtube.com\/vi\/j9I4oeEXBO8\/hqdefault.jpg\" alt=\"Luaj videon\" loading=\"lazy\" width=\"480\" height=\"360\" style=\"width:100%;height:auto;\">\r\n        <div class=\"play-button\"><\/div>\r\n    <\/div><\/center><noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><br \/>\nP\u00ebrsh\u00ebndetje, koleg\u00eb! Emri im \u00ebsht\u00eb Andrei, drejtoj operacionet n\u00eb kompanin\u00eb Banki.ru.<\/p>\n<p>Kemi sh\u00ebrbime t\u00eb m\u00ebdha, q\u00eb jan\u00eb sh\u00ebrbime monolite, kemi sh\u00ebrbime n\u00eb nj\u00eb kuptim m\u00eb klasik, gjithashtu dhe shum\u00eb t\u00eb vogla. N\u00eb terminologjin\u00eb time punuese, them se n\u00ebse sh\u00ebrbimi \u00ebsht\u00eb i thjesht\u00eb dhe i vog\u00ebl, at\u00ebher\u00eb ai \u00ebsht\u00eb mikro, dhe n\u00ebse ai nuk \u00ebsht\u00eb shum\u00eb i thjesht\u00eb dhe nuk \u00ebsht\u00eb i vog\u00ebl, at\u00ebher\u00eb ai \u00ebsht\u00eb thjesht nj\u00eb sh\u00ebrbim. <\/p>\n<h3><b>Avantazhet e sh\u00ebrbimeve<\/b><\/h3>\n<p>\nDo t\u00eb kaloj\u00eb shpejt p\u00ebr avantazhet e sh\u00ebrbimeve. <\/p>\n<p><img decoding=\"async\" alt=\"Sh\u00ebrbimet jetim\u00eb: ana tjet\u00ebr e arkitektur\u00ebs (mikro)sh\u00ebrbimore\" src=\"\/wp-content\/uploads\/2019\/10\/4c34a3af9125c5869eb7c1650bc3855a.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nE para \u2014 shkall\u00ebzimi. Mund t\u00eb b\u00ebni shpejt dicka n\u00eb sh\u00ebrbim dhe t\u00eb filloni n\u00eb prodhim. Ju erdhi trafiku, ju e klonuat sh\u00ebrbimin. Ju erdhi edhe nj\u00eb trafik, ju e klonuat p\u00ebrs\u00ebri dhe me k\u00ebt\u00eb jetoni. Ky \u00ebsht\u00eb nj\u00eb bonus i mir\u00eb, dhe, n\u00eb parim, kur filluam, ai konsiderohej nga ne si m\u00eb i r\u00ebnd\u00ebsishmi, pse e b\u00ebjm\u00eb k\u00ebt\u00eb gjith\u00eb.<\/p>\n<p><img decoding=\"async\" alt=\"Sh\u00ebrbimet jetim\u00eb: ana tjet\u00ebr e arkitektur\u00ebs (mikro)sh\u00ebrbimore\" src=\"\/wp-content\/uploads\/2019\/10\/c536f380ece14e0c873f765b587fb3c3.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nE dyta, zhvillimi i izoluar, kur keni disa ekipe zhvillimi, disa zhvillues t\u00eb ndrysh\u00ebm n\u00eb \u00e7do ekip, dhe \u00e7do ekip punon n\u00eb sh\u00ebrbimin e vet.<\/p>\n<p>Me ekipet ndodhin nuanca. \u00c7do zhvillues \u00ebsht\u00eb i ndrysh\u00ebm. Dhe ekzistojn\u00eb, p\u00ebr shembull, <noindex><a rel=\"nofollow\" href=\"https:\/\/www.youtube.com\/watch?v=VPDJXngp2bM\">njer\u00ebz-mushk\u00eb<\/a><\/noindex>. E pash\u00eb p\u00ebr her\u00eb t\u00eb par\u00eb k\u00ebt\u00eb nga Maksim Dorofeev. Ndonj\u00ebher\u00eb njer\u00ebz-mushk\u00eb ka n\u00eb disa ekipe, dhe n\u00eb disa nuk ka. Kjo i b\u00ebn sh\u00ebrbimet e ndryshme q\u00eb p\u00ebrdoren n\u00eb kompanin\u00eb m\u00eb pak t\u00eb barabarta. <\/p>\n<p><img decoding=\"async\" alt=\"Sh\u00ebrbimet jetim\u00eb: ana tjet\u00ebr e arkitektur\u00ebs (mikro)sh\u00ebrbimore\" src=\"\/wp-content\/uploads\/2019\/10\/f1e18ab059bd2b975d4c6ff1b6434626.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nShikoni imazhin: ky \u00ebsht\u00eb nj\u00eb zhvillues i shk\u00eblqyer, ai ka duar t\u00eb m\u00ebdha, mund t\u00eb b\u00ebj\u00eb shum\u00eb. Problemi kryesor \u00ebsht\u00eb nga vijn\u00eb k\u00ebto duar. <\/p>\n<p><img decoding=\"async\" alt=\"Sh\u00ebrbimet jetim\u00eb: ana tjet\u00ebr e arkitektur\u00ebs (mikro)sh\u00ebrbimore\" src=\"\/wp-content\/uploads\/2019\/10\/88fdc7266e97be8732f252908329a8f2.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nSh\u00ebrbimet ofrojn\u00eb mund\u00ebsin\u00eb p\u00ebr t\u00eb p\u00ebrdorur gjuh\u00eb t\u00eb ndryshme programuese, m\u00eb t\u00eb p\u00ebrshtatshme p\u00ebr detyra t\u00eb ndryshme. Nj\u00eb sh\u00ebrbim n\u00eb Go, ndonj\u00eb n\u00eb Erlang, ndonj\u00eb n\u00eb Ruby, di\u00e7ka n\u00eb PHP, di\u00e7ka n\u00eb Python. N\u00eb p\u00ebrgjith\u00ebsi, mund t\u00eb shtriheni shum\u00eb gjer\u00eb. K\u00ebtu ka disa nuanca.<\/p>\n<p><img decoding=\"async\" alt=\"Sh\u00ebrbimet jetim\u00eb: ana tjet\u00ebr e arkitektur\u00ebs (mikro)sh\u00ebrbimore\" src=\"\/wp-content\/uploads\/2019\/10\/98a4b1037066d67e4f16bab934cebac6.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nArkitektura e orientuar ndaj sh\u00ebrbimeve \u2014 kjo \u00ebsht\u00eb para s\u00eb gjithash p\u00ebr devops. Pra, n\u00ebse nuk keni automatizim, nuk keni procesin e vendosjes, n\u00ebse e konfiguroni manualisht, konfigurimet tuaja mund t\u00eb ndryshojn\u00eb nga instanca e sh\u00ebrbimit n\u00eb instanc\u00ebn tjet\u00ebr, dhe ju duhet t\u00eb shkoni atje t\u00eb b\u00ebni di\u00e7ka, at\u00ebher\u00eb jeni n\u00eb ferr. <\/p>\n<p>P\u00ebr shembull, n\u00ebse keni 20 sh\u00ebrbime dhe duhet t'i publikoni manualisht, do t\u00eb keni 20 konsola dhe do t\u00eb shtypni \"enter\" nj\u00ebkoh\u00ebsisht, si ninja. Kjo nuk \u00ebsht\u00eb shum\u00eb mir\u00eb. <\/p>\n<p>N\u00ebse keni nj\u00eb sh\u00ebrbim pas testimit (n\u00ebse ka testim, natyrisht), dhe duhet ta p\u00ebrmir\u00ebsoni pak q\u00eb t\u00eb funksionoj\u00eb n\u00eb prodhim, kam edhe p\u00ebr ju lajme t\u00eb k\u00ebqija. <\/p>\n<p>N\u00ebse mb\u00ebshteteni n\u00eb sh\u00ebrbime specifike t\u00eb Amazonit dhe punoni n\u00eb Rusi, at\u00ebher\u00eb dy muaj m\u00eb par\u00eb keni th\u00ebn\u00eb po ashtu: \"Gjith\u00e7ka po digjet, un\u00eb jam mir\u00eb, gjith\u00e7ka \u00ebsht\u00eb n\u00eb rregull.\"<\/p>\n<p><img decoding=\"async\" alt=\"Sh\u00ebrbimet jetim\u00eb: ana tjet\u00ebr e arkitektur\u00ebs (mikro)sh\u00ebrbimore\" src=\"\/wp-content\/uploads\/2019\/10\/474f5f1c3f0ced131df5ee8f30f0aa15.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nNe p\u00ebrdorim Ansible p\u00ebr automatizimin e deploy-it, Puppet p\u00ebr konvergjenc\u00eb, Bamboo p\u00ebr automatizimin e publikimit dhe Confluence p\u00ebr ta dokumentuar gjith\u00e7ka n\u00eb nj\u00ebfar\u00eb m\u00ebnyre.<\/p>\n<p>Nuk do t\u00eb ndalem shum\u00eb n\u00eb k\u00ebt\u00eb tem\u00eb, sepse raporti \u00ebsht\u00eb m\u00eb shum\u00eb p\u00ebr praktikat e bashk\u00ebpunimit se sa p\u00ebr zbatimin teknik. <\/p>\n<p><img decoding=\"async\" alt=\"Sh\u00ebrbimet jetim\u00eb: ana tjet\u00ebr e arkitektur\u00ebs (mikro)sh\u00ebrbimore\" src=\"\/wp-content\/uploads\/2019\/10\/ab837bed67ee319d72da705bc632e3f3.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nNa ka ndodhur, p\u00ebr shembull, problemi q\u00eb Puppet n\u00eb server punon me Ruby 2, nd\u00ebrsa nj\u00eb aplikacion \u00ebsht\u00eb shkruar p\u00ebr Ruby 1.8, dhe ata nuk punojn\u00eb s\u00eb bashku. Kjo ndodh p\u00ebr shkak t\u00eb ndonj\u00eb defekti. Dhe kur ju nevojitet t\u00eb mbani disa versione t\u00eb Ruby n\u00eb nj\u00eb makin\u00eb, zakonisht fillojn\u00eb problemet. <\/p>\n<p>P\u00ebr shembull, ne i japim \u00e7do zhvilluesi nj\u00eb platform\u00eb n\u00eb t\u00eb cil\u00ebn ka gjith\u00e7ka q\u00eb ne kemi, t\u00eb gjitha sh\u00ebrbimet q\u00eb mund t\u00eb zhvillohen, p\u00ebr t\u00eb pasur nj\u00eb ambient t\u00eb izoluar ku ai mund ta prish\u00eb dhe ta nd\u00ebrtoj\u00eb sipas d\u00ebshir\u00ebs. <\/p>\n<p>Ndonj\u00ebher\u00eb, nevojitet ndonj\u00eb paket\u00eb e kompiluar ve\u00e7mas me mb\u00ebshtetje p\u00ebr ndonj\u00eb funksionalitet aty. Kjo \u00ebsht\u00eb mjaft serioze. Ndiqa nj\u00eb raport ku imazhi i docker-it pesha 45 GB. N\u00eb Linux, sigurisht, \u00ebsht\u00eb m\u00eb e leht\u00eb, aty \u00ebsht\u00eb m\u00eb e vog\u00ebl, por prap\u00ebseprap\u00eb, nuk do t\u00eb ket\u00eb hap\u00ebsir\u00eb t\u00eb mjaftueshme. <\/p>\n<p>Po, ndodhin ndonj\u00ebher\u00eb var\u00ebsi kontradiktore, kur nj\u00eb pjes\u00eb e projektit varet nga nj\u00eb version i nj\u00eb biblioteke, nd\u00ebrsa nj\u00eb pjes\u00eb tjet\u00ebr nga nj\u00eb version tjet\u00ebr, dhe bibliotekat nuk instalohen s\u00eb bashku n\u00eb asnj\u00eb m\u00ebnyr\u00eb. <\/p>\n<p><img decoding=\"async\" alt=\"Sh\u00ebrbimet jetim\u00eb: ana tjet\u00ebr e arkitektur\u00ebs (mikro)sh\u00ebrbimore\" src=\"\/wp-content\/uploads\/2019\/10\/acc4c38c547cd6d0580cf3524532393a.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nNe kemi faqe dhe sh\u00ebrbime n\u00eb PHP 5.6, p\u00ebr t\u00eb cilat ndjehemi t\u00eb turp\u00ebruar, por \u00e7far\u00eb t\u00eb b\u00ebjm\u00eb? Kjo \u00ebsht\u00eb nj\u00eb platform\u00eb p\u00ebr ne. Ka faqe dhe sh\u00ebrbime n\u00eb PHP 7, ato jan\u00eb m\u00eb t\u00eb shumta dhe p\u00ebr to nuk ndjehemi t\u00eb turp\u00ebruar. \u00c7do zhvillues ka baz\u00ebn e tij ku g\u00ebzohet duke punuar. <\/p>\n<p>N\u00ebse punoni n\u00eb nj\u00eb kompani me nj\u00eb gjuh\u00eb, at\u00ebher\u00eb tri maqin\u00eb virtuale p\u00ebr \u00e7do zhvillues \u00ebsht\u00eb nj\u00eb gj\u00eb normale. N\u00ebse keni gjuh\u00eb programimi t\u00eb ndryshme, situata b\u00ebhet m\u00eb e komplikuar.<\/p>\n<p><img decoding=\"async\" alt=\"Sh\u00ebrbimet jetim\u00eb: ana tjet\u00ebr e arkitektur\u00ebs (mikro)sh\u00ebrbimore\" src=\"\/wp-content\/uploads\/2019\/10\/9f5da38456024679ba6a41768466cb82.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nJu njohni se juaj faqet dhe sh\u00ebrbimet e lidhura krijojn\u00eb nj\u00eb hap\u00ebsir\u00eb p\u00ebr mb\u00ebshtetje, dhe gjithmon\u00eb ka di\u00e7ka q\u00eb mund t\u00eb prish\u00ebt nga ato.<\/p>\n<p><img decoding=\"async\" alt=\"Sh\u00ebrbimet jetim\u00eb: ana tjet\u00ebr e arkitektur\u00ebs (mikro)sh\u00ebrbimore\" src=\"\/wp-content\/uploads\/2019\/10\/20bde06e0aaceea028fabea09540d2a2.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nPrandaj ne z\u00ebvend\u00ebsuam karakteristikat e gjuh\u00ebs s\u00eb programimit me p\u00ebrdorimin e framework-eve t\u00eb ndryshme, pasi framework-et p\u00ebr PHP jan\u00eb mjaft t\u00eb ndryshme dhe ofrojn\u00eb mund\u00ebsi t\u00eb ndryshme, komunitet t\u00eb ndrysh\u00ebm, dhe mb\u00ebshtetje t\u00eb ndryshme. K\u00ebshtu mund t\u00eb shkruani nj\u00eb sh\u00ebrbim n\u00eb m\u00ebnyr\u00eb q\u00eb t\u00eb keni tashm\u00eb di\u00e7ka t\u00eb gatshme p\u00ebr t\u00eb. <\/p>\n<h3><b>\u00c7do sh\u00ebrbim ka ekipin e vet<\/b><\/h3>\n<p>\n<img decoding=\"async\" alt=\"Sh\u00ebrbimet jetim\u00eb: ana tjet\u00ebr e arkitektur\u00ebs (mikro)sh\u00ebrbimore\" src=\"\/wp-content\/uploads\/2019\/10\/ff32f7449c831e6dcb2bd9c41fb9c8e7.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nAvantazhi yn\u00eb kryesor, i cili \u00ebsht\u00eb formuar gjat\u00eb disa viteve, \u00ebsht\u00eb se \u00e7do sh\u00ebrbim ka ekipin e vet. Kjo \u00ebsht\u00eb e dobishme p\u00ebr nj\u00eb projekt t\u00eb madh, sepse mund t\u00eb kurseni koh\u00eb n\u00eb dokumentacion, menaxher\u00ebt e njohin mir\u00eb projektin e tyre. <\/p>\n<p>Detyrat e mb\u00ebshtetjes mund t\u00eb shp\u00ebrndahen leht\u00ebsisht. P\u00ebr shembull, n\u00ebse nj\u00eb sh\u00ebrbim sigurie prishet. Menj\u00ebher\u00eb ekipi q\u00eb merret me sigurimin fillon ta riparoj\u00eb. <\/p>\n<p>Funksionet e reja krijohen shpejt, sepse kur keni nj\u00eb sh\u00ebrbim atomar, mund t\u00eb rishikoni di\u00e7ka me shpejt\u00ebsi. <\/p>\n<p>Dhe kur prishet sh\u00ebrbimi juaj, q\u00eb \u00ebsht\u00eb e pashmangshme, nuk ndikon n\u00eb sh\u00ebrbimet e tjera, dhe zhvilluesit nga ekipet e tjera nuk vijn\u00eb te ju me shkopinj dhe nuk thon\u00eb: \u201cO jo, mos e b\u00ebj k\u00ebshtu\u201d. <\/p>\n<p><img decoding=\"async\" alt=\"Sh\u00ebrbimet jetim\u00eb: ana tjet\u00ebr e arkitektur\u00ebs (mikro)sh\u00ebrbimore\" src=\"\/wp-content\/uploads\/2019\/10\/30d99fa39654701437cdf90929d6a45e.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nSi gjithmon\u00eb, ka nuanca. Ne kemi ekipe t\u00eb stabilizuara, menaxher\u00ebt jan\u00eb t\u00eb angazhuar ngusht\u00eb me ekipet. Ka dokumente t\u00eb qarta, menaxher\u00ebt e ndjekin ngusht\u00ebsisht t\u00eb gjitha ato. \u00c7do ekip me menaxherin ka disa sh\u00ebrbime, dhe ka nj\u00eb pik\u00eb t\u00eb caktuar kompetence. <\/p>\n<p>N\u00ebse ekipet jan\u00eb t\u00eb l\u00ebvizshme (ndodhin edhe k\u00ebto ndonj\u00ebher\u00eb), ka nj\u00eb metod\u00eb t\u00eb mir\u00eb e quajtur \"hart\u00eb yjesh\".<\/p>\n<p><img decoding=\"async\" alt=\"Sh\u00ebrbimet jetim\u00eb: ana tjet\u00ebr e arkitektur\u00ebs (mikro)sh\u00ebrbimore\" src=\"\/wp-content\/uploads\/2019\/10\/cd18530d30973628f9351757a800dc37.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nJu keni nj\u00eb list\u00eb sh\u00ebrbimesh dhe njer\u00ebzish. Ylli do t\u00eb thot\u00eb q\u00eb nj\u00eb person \u00ebsht\u00eb ekspert n\u00eb k\u00ebt\u00eb sh\u00ebrbim, libri do t\u00eb thot\u00eb q\u00eb nj\u00eb person po studion k\u00ebt\u00eb sh\u00ebrbim. Detyra e personit \u2013 \u00ebsht\u00eb t\u00eb ndryshoj\u00eb librin p\u00ebr nj\u00eb yll. Dhe n\u00ebse ndaj sh\u00ebrbimit nuk \u00ebsht\u00eb shkruar asgj\u00eb, at\u00ebher\u00eb fillojn\u00eb problemet, mbi t\u00eb cilat do t\u00eb flas m\u00eb tej. <\/p>\n<h3><b>Si shfaqen sh\u00ebrbimet jetim\u00eb?<\/b><\/h3>\n<p>\n<img decoding=\"async\" alt=\"Sh\u00ebrbimet jetim\u00eb: ana tjet\u00ebr e arkitektur\u00ebs (mikro)sh\u00ebrbimore\" src=\"\/wp-content\/uploads\/2019\/10\/8ae33d6e940700a5941409b7cedf3e9a.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nProblemi i par\u00eb, m\u00ebnyra e par\u00eb p\u00ebr t\u00eb krijuar nj\u00eb sh\u00ebrbim jetim n\u00eb infrastruktur\u00eb \u00ebsht\u00eb shkarkimi i punonj\u00ebsve. A ndodhi ndonj\u00ebher\u00eb q\u00eb afatet t\u00eb vijn\u00eb nga biznesi p\u00ebrpara se t\u00eb vler\u00ebsoheshin detyrat? Ndonj\u00ebher\u00eb ndodh q\u00eb afatet jan\u00eb t\u00eb ngurta dhe nuk ka koh\u00eb p\u00ebr dokumentacion. \"Duhet t\u00eb dor\u00ebzojm\u00eb sh\u00ebrbimin n\u00eb prodhim, pastaj do ta shkruajm\u00eb m\u00eb shum\u00eb.\" <\/p>\n<p>N\u00ebse ekipi \u00ebsht\u00eb i vog\u00ebl, ndodh q\u00eb n\u00eb t\u00eb ket\u00eb nj\u00eb zhvillues q\u00eb shkruan gjith\u00e7ka, nd\u00ebrsa t\u00eb tjer\u00ebt jan\u00eb n\u00eb mb\u00ebshtetje. \"Un\u00eb kam shkruar arkitektur\u00ebn kryesore, q\u00eb ti t\u00eb b\u00ebsh nd\u00ebrfaqet.\" Pastaj, n\u00eb ndonj\u00eb moment, menaxheri, p\u00ebr shembull, largohet. Dhe n\u00eb k\u00ebt\u00eb periudh\u00eb, kur menaxheri \u00ebsht\u00eb larguar dhe nuk \u00ebsht\u00eb caktuar ende nj\u00eb i ri, zhvilluesit vet\u00eb vendosin se ku po shkon sh\u00ebrbimi, \u00e7far\u00eb po ndodh atje. Si\u00e7 e dim\u00eb (t\u00eb kthehemi disa faqe mbrapa), n\u00eb disa ekipe ka njer\u00ebz q\u00eb jan\u00eb t\u00eb ve\u00e7ant\u00eb, ndonj\u00ebher\u00eb ndonj\u00eb udh\u00ebheq\u00ebs i ekipit si \"njeri i ve\u00e7ant\u00eb\". Pastaj ai largohet, dhe ne p\u00ebrfundojm\u00eb me nj\u00eb sh\u00ebrbim jetim. <\/p>\n<p><img decoding=\"async\" alt=\"Sh\u00ebrbimet jetim\u00eb: ana tjet\u00ebr e arkitektur\u00ebs (mikro)sh\u00ebrbimore\" src=\"\/wp-content\/uploads\/2019\/10\/44741c897bfd9dc04e0a977c1cf08df3.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nMegjithat\u00eb, detyrat nga mb\u00ebshtetja dhe biznesi nuk zhduken, ato grumbullohen n\u00eb bllokun e prapmbarimit. N\u00ebse gjat\u00eb zhvillimit t\u00eb sh\u00ebrbimit kishte ndonj\u00eb gabim arkitekturor, ato gjithashtu grumbullohen n\u00eb bllokun e prapmbarimit. Sh\u00ebrbimi po degredon ngadal\u00eb. <\/p>\n<h3><b>Si ta identifikoni nj\u00eb jetim?<\/b> <\/h3>\n<p>\nKy list\u00eb e p\u00ebrshkruan mir\u00eb situat\u00ebn. Kushprekuar di\u00e7ka t\u00eb njohur n\u00eb infrastruktur\u00ebn e tij?<\/p>\n<p><img decoding=\"async\" alt=\"Sh\u00ebrbimet jetim\u00eb: ana tjet\u00ebr e arkitektur\u00ebs (mikro)sh\u00ebrbimore\" src=\"\/wp-content\/uploads\/2019\/10\/b852d070bb6864f48e3a6ae9921a12b1.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nP\u00ebr workaround-et e dokumentuara: ka nj\u00eb sh\u00ebrbim dhe, n\u00eb t\u00ebr\u00ebsi, ai funksionon, ka nj\u00eb manual dy faqesh se si t\u00eb punoni me t\u00eb, por si funksionon brenda, askush nuk e di. <\/p>\n<p>Ose, p\u00ebr shembull, ka ndonj\u00eb redh\u00eb linkesh. N\u00eb rastin ton\u00eb, tani po p\u00ebrdorim tre redha linkesh p\u00ebr q\u00ebllime t\u00eb ndryshme n\u00eb sh\u00ebrbime t\u00eb ndryshme. K\u00ebto jan\u00eb pasojat e k\u00ebsaj. <\/p>\n<p><img decoding=\"async\" alt=\"Sh\u00ebrbimet jetim\u00eb: ana tjet\u00ebr e arkitektur\u00ebs (mikro)sh\u00ebrbimore\" src=\"\/wp-content\/uploads\/2019\/10\/350a041f21fcd75d9a948d2b9b77cda8.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nTani do t\u00eb jem kapiteni i duksh\u00ebm. \u00c7far\u00eb duhet t\u00eb nd\u00ebrmerret? S\u00eb pari, sh\u00ebrbimi duhet t'i kaloj\u00eb nj\u00eb menaxheri tjet\u00ebr, nj\u00eb ekipi tjet\u00ebr. N\u00ebse lideri juaj i ekipit nuk ka dh\u00ebn\u00eb dor\u00ebheqje akoma, at\u00ebher\u00eb n\u00eb k\u00ebt\u00eb ekip tjet\u00ebr, kur e kuptoni se sh\u00ebrbimi i ngjan nj\u00eb jetimi, duhet t\u00eb p\u00ebrfshihet ndonj\u00eb q\u00eb t\u00eb pakt\u00ebn di di\u00e7ka p\u00ebr t\u00eb. <\/p>\n<p>Gj\u00ebja kryesore: duhet t\u00eb keni procedura t\u00eb shkruara me gjak p\u00ebr kalimin. N\u00eb rastin ton\u00eb, zakonisht p\u00ebrkujdesem p\u00ebr k\u00ebt\u00eb, sepse duhet q\u00eb gjith\u00e7ka t\u00eb funksionoj\u00eb. Menaxher\u00ebve iu nevojitet q\u00eb kjo t\u00eb dor\u00ebzohet shpejt, dhe se \u00e7far\u00eb do t\u00eb ndodh\u00eb m\u00eb pas, nuk \u00ebsht\u00eb m\u00eb aq e r\u00ebnd\u00ebsishme p\u00ebr ta. <\/p>\n<p><img decoding=\"async\" alt=\"Sh\u00ebrbimet jetim\u00eb: ana tjet\u00ebr e arkitektur\u00ebs (mikro)sh\u00ebrbimore\" src=\"\/wp-content\/uploads\/2019\/10\/87b9d86c2c795f5d71db1489cab200a2.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nNj\u00eb m\u00ebnyr\u00eb tjet\u00ebr p\u00ebr t\u00eb krijuar nj\u00eb sh\u00ebrbim t\u00eb pamatur \u00ebsht\u00eb, \"Do ta b\u00ebjm\u00eb n\u00eb outsourc\u00eb, do t\u00eb jet\u00eb m\u00eb shpejt, dhe m\u00eb pas do t'ia kalojm\u00eb ekipit\". \u00cbsht\u00eb e qart\u00eb q\u00eb t\u00eb gjith\u00eb kan\u00eb ndonj\u00eb plan n\u00eb ekip, nj\u00eb radh\u00eb. Shpesh klienti biznesor mendon se outsourcing-u do t\u00eb b\u00ebj\u00eb pun\u00ebn si departamenti teknik q\u00eb ka kompania. Megjithat\u00eb, motivet e tyre jan\u00eb t\u00eb ndryshme. N\u00eb outsourcing ka zgjidhje teknologjike dhe algoritmike t\u00eb \u00e7uditshme.<\/p>\n<p><img decoding=\"async\" alt=\"Sh\u00ebrbimet jetim\u00eb: ana tjet\u00ebr e arkitektur\u00ebs (mikro)sh\u00ebrbimore\" src=\"\/wp-content\/uploads\/2019\/10\/b4208ccb134cbc694ea4993ec2751ec5.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nNe, p\u00ebr shembull, kishim nj\u00eb sh\u00ebrbim ku kishte Sphinx n\u00eb vende t\u00eb papritura. Do flas m\u00eb von\u00eb p\u00ebr at\u00eb q\u00eb na u detyrua t\u00eb b\u00ebjm\u00eb. <\/p>\n<p>Oferuesit e outsourcing-ut shpesh kan\u00eb framework t\u00eb shkruar vet\u00eb. \u00cbsht\u00eb thjesht PHP i past\u00ebr me kopjen e kodit nga projekti i kaluar, ku mund t\u00eb gjesh \u00e7do lloj. Ka nj\u00eb num\u00ebr t\u00eb madh \"patchesh\" n\u00eb skriptet e d\u00ebrgimit, kur ju nevojitet t\u00eb ndryshoni disa rreshta n\u00eb ndonj\u00eb skedar me skripta t\u00eb komplikuara Bash, nd\u00ebrkoh\u00eb q\u00eb k\u00ebto skripta d\u00ebrgimi thirren nga ndonj\u00eb skript tjet\u00ebr. N\u00eb fund, ndryshoni sistemin e d\u00ebrgimit, zgjidhni di\u00e7ka tjet\u00ebr, dhe papritmas sh\u00ebrbimi juaj nuk funksionon. Sepse duhej vendosur ende 8 lidhje midis dosjeve t\u00eb ndryshme. Ose ndodh q\u00eb nj\u00eb mij\u00eb regjistrime funksionojn\u00eb, por nj\u00ebqind mij\u00eb nuk funksionojn\u00eb. <\/p>\n<p>Do t\u00eb vazhdoj t\u00eb udh\u00ebheq. Pranimi i sh\u00ebrbimit nga outsourcing \u00ebsht\u00eb nj\u00eb procedur\u00eb e detyrueshme. A ka pasur ndokush q\u00eb sh\u00ebrbimi nga outsourcing arrin dhe nuk pranohet? Nuk \u00ebsht\u00eb kaq e njohur si sh\u00ebrbimi i pamatur, por megjithat\u00eb. <\/p>\n<p><img decoding=\"async\" alt=\"Sh\u00ebrbimet jetim\u00eb: ana tjet\u00ebr e arkitektur\u00ebs (mikro)sh\u00ebrbimore\" src=\"\/wp-content\/uploads\/2019\/10\/92ef67a1bb714cdfb820efe432d0303b.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nSh\u00ebrbimi duhet t\u00eb kontrollohet, sh\u00ebrbimi duhet t\u00eb rishikohet, duhet t\u00eb ndryshohen fjal\u00ebkalimet. Kishim nj\u00eb rast kur na ofruan nj\u00eb sh\u00ebrbim, ku admin paneli kishte \u2018if login == \u2018admin\u2019 &amp;&amp; password == \u2018admin\u2019\u2026\u2019 shkruar direkt n\u00eb kod. Po mendojm\u00eb, dhe kjo \u00ebsht\u00eb shkruar nga njer\u00ebz n\u00eb vitin 2018?<\/p>\n<p>Testimi i kapacitetit t\u00eb ruajtjes \u00ebsht\u00eb gjithashtu di\u00e7ka e nevojshme. Duhet t\u00eb shikoni se \u00e7far\u00eb do t\u00eb ndodh\u00eb me nj\u00ebqind mij\u00eb regjistrime, para se ta l\u00ebshoni k\u00ebt\u00eb sh\u00ebrbim diku n\u00eb prodhim. <\/p>\n<p><img decoding=\"async\" alt=\"Sh\u00ebrbimet jetim\u00eb: ana tjet\u00ebr e arkitektur\u00ebs (mikro)sh\u00ebrbimore\" src=\"\/wp-content\/uploads\/2019\/10\/3fabdc20049892cee7636c30e595881d.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nT\u00eb d\u00ebrgosh sh\u00ebrbimin p\u00ebr rregullim nuk duhet t\u00eb jet\u00eb di\u00e7ka p\u00ebr t'u turp\u00ebruar. Kur thoni: \"Ne nuk do ta pranojm\u00eb k\u00ebt\u00eb sh\u00ebrbim, kemi 20 detyrime, b\u00ebni ato, pastaj do ta pranojm\u00eb\", \u00ebsht\u00eb normale. Konsensusi nuk duhet t\u00eb ndiej\u00eb faj q\u00eb do t\u00eb vendos\u00eb menaxherin n\u00eb siklet, apo q\u00eb biznesi do t\u00eb harxhoj\u00eb para. N\u00eb fakt, biznesi do t\u00eb harxhoj\u00eb m\u00eb shum\u00eb m\u00eb von\u00eb.<\/p>\n<p>Kemi pasur nj\u00eb rast kur vendos\u00ebm t\u00eb b\u00ebjm\u00eb nj\u00eb projekt pilot n\u00eb outsourcing.<\/p>\n<p><img decoding=\"async\" alt=\"Sh\u00ebrbimet jetim\u00eb: ana tjet\u00ebr e arkitektur\u00ebs (mikro)sh\u00ebrbimore\" src=\"\/wp-content\/uploads\/2019\/10\/a5b25638e51c4eabe9d6a6971f08fa6b.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nAi u dor\u00ebzua n\u00eb koh\u00eb, dhe kjo ishte kriteri i vet\u00ebm i cil\u00ebsis\u00eb. Prandaj b\u00ebn\u00eb nj\u00eb tjet\u00ebr projekt pilot, tashm\u00eb jo krejt\u00ebsisht pilot. K\u00ebto sh\u00ebrbime u miratuan, u tha n\u00eb m\u00ebnyr\u00eb administrative, ja kodo juaj, ja ekipi juaj, ja menaxheri juaj. Sh\u00ebrbimet me t\u00eb v\u00ebrtet\u00eb filluan t\u00eb sjellin fitim. Megjithat\u00eb, n\u00eb fakt ato mbet\u00ebn s\u00ebrish jetima, askush nuk e kupton se si funksionojn\u00eb, dhe menaxher\u00ebt me \u00e7do m\u00ebnyr\u00eb distancohen nga detyrat e tyre. <\/p>\n<p><img decoding=\"async\" alt=\"Sh\u00ebrbimet jetim\u00eb: ana tjet\u00ebr e arkitektur\u00ebs (mikro)sh\u00ebrbimore\" src=\"\/wp-content\/uploads\/2019\/10\/29ac8ab670df5d2c92dc7940d0a74e24.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nKa nj\u00eb koncept tjet\u00ebr t\u00eb shk\u00eblqyer - zhvillimi partizanik. Kur nj\u00eb departament, zakonisht ai i marketingut, d\u00ebshiron t\u00eb verifikoj\u00eb nj\u00eb hipotez\u00eb dhe porosit nj\u00eb sh\u00ebrbim krejt\u00ebsisht n\u00eb outsorcing. Ai fillon t\u00eb t\u00ebrheq\u00eb trafik, ata p\u00ebrfundojn\u00eb dokumentet, n\u00ebnshkruajn\u00eb aktet me kontraktuesin, shkojn\u00eb n\u00eb funksionim dhe thon\u00eb: \"Djem, kemi nj\u00eb sh\u00ebrbim k\u00ebtu, ka trafik, na sjell para, le t\u00eb pranojm\u00eb at\u00eb\". Ne themi: \"Oh, si ka mund\u00ebsi k\u00ebshtu?\".<\/p>\n<p><img decoding=\"async\" alt=\"Sh\u00ebrbimet jetim\u00eb: ana tjet\u00ebr e arkitektur\u00ebs (mikro)sh\u00ebrbimore\" src=\"\/wp-content\/uploads\/2019\/10\/1fa0187e5db9bed7af0c97ac8500567f.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nDhe nj\u00eb tjet\u00ebr m\u00ebnyr\u00eb p\u00ebr t\u00eb marr\u00eb nj\u00eb sh\u00ebrbim jetim: kur nj\u00eb ekip papritmas ngarkohet, drejtoria thot\u00eb: \"Le t\u00eb kalojm\u00eb sh\u00ebrbimin e k\u00ebtij ekipi tek nj\u00eb ekip tjet\u00ebr, q\u00eb ka nj\u00eb ngarkes\u00eb m\u00eb t\u00eb vog\u00ebl\". Pastaj e kalojm\u00eb tek ekipi i tret\u00eb, dhe menaxherin e ndryshojm\u00eb. Dhe p\u00ebrfundimisht, kemi p\u00ebrs\u00ebri nj\u00eb jetim.<\/p>\n<h3><b>Cila \u00ebsht\u00eb problemi me jetim\u00ebt?<\/b><\/h3>\n<p>\n<img decoding=\"async\" alt=\"Sh\u00ebrbimet jetim\u00eb: ana tjet\u00ebr e arkitektur\u00ebs (mikro)sh\u00ebrbimore\" src=\"\/wp-content\/uploads\/2019\/10\/009170e7989a78e8bd9f5b7b364e358c.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nKush nuk e di, kjo \u00ebsht\u00eb anija linjare Wasa, e cila u nd\u00ebrtua n\u00eb Suedi, e famshme p\u00ebr faktin se u mbyt 5 minuta pas lan\u00ebs. Dhe mbreti i Suedis\u00eb, p\u00ebr siguri, nuk ekzekutoi ask\u00ebnd p\u00ebr k\u00ebt\u00eb. Ajo u nd\u00ebrtua nga dy breza inxhinier\u00ebsh q\u00eb nuk dinin t\u00eb nd\u00ebrtonin anije t\u00eb till\u00eb. Nj\u00eb efekt i natyrsh\u00ebm.<\/p>\n<p>Anija mund t\u00eb ishte mbytur, p\u00ebr shembull, shum\u00eb m\u00eb keq, n\u00ebse do t\u00eb kishte pasur mbretin duke udh\u00ebtuar diku n\u00eb nj\u00eb stuhi. Por k\u00ebshtu, u mbyt menj\u00ebher\u00eb, sipas metod\u00ebs Agile kjo \u00ebsht\u00eb mir\u00eb - d\u00ebshtimi i hersh\u00ebm. <\/p>\n<p>N\u00ebse kemi d\u00ebshtuar her\u00ebt, zakonisht nuk ka probleme. P\u00ebr shembull, gjat\u00eb pranimitt, e d\u00ebrgojm\u00eb p\u00ebr p\u00ebrmir\u00ebsim. Por n\u00ebse d\u00ebshtojm\u00eb tashm\u00eb n\u00eb prodhim, kur jan\u00eb investuar para, mund t\u00eb ken\u00eb probleme. Pasojat, si\u00e7 i quajn\u00eb ata n\u00eb biznes.<\/p>\n<p>Cilat jan\u00eb rreziqet e sh\u00ebrbimeve jetim\u00eb:<\/p>\n<ul>\n<li>Sh\u00ebrbimi mund t\u00eb d\u00ebshtoj\u00eb papritur. <\/li>\n<li>Sh\u00ebrbimi b\u00ebhet i prishur p\u00ebr nj\u00eb koh\u00eb t\u00eb gjat\u00eb ose nuk riparohet fare. <\/li>\n<li>Probleme me sigurin\u00eb. <\/li>\n<li>Probleme me p\u00ebrmir\u00ebsimet dhe p\u00ebrdit\u00ebsimet. <\/li>\n<li>N\u00ebse d\u00ebshtojn\u00eb nj\u00eb sh\u00ebrbim t\u00eb r\u00ebnd\u00ebsish\u00ebm, vuan reputacioni i kompanis\u00eb. <\/li>\n<\/ul>\n<p><\/p>\n<h3><b>\u00c7far\u00eb t\u00eb b\u00ebjm\u00eb me sh\u00ebrbimet jetim\u00eb?<\/b><\/h3>\n<p>\n<img decoding=\"async\" alt=\"Sh\u00ebrbimet jetim\u00eb: ana tjet\u00ebr e arkitektur\u00ebs (mikro)sh\u00ebrbimore\" src=\"\/wp-content\/uploads\/2019\/10\/094444a042ccf12bf4c9e166c3fffe47.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nDua her\u00eb po e p\u00ebrs\u00ebris se \u00e7far\u00eb duhet b\u00ebr\u00eb. S\u00eb pari, duhet t\u00eb ket\u00eb dokumentacion. 7 vjet n\u00eb Banki.ru m\u00eb m\u00ebsuan se testuesit nuk duhet t\u00eb besojn\u00eb verb\u00ebrisht zhvilluesve, dhe operimi nuk duhet t\u00eb besoj\u00eb askujt verb\u00ebrisht. Duhet t\u00eb kontrollohet. <\/p>\n<p><img decoding=\"async\" alt=\"Sh\u00ebrbimet jetim\u00eb: ana tjet\u00ebr e arkitektur\u00ebs (mikro)sh\u00ebrbimore\" src=\"\/wp-content\/uploads\/2019\/10\/23d652f96e93eb52d9172b103121fe54.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nS\u00eb dyti, duhet t\u00eb shkruhen skemat e bashk\u00ebpunimit, sepse ndonj\u00ebher\u00eb ndodhin situata ku sh\u00ebrbimet, t\u00eb cilat nuk pranohen shum\u00eb mir\u00eb, kan\u00eb var\u00ebsi p\u00ebr t\u00eb cilat askush nuk ka folur. P\u00ebr shembull, zhvilluesit mund t\u00eb ken\u00eb vendosur nj\u00eb sh\u00ebrbim n\u00eb \u00e7el\u00ebsin e tyre p\u00ebr ndonj\u00eb nga sh\u00ebrbimet e Hartave t\u00eb Yandex ose Dadata. N\u00ebse p\u00ebrfundoni limitin e lir\u00eb, gjith\u00e7ka do t\u00eb d\u00ebshtoj\u00eb, dhe ju nuk do t\u00eb dini se \u00e7far\u00eb ndodhi. T\u00eb gjitha k\u00ebto pengesa duhet t\u00eb p\u00ebrshkruhen: n\u00eb sh\u00ebrbim p\u00ebrdoret Dadata, Sms, di\u00e7ka tjet\u00ebr.<\/p>\n<p><img decoding=\"async\" alt=\"Sh\u00ebrbimet jetim\u00eb: ana tjet\u00ebr e arkitektur\u00ebs (mikro)sh\u00ebrbimore\" src=\"\/wp-content\/uploads\/2019\/10\/b2770a07cf265ad8a3890b2cb2f62263.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nS\u00eb treti, puna me borxhin teknik. Kur b\u00ebni ndonj\u00eb zgjidhje provizore ose pranoni nj\u00eb sh\u00ebrbim dhe thoni se di\u00e7ka duhet b\u00ebr\u00eb, duhet t\u00eb mbani mend se duhet t\u00eb ndjekni q\u00eb kjo t\u00eb b\u00ebhet. Sepse m\u00eb von\u00eb, mund t\u00eb ndodh\u00eb q\u00eb nj\u00eb grop\u00eb e vog\u00ebl t\u00eb mos jet\u00eb aq e vog\u00ebl dhe ju t\u00eb bini brenda saj.<\/p>\n<p>Me detyrat arkitektonike, pat\u00ebm nj\u00eb histori sakt\u00ebsisht p\u00ebr Sphinx. N\u00eb nj\u00eb nga sh\u00ebrbimet, Sphinx u p\u00ebrdor p\u00ebr t\u00eb futur lista. Thjesht nj\u00eb list\u00eb me paginim, por nd\u00ebrkoh\u00eb ri-indeksohej \u00e7do nat\u00eb. Ishte krijuar nga dy indekse: nj\u00eb indeks i madh q\u00eb ri-indeksohej \u00e7do nat\u00eb dhe gjithashtu kishte nj\u00eb indeks t\u00eb vog\u00ebl q\u00eb lidhej me t\u00eb. \u00c7do dit\u00eb, me nj\u00eb probabilitet prej 50%, ose do t\u00eb ndodhte nj\u00eb problem, ose jo; me lan\u00e7imin, indeksi d\u00ebshtonte dhe lajmet tona ndalonin s\u00eb p\u00ebrdit\u00ebsuari n\u00eb faqen kryesore. N\u00eb fillim, kjo merrte 5 minuta, derisa indeksi ri-indeksohej, m\u00eb pas indeksi u zgjat, dhe n\u00eb nj\u00eb moment filloi t\u00eb ri-indeksohej p\u00ebr 40 minuta. Kur ne e hoq\u00ebm k\u00ebt\u00eb, u leht\u00ebsuam sepse ishte e qart\u00eb se pas pak koh\u00ebsh, indeksi yn\u00eb do t\u00eb ri-indeksohej gjat\u00eb gjith\u00eb dit\u00ebs. Kjo do t\u00eb ishte nj\u00eb d\u00ebshtim p\u00ebr portalin ton\u00eb, tet\u00eb or\u00eb pa lajme \u2014 gjith\u00e7ka, biznesi do t\u00eb ndalej.<\/p>\n<h3><b>Plani i pun\u00ebs me sh\u00ebrbimin jetim<\/b><\/h3>\n<p>\n<img decoding=\"async\" alt=\"Sh\u00ebrbimet jetim\u00eb: ana tjet\u00ebr e arkitektur\u00ebs (mikro)sh\u00ebrbimore\" src=\"\/wp-content\/uploads\/2019\/10\/f072ec872d59de058faf1994ac39f161.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nN\u00eb t\u00eb v\u00ebrtet\u00eb, \u00ebsht\u00eb shum\u00eb e v\u00ebshtir\u00eb t\u00eb b\u00ebsh k\u00ebt\u00eb, sepse devops \u00ebsht\u00eb p\u00ebr komunikimin. D\u00ebshiron t\u00eb jesh n\u00eb marr\u00ebdh\u00ebnie t\u00eb mira me koleg\u00ebt e tu, por kur i godet koleg\u00ebt dhe menaxher\u00ebt me rregullat, ata mund t\u00eb ndiejn\u00eb ndjenja kontradiktore ndaj atyre q\u00eb b\u00ebjn\u00eb k\u00ebshtu. <\/p>\n<p>P\u00ebrve\u00e7 t\u00eb gjitha k\u00ebtyre pikave, ka nj\u00eb gj\u00eb tjet\u00ebr t\u00eb r\u00ebnd\u00ebsishme: p\u00ebr \u00e7do sh\u00ebrbim konkret, p\u00ebr \u00e7do pjes\u00eb specifike t\u00eb procedur\u00ebs s\u00eb implikimit, duhet t\u00eb p\u00ebrgjigjen persona t\u00eb caktuar. Kur nuk ka njer\u00ebz dhe duhet t\u00eb angazhohen disa njer\u00ebz t\u00eb tjer\u00eb, p\u00ebr t\u00eb studiuar gjith\u00eb k\u00ebt\u00eb, b\u00ebhet e v\u00ebshtir\u00eb.<\/p>\n<p><img decoding=\"async\" alt=\"Sh\u00ebrbimet jetim\u00eb: ana tjet\u00ebr e arkitektur\u00ebs (mikro)sh\u00ebrbimore\" src=\"\/wp-content\/uploads\/2019\/10\/28e7372012d5089d3ac1be3d7dc97e03.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nN\u00ebse gjith\u00e7ka kjo nuk ndihmoi, dhe sh\u00ebrbimi jetim juaj \u00ebsht\u00eb ende nj\u00eb jetim, askush nuk e do at\u00eb, dokumentacioni nuk shkruhet, skuadra e cila u thirr p\u00ebr k\u00ebt\u00eb sh\u00ebrbim refuzon t\u00eb b\u00ebj\u00eb di\u00e7ka, ka nj\u00eb m\u00ebnyr\u00eb t\u00eb thjesht\u00eb \u2014 t\u00eb riparoni gjith\u00e7ka. <\/p>\n<p>Pra, merrni k\u00ebrkesat p\u00ebr sh\u00ebrbimin nga e para dhe shkruani nj\u00eb sh\u00ebrbim t\u00eb ri, m\u00eb t\u00eb mir\u00eb, n\u00eb nj\u00eb platform\u00eb m\u00eb t\u00eb mir\u00eb, pa zgjidhje teknologjike t\u00eb \u00e7uditshme. Dhe migroni n\u00eb t\u00eb gjat\u00eb funksionimit. <\/p>\n<p><img decoding=\"async\" alt=\"Sh\u00ebrbimet jetim\u00eb: ana tjet\u00ebr e arkitektur\u00ebs (mikro)sh\u00ebrbimore\" src=\"\/wp-content\/uploads\/2019\/10\/63d0bf7d9ac1e5c5b00b67b519e228a1.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nKemi pasur nj\u00eb situat\u00eb ku mor\u00ebm nj\u00eb sh\u00ebrbim n\u00eb Yii 1 dhe e kuptuam se nuk mund ta zhvillonim m\u00eb tutje, sepse na jan\u00eb mbaruar programuesit q\u00eb din\u00eb t\u00eb shkruajn\u00eb mir\u00eb n\u00eb Yii 1. T\u00eb gjith\u00eb programuesit din\u00eb t\u00eb shkruajn\u00eb mir\u00eb n\u00eb Symfony 3. \u00c7far\u00eb t\u00eb b\u00ebjm\u00eb? M\u00ebsojm\u00eb koh\u00eb, caktojm\u00eb nj\u00eb skuad\u00ebr, caktojm\u00eb nj\u00eb menaxher, rishkruajm\u00eb projektin dhe ngadal\u00eb kalojm\u00eb trafikun tek ai. <\/p>\n<p>Pas k\u00ebsaj, sh\u00ebrbimi i vjet\u00ebr mund t\u00eb fshihet. Kjo \u00ebsht\u00eb procedura ime e preferuar, kur nga sistemi i menaxhimit t\u00eb konfigurimeve duhet t\u00eb heqim nj\u00eb sh\u00ebrbim dhe pastaj t\u00eb shohim q\u00eb t\u00eb gjitha nj\u00ebsit\u00eb n\u00eb prodhim jan\u00eb ndalur, q\u00eb t\u00eb mos mbetet asnj\u00eb gjurm\u00eb p\u00ebr programuesit. Depozita n\u00eb git mbetet.<\/p>\n<p>K\u00ebto jan\u00eb gjith\u00e7ka q\u00eb doja t\u00eb flisja, jam i gatsh\u00ebm t\u00eb diskutoj, tema \u00ebsht\u00eb e diskutueshme, shum\u00eb jan\u00eb inkuadruar n\u00eb t\u00eb. <\/p>\n<p><b>N\u00eb slajd\u00ebt ishte e th\u00ebn\u00eb se keni unifikuar gjuh\u00ebt. Si shembull ishte p\u00ebr rikonfigurimin e imazheve. Po v\u00ebrtet \u00ebsht\u00eb e nevojshme t\u00eb ngulitet deri n\u00eb nj\u00eb gjuh\u00eb t\u00eb vetme? Sepse rikonfigurimi i imazheve n\u00eb PHP, n\u00eb fakt, mund t\u00eb b\u00ebhej edhe n\u00eb Golang.<\/b><\/p>\n<p>N\u00eb t\u00eb v\u00ebrtet\u00eb, kjo nuk \u00ebsht\u00eb e domosdoshme, si\u00e7 \u00ebsht\u00eb rasti me t\u00eb gjitha praktikat. Ndoshta n\u00eb disa raste, madje nuk preferohet. Por duhet t\u00eb kuptoni se n\u00ebse keni 50 njer\u00ebz n\u00eb departamentin teknik dhe 45 prej tyre jan\u00eb PHP, 3 jan\u00eb DevOps q\u00eb din\u00eb t\u00eb punojn\u00eb me Python, Ansible, Puppet dhe ndonj\u00eb gj\u00eb tjet\u00ebr, dhe vet\u00ebm nj\u00eb prej tyre shkruan ndonj\u00eb sh\u00ebrbim p\u00ebr rrezolucionin e imazheve n\u00eb Go, at\u00ebher\u00eb, kur ai largohet, ekspertiza largohet me t\u00eb. Dhe n\u00eb k\u00ebt\u00eb rast do t'ju duhet t\u00eb k\u00ebrkoni nj\u00eb zhvillues specifik n\u00eb treg q\u00eb di k\u00ebt\u00eb gjuh\u00eb, sidomos n\u00ebse \u00ebsht\u00eb e rrall\u00eb. K\u00ebshtu q\u00eb, nga pik\u00ebpamja organizative, kjo \u00ebsht\u00eb problematike. Nga pik\u00ebpamja DevOps, ju do t\u00eb k\u00ebrkoni jo vet\u00ebm t\u00eb klononi ndonj\u00eb grup t\u00eb gatsh\u00ebm playbook-esh q\u00eb p\u00ebrdorni p\u00ebr t\u00eb krijuar sh\u00ebrbimet, por do t'ju duhet ti shkruani ato nga e para. <\/p>\n<p>Tani po krijojm\u00eb nj\u00eb sh\u00ebrbim n\u00eb Node.js, dhe kjo do t\u00eb jet\u00eb nj\u00eb platform\u00eb p\u00ebr secilin zhvillues me gjuh\u00ebn e tij t\u00eb ve\u00e7ant\u00eb. Por u ul\u00ebm dhe mendojm\u00eb se luhet v\u00ebrtet nj\u00eb loj\u00eb. Pra, ky \u00ebsht\u00eb nj\u00eb pyetje p\u00ebr t\u00eb menduar.<\/p>\n<p><b>Si i monitoroni sh\u00ebrbimet tuaja? Si i mbledhni dhe ndihmoni loget?<\/b><\/p>\n<p>Ne i mbledhim loget n\u00eb Elasticsearch dhe i ruajm\u00eb n\u00eb Kibana, dhe n\u00eb var\u00ebsi t\u00eb faktit n\u00ebse \u00ebsht\u00eb prodhim apo ambient provash, aty p\u00ebrdoren mbledh\u00ebs t\u00eb ndrysh\u00ebm. Diku p\u00ebrdoret Lumberjack, diku tjet\u00ebr nuk e mbaj mend. Ka gjithashtu disa vendndodhje n\u00eb sh\u00ebrbime t\u00eb caktuara ku instalojm\u00eb Telegraf dhe e d\u00ebrgojm\u00eb ndryshe. <\/p>\n<p><b>Si t\u00eb jetoni me Puppet dhe Ansible n\u00eb nj\u00eb ambient t\u00eb vet\u00ebm?<\/b><\/p>\n<p>N\u00eb t\u00eb v\u00ebrtet\u00eb, tani kemi dy ambiente, nj\u00eb \u00ebsht\u00eb Puppet, tjetra Ansible. Po punojm\u00eb p\u00ebr t'i hibridizuar ata. Ansible \u00ebsht\u00eb nj\u00eb ambient i mir\u00eb p\u00ebr konfigurimin fillestar, Puppet \u00ebsht\u00eb nj\u00eb gj\u00eb e keqe p\u00ebr konfigurimin fillestar, sepse k\u00ebrkon pun\u00eb manuale direkt me platform\u00ebn, dhe Puppet siguron konvergjenc\u00ebn e konfigurimit. Kjo do t\u00eb thot\u00eb se platforma e mban veten n\u00eb gjendje t\u00eb p\u00ebrdit\u00ebsuar, por p\u00ebr t\u00eb mbajtur nj\u00eb makin\u00eb t\u00eb instaluar me Ansible n\u00eb gjendje t\u00eb p\u00ebrdit\u00ebsuar, duhet t\u00eb ekzekutoni playbook-et me ndonj\u00eb periodicitet. Kjo \u00ebsht\u00eb dallimi. <\/p>\n<p><b>Si e mbani p\u00ebrputhshm\u00ebrin\u00eb? A keni konfigurime si n\u00eb Ansible ashtu edhe n\u00eb Puppet?<\/b><\/p>\n<p>Kjo \u00ebsht\u00eb nj\u00eb dhimbje e madhe p\u00ebr ne; po mb\u00ebshtesim p\u00ebrshtatshm\u00ebrin\u00eb manualisht dhe po mendojm\u00eb se si mund t\u00eb kalojm\u00eb nga kjo situat\u00eb diku tjet\u00ebr. Tani, Puppet instalon paketat dhe mban disa lidhje, nd\u00ebrsa Ansible, p\u00ebr shembull, instalon kodin dhe p\u00ebrshtat konfigurimet e reja t\u00eb aplikacioneve.<\/p>\n<p><b>N\u00eb prezantim kishte informacion p\u00ebr versionet e ndryshme t\u00eb Ruby. Cila \u00ebsht\u00eb zgjidhja?<\/b><\/p>\n<p>Ne e kemi p\u00ebrjetuar k\u00ebt\u00eb n\u00eb nj\u00eb vend, dhe na duhet ta mbajm\u00eb gjithmon\u00eb n\u00eb mendje. Ne thjesht ndaluam at\u00eb pjes\u00eb q\u00eb punonte me at\u00eb Ruby, e cila ishte e papajtueshme me aplikacionet, dhe e mbajt\u00ebm ve\u00e7mas. <\/p>\n<blockquote><p> T\u00eb k\u00ebtij viti konferenca <noindex><a rel=\"nofollow\" href=\"http:\/\/devopsdays.ru\/?utm_source=habr&amp;utm_medium=social&amp;utm_campaign=dod-2019&amp;utm_content=post3\">DevOpsDays Moscow<\/a><\/noindex> do t\u00eb mbahet m\u00eb 7 dhjetor n\u00eb \"Teknopolis\". Deri m\u00eb 11 n\u00ebntor pranojm\u00eb aplikime p\u00ebr referate. <noindex><a rel=\"nofollow\" href=\"http:\/\/devopsdays.ru\/?utm_source=habr&amp;utm_medium=social&amp;utm_campaign=dod-2019&amp;utm_content=post3\">Na shkruani<\/a><\/noindex> n\u00ebse d\u00ebshironi t\u00eb flisni.<\/p>\n<p>Regjistrimi p\u00ebr pjes\u00ebmarr\u00ebsit \u00ebsht\u00eb hapur, bashkohuni! \n<\/p><\/blockquote>\n<p>Burimi: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/scienceman_events\/blog\/471146\/\">habr.com<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u0414\u0438\u0440\u0435\u043a\u0442\u043e\u0440 \u043f\u043e \u044d\u043a\u0441\u043f\u043b\u0443\u0430\u0442\u0430\u0446\u0438\u0438 \u043f\u043e\u0440\u0442\u0430\u043b\u0430 Banki.ru \u0410\u043d\u0434\u0440\u0435\u0439 \u041d\u0438\u043a\u043e\u043b\u044c\u0441\u043a\u0438\u0439 \u0440\u0430\u0441\u0441\u043a\u0430\u0437\u0430\u043b \u043d\u0430 \u043f\u0440\u043e\u0448\u043b\u043e\u0433\u043e\u0434\u043d\u0435\u0439 \u043a\u043e\u043d\u0444\u0435\u0440\u0435\u043d\u0446\u0438\u0438 DevOpsDays Moscow \u043f\u0440\u043e \u0441\u0435\u0440\u0432\u0438\u0441\u044b-\u0441\u0438\u0440\u043e\u0442\u044b: \u043a\u0430\u043a \u043e\u043f\u043e\u0437\u043d\u0430\u0442\u044c \u0441\u0438\u0440\u043e\u0442\u0443 \u0432 \u0438\u043d\u0444\u0440\u0430\u0441\u0442\u0440\u0443\u043a\u0442\u0443\u0440\u0435, \u0447\u0435\u043c \u043f\u043b\u043e\u0445\u0438 \u0441\u0435\u0440\u0432\u0438\u0441\u044b-\u0441\u0438\u0440\u043e\u0442\u044b, \u0447\u0442\u043e \u0441 \u043d\u0438\u043c\u0438 \u0434\u0435\u043b\u0430\u0442\u044c, \u0438 \u043a\u0430\u043a \u0431\u044b\u0442\u044c, \u0435\u0441\u043b\u0438 \u043d\u0438\u0447\u0435\u0433\u043e \u043d\u0435 \u043f\u043e\u043c\u043e\u0433\u0430\u0435\u0442. \u041f\u043e\u0434 \u043a\u0430\u0442\u043e\u043c \u0442\u0435\u043a\u0441\u0442\u043e\u0432\u0430\u044f \u0432\u0435\u0440\u0441\u0438\u044f \u0434\u043e\u043a\u043b\u0430\u0434\u0430. \u0417\u0434\u0440\u0430\u0432\u0441\u0442\u0432\u0443\u0439\u0442\u0435, \u043a\u043e\u043b\u043b\u0435\u0433\u0438! \u041c\u0435\u043d\u044f \u0437\u043e\u0432\u0443\u0442 \u0410\u043d\u0434\u0440\u0435\u0439, \u044f \u0440\u0443\u043a\u043e\u0432\u043e\u0436\u0443 \u044d\u043a\u0441\u043f\u043b\u0443\u0430\u0442\u0430\u0446\u0438\u0435\u0439 \u0432 \u043a\u043e\u043c\u043f\u0430\u043d\u0438\u0438 Banki.ru. \u0423 \u043d\u0430\u0441 \u0435\u0441\u0442\u044c \u0431\u043e\u043b\u044c\u0448\u0438\u0435 \u0441\u0435\u0440\u0432\u0438\u0441\u044b, [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":29246,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-38981","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-administrirovanie"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.2 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u0414\u0438\u0440\u0435\u043a\u0442\u043e\u0440 \u043f\u043e \u044d\u043a\u0441\u043f\u043b\u0443\u0430\u0442\u0430\u0446\u0438\u0438 \u043f\u043e\u0440\u0442\u0430\u043b\u0430 Banki.ru \u0410\u043d\u0434\u0440\u0435\u0439 \u041d\u0438\u043a\u043e\u043b\u044c\u0441\u043a\u0438\u0439 \u0440\u0430\u0441\u0441\u043a\u0430\u0437\u0430\u043b \u043d\u0430 \u043f\u0440\u043e\u0448\u043b\u043e\u0433\u043e\u0434\u043d\u0435\u0439 \u043a\u043e\u043d\u0444\u0435\u0440\u0435\u043d\u0446\u0438\u0438\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/sq\/blog\/administrirovanie\/servisy-siroty-obratnaya-storona-mikro-servisnoj-arhitektury\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.2\" \/>\n\t\t<meta property=\"og:locale\" content=\"sq_AL\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u0421\u0435\u0440\u0432\u0438\u0441\u044b-\u0441\u0438\u0440\u043e\u0442\u044b: \u043e\u0431\u0440\u0430\u0442\u043d\u0430\u044f \u0441\u0442\u043e\u0440\u043e\u043d\u0430 (\u043c\u0438\u043a\u0440\u043e)\u0441\u0435\u0440\u0432\u0438\u0441\u043d\u043e\u0439 \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u044b | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u0414\u0438\u0440\u0435\u043a\u0442\u043e\u0440 \u043f\u043e \u044d\u043a\u0441\u043f\u043b\u0443\u0430\u0442\u0430\u0446\u0438\u0438 \u043f\u043e\u0440\u0442\u0430\u043b\u0430 Banki.ru \u0410\u043d\u0434\u0440\u0435\u0439 \u041d\u0438\u043a\u043e\u043b\u044c\u0441\u043a\u0438\u0439 \u0440\u0430\u0441\u0441\u043a\u0430\u0437\u0430\u043b \u043d\u0430 \u043f\u0440\u043e\u0448\u043b\u043e\u0433\u043e\u0434\u043d\u0435\u0439 \u043a\u043e\u043d\u0444\u0435\u0440\u0435\u043d\u0446\u0438\u0438\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/sq\/blog\/administrirovanie\/servisy-siroty-obratnaya-storona-mikro-servisnoj-arhitektury\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2019-10-31T19:27:10+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2019-10-31T19:27:10+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47 Sh\u00ebrbimet jetim\u00eb: ana e err\u00ebt e arkitektur\u00ebs (mikro)sh\u00ebrbim | ProHoster","description":"Drejtori i operacioneve t\u00eb portalit Banki.ru, Andrei Nikolskyi, fol n\u00eb konferenc\u00ebn e vitit t\u00eb kaluar.","canonical_url":"https:\/\/prohoster.info\/sq\/blog\/administrirovanie\/servisy-siroty-obratnaya-storona-mikro-servisnoj-arhitektury","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"sq_AL","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u0421\u0435\u0440\u0432\u0438\u0441\u044b-\u0441\u0438\u0440\u043e\u0442\u044b: \u043e\u0431\u0440\u0430\u0442\u043d\u0430\u044f \u0441\u0442\u043e\u0440\u043e\u043d\u0430 (\u043c\u0438\u043a\u0440\u043e)\u0441\u0435\u0440\u0432\u0438\u0441\u043d\u043e\u0439 \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u044b | ProHoster","og:description":"\u0414\u0438\u0440\u0435\u043a\u0442\u043e\u0440 \u043f\u043e \u044d\u043a\u0441\u043f\u043b\u0443\u0430\u0442\u0430\u0446\u0438\u0438 \u043f\u043e\u0440\u0442\u0430\u043b\u0430 Banki.ru \u0410\u043d\u0434\u0440\u0435\u0439 \u041d\u0438\u043a\u043e\u043b\u044c\u0441\u043a\u0438\u0439 \u0440\u0430\u0441\u0441\u043a\u0430\u0437\u0430\u043b \u043d\u0430 \u043f\u0440\u043e\u0448\u043b\u043e\u0433\u043e\u0434\u043d\u0435\u0439 \u043a\u043e\u043d\u0444\u0435\u0440\u0435\u043d\u0446\u0438\u0438","og:url":"https:\/\/prohoster.info\/sq\/blog\/administrirovanie\/servisy-siroty-obratnaya-storona-mikro-servisnoj-arhitektury","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2019-10-31T19:27:10+00:00","article:modified_time":"2019-10-31T19:27:10+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"38981","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":"2026-01-24 00:15:21","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-03-01 00:59:27","updated":"2026-01-24 00:15:21","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/posts\/38981","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/comments?post=38981"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/posts\/38981\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/media\/29246"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/media?parent=38981"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/categories?post=38981"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/tags?post=38981"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}