{"id":33935,"date":"2019-10-31T21:55:27","date_gmt":"2019-10-31T18:55:27","guid":{"rendered":"https:\/\/prohoster.info\/blog\/serverless-po-stoechkam\/"},"modified":"2019-10-31T21:55:27","modified_gmt":"2019-10-31T18:55:27","slug":"serverless-po-stoechkam","status":"publish","type":"post","link":"https:\/\/prohoster.info\/sq\/blog\/administrirovanie\/serverless-po-stoechkam","title":{"rendered":"Serverless selon rack","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><img decoding=\"async\" alt=\"Serverless selon rack\" src=\"\/wp-content\/uploads\/2019\/05\/cea6dc9da0a3a1b0241246cdf3eba900.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\nServerless nuk ka t\u00eb b\u00ebj\u00eb me munges\u00ebn fizike t\u00eb server\u00ebve. Nuk \u00ebsht\u00eb nj\u00eb \"vras\u00ebs\" i konteiner\u00ebve dhe as nj\u00eb trend kalimtar. Ky \u00ebsht\u00eb nj\u00eb qasje e re p\u00ebr nd\u00ebrtimin e sistemeve n\u00eb re. N\u00eb artikullin e sot\u00ebm do t\u00eb trajtojm\u00eb arkitektur\u00ebn e aplikacioneve Serverless, do t\u00eb shohim se \u00e7far\u00eb roli luan ofruesi i sh\u00ebrbimit Serverless dhe projektet open-source. N\u00eb fund do t\u00eb flasim p\u00ebr \u00e7\u00ebshtjet e p\u00ebrdorimit t\u00eb Serverless.<br \/>\n<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><br \/>\nDua t\u00eb shkruaj pjes\u00ebn serverike t\u00eb aplikacionit (madje edhe nj\u00eb dyqan online). Mund t\u00eb jet\u00eb nj\u00eb bised\u00eb, nj\u00eb sh\u00ebrbim p\u00ebr publikimin e p\u00ebrmbajtjes, ose nj\u00eb balancues ngarkese. N\u00eb \u00e7do rast, do t\u00eb ket\u00eb mjaft telashe: do t\u00eb duhet t\u00eb p\u00ebrgatis infrastruktur\u00ebn, t\u00eb p\u00ebrcaktoj var\u00ebsit\u00eb e aplikacionit dhe t\u00eb mendoj p\u00ebr sistemin operativ t\u00eb host-it. Me pas, do t\u00eb jet\u00eb e nevojshme t\u00eb p\u00ebrdit\u00ebsoj disa komponente t\u00eb vogla q\u00eb nuk prekin funksionimin e pjes\u00ebs tjet\u00ebr monolite. Dhe nuk duhet t\u00eb harrojm\u00eb p\u00ebr shkall\u00ebzimin n\u00ebn ngarkes\u00eb.<\/p>\n<p>Por, \u00e7far\u00eb n\u00ebse marrim konteiner\u00eb efemer\u00eb, n\u00eb t\u00eb cil\u00ebt var\u00ebsit\u00eb e nevojshme jan\u00eb tashm\u00eb t\u00eb parainstaluara, dhe vet\u00eb konteiner\u00ebt jan\u00eb t\u00eb izoluar nga nj\u00ebri-tjetri dhe nga OS host? Ne do t\u00eb ndajm\u00eb monolitin n\u00eb mikrosh\u00ebrbime, secili nga t\u00eb cilat mund t\u00eb p\u00ebrdit\u00ebsohet dhe t\u00eb shkall\u00ebzohet n\u00eb m\u00ebnyr\u00eb t\u00eb pavarur nga t\u00eb tjer\u00ebt. Duke vendosur kodin n\u00eb nj\u00eb konteiner t\u00eb till\u00eb, un\u00eb do t\u00eb mund ta ekzekutoj at\u00eb n\u00eb \u00e7do infrastruktur\u00eb. M\u00eb mir\u00eb tani. <\/p>\n<p>Por, n\u00ebse nuk dua t\u00eb konfiguroj konteiner\u00ebt? Nuk dua t\u00eb mendoj p\u00ebr shkall\u00ebzimin e aplikacionit. Nuk dua t\u00eb paguaj p\u00ebr pushimin e konteiner\u00ebve t\u00eb nisur kur ngarkesa n\u00eb sh\u00ebrbim \u00ebsht\u00eb minimale. Dua t\u00eb shkruaj kod. T\u00eb p\u00ebrqendrohem n\u00eb logjik\u00ebn e biznesit dhe t\u00eb nxjerr produktet n\u00eb treg me shpejt\u00ebsi t\u00eb jasht\u00ebzakonshme. <\/p>\n<p>K\u00ebto mendime m\u00eb \u00e7uan n\u00eb llogarit\u00eb pa server\u00eb. Serverless n\u00eb k\u00ebt\u00eb rast do t\u00eb thot\u00eb <em>jo munges\u00eb fizike t\u00eb server\u00ebve, por munges\u00eb telash p\u00ebr menaxhimin e infrastruktur\u00ebs.<\/em><\/p>\n<p>Ideja \u00ebsht\u00eb q\u00eb logjika e aplikacionit ndahen n\u00eb funksione t\u00eb pavarura. Ato kan\u00eb nj\u00eb struktur\u00eb ngjarjesh. \u00c7do funksion kryen nj\u00eb \"mikrosiht\". Gjith\u00e7ka q\u00eb k\u00ebrkohet nga zhvilluesi \u00ebsht\u00eb t\u00eb ngarkoj\u00eb funksionet n\u00eb konsol\u00ebn e siguruar nga ofruesi i cloud dhe t'i lidh\u00eb ato me burimet e ngjarjeve. Kodi do t\u00eb ekzekutohet sipas k\u00ebrkes\u00ebs n\u00eb nj\u00eb konteiner t\u00eb p\u00ebrgatitur automatikisht dhe un\u00eb do t\u00eb paguaj vet\u00ebm p\u00ebr koh\u00ebn e ekzekutimit. <\/p>\n<p>Le t\u00eb shohim si do t\u00eb duket tani procesi i zhvillimit t\u00eb aplikacioneve.<\/p>\n<h2>Nga k\u00ebndv\u00ebshtrimi i zhvilluesit<\/h2>\n<p>\nM\u00eb par\u00eb, filluam t\u00eb flasim p\u00ebr aplikacionin p\u00ebr dyqanin online. N\u00eb qasjen tradicionale, logjika kryesore e sistemit kryhet nga nj\u00eb aplikacion monolit. Dhe serveri me aplikacionin \u00ebsht\u00eb gjithmon\u00eb aktiv, edhe n\u00ebse nuk ka ngarkes\u00eb.<\/p>\n<p><strong>P\u00ebr t\u00eb kaluar tek serverless, ne ndajm\u00eb aplikacionin n\u00eb mikroshk\u00ebmbime.<\/strong> P\u00ebr secil\u00ebn prej tyre shkruajm\u00eb funksionin ton\u00eb. Funksionet jan\u00eb t\u00eb pavarura nga nj\u00ebra-tjetra dhe nuk ruajn\u00eb informacion rreth gjendjes (stateless). Ato madje mund t\u00eb shkruhen n\u00eb gjuh\u00eb t\u00eb ndryshme. N\u00ebse nj\u00ebra prej tyre \"p\u00ebson d\u00ebshtim\", aplikacioni n\u00eb t\u00ebr\u00ebsi nuk do t\u00eb ndalet. Arkitektura e aplikacionit do t\u00eb duket k\u00ebshtu:<\/p>\n<p><img decoding=\"async\" alt=\"Serverless selon rack\" src=\"\/wp-content\/uploads\/2019\/05\/f62c5c08bbf587766198dbb807123273.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\nNdarja n\u00eb funksione n\u00eb Serverless i ngjan pun\u00ebs me mikrosserviset. Por mikroservisi mund t\u00eb kryej\u00eb disa detyra, nd\u00ebrsa funksioni n\u00eb ideal duhet t\u00eb kryej\u00eb nj\u00eb t\u00eb vetme. Le t\u00eb imagjinojm\u00eb se kemi nj\u00eb detyr\u00eb p\u00ebr t\u00eb mbledhur statistik\u00eb dhe p\u00ebr ta ofruar at\u00eb sipas k\u00ebrkes\u00ebs s\u00eb p\u00ebrdoruesit. N\u00eb qasjen mikroservis\u00eb, detyr\u00ebn e kryen nj\u00eb sh\u00ebrbim me dy pika hyr\u00ebse: p\u00ebr shkrim dhe p\u00ebr lexim. N\u00eb llogarit\u00eb pa server, k\u00ebto do t\u00eb ishin dy funksione t\u00eb ndryshme, t\u00eb pa lidhura me nj\u00ebra-tjetr\u00ebn. Zhvilluesi kursen burimet llogarit\u00ebse, n\u00ebse, p\u00ebr shembull, statistika p\u00ebrdit\u00ebsohet m\u00eb shpesh se sa shkarkohet. <\/p>\n<p>Funksionet Serverless duhet t\u00eb ekzekutohen p\u00ebr nj\u00eb periudh\u00eb t\u00eb shkurt\u00ebr kohe (timeout), e cila p\u00ebrcaktohet nga ofruesi i sh\u00ebrbimit. P.sh., p\u00ebr AWS timeout-i \u00ebsht\u00eb 15 minuta. K\u00ebshtu, funksionet afatgjata (long-lived) do t\u00eb duhet t\u00eb p\u00ebrshtaten me k\u00ebrkesat \u2015 dhe kjo \u00ebsht\u00eb ajo q\u00eb e dallon Serverless nga teknologjit\u00eb e tjera popullore sot (kontejner\u00eb dhe Platform as a Service).<\/p>\n<p><strong>\u00c7do funksioni i caktojm\u00eb nj\u00eb ngjarje.<\/strong> Ngjarja \u00ebsht\u00eb nj\u00eb trigger p\u00ebr veprimin:<\/p>\n<p><strong>Ngjarja<\/strong><br \/>\n<strong>Veprimi q\u00eb kryen funksioni<\/strong><\/p>\n<p>N\u00eb ruajtje \u00ebsht\u00eb ngarkuar nj\u00eb imazh i produktit<br \/>\nT\u00eb kompresohet imazhi dhe t\u00eb ngarkohet n\u00eb katalog<\/p>\n<p>N\u00eb baz\u00ebn e t\u00eb dh\u00ebnave \u00ebsht\u00eb p\u00ebrdit\u00ebsuar adresa e dyqanit fizik<br \/>\nT\u00eb ngarkohet nj\u00eb vendndodhje e re n\u00eb harta<\/p>\n<p>Klienti paguan produktin<br \/>\nT\u00eb fillohet p\u00ebrpunimi i pages\u00ebs<\/p>\n<p>Ngjarjet mund t\u00eb p\u00ebrfshijn\u00eb k\u00ebrkesa HTTP, t\u00eb dh\u00ebna n\u00eb rrjedh\u00eb, radh\u00eb mesazhesh, etj. Burimet e ngjarjeve jan\u00eb ndryshimi ose shfaqja e t\u00eb dh\u00ebnave. P\u00ebrve\u00e7 k\u00ebsaj, funksionet mund t\u00eb ekzekutohen sipas orarit.<\/p>\n<p>Arkitektura \u00ebsht\u00eb p\u00ebrpunuar, dhe aplikacioni pothuajse \u00ebsht\u00eb b\u00ebr\u00eb serverless. Tani kalojm\u00eb te ofruesi i sh\u00ebrbimeve.<\/p>\n<h2>Nga ana e ofruesit<\/h2>\n<p>\nZakoni\u00e7t, llogarit\u00eb pa server ofrohen nga ofruesit e sh\u00ebrbimeve n\u00eb re. Shkruhen n\u00eb m\u00ebnyra t\u00eb ndryshme: Azure Functions, AWS Lambda, Google Cloud Functions, IBM Cloud Functions. <\/p>\n<p>Do ta p\u00ebrdorim sh\u00ebrbimin p\u00ebrmes konsol\u00ebs ose panelit personal t\u00eb ofruesit. Kodi i funksioneve mund t\u00eb ngarkohet n\u00eb disa m\u00ebnyra:<\/p>\n<ul>\n<li>t\u00eb shkruajm\u00eb kodin n\u00eb redaktor\u00ebt e integruar p\u00ebrmes konsol\u00ebs n\u00eb internet,<\/li>\n<li>t\u00eb ngarkohet nj\u00eb arkiv me kodin,<\/li>\n<li>t\u00eb punojm\u00eb me repozitar\u00eb git publik\u00eb ose privat\u00eb.<\/li>\n<\/ul>\n<p>\nK\u00ebtu konfiguroni ngjarjet q\u00eb shkaktojn\u00eb funksionin. N\u00eb ofrues t\u00eb ndrysh\u00ebm, grumbujt e ngjarjeve mund t\u00eb ndryshojn\u00eb.<\/p>\n<p><img decoding=\"async\" alt=\"Serverless selon rack\" src=\"\/wp-content\/uploads\/2019\/05\/98676fa23a9911aae5758ecdb2cd9a03.jpg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<p>Ofruesi nd\u00ebrtuar dhe automatizuar sistemin Function as a Service (FaaS) n\u00eb infrastrukturen e tij:<\/p>\n<ol>\n<li>Kodi i funksioneve d\u00ebrgohet n\u00eb magazin\u00ebn nga ana e ofruesit.<\/li>\n<li>Kur ndodh nj\u00eb ngjarje, kontenier\u00ebt me ambientin e p\u00ebrgatitur zhvillohen automatikisht n\u00eb server. \u00c7do instanc\u00eb e funksionit ka nj\u00eb kontenier t\u00eb izoluar.<\/li>\n<li>Nga magazina, funksioni d\u00ebrgohet n\u00eb kontenier, llogaritet dhe jep rezultatin.<\/li>\n<li>Numri i ngjarjeve paralele rritet - rritet numri i kontenier\u00ebve. Sistemi t\u00ebrheq automatikisht burime. N\u00ebse p\u00ebrdoruesit nuk e th\u00ebrrasin funksionin, ai do t\u00eb jet\u00eb joaktiv.<\/li>\n<li>Ofruesi p\u00ebrcakton koh\u00ebn e papun\u00ebsis\u00eb s\u00eb kontenier\u00ebve - n\u00ebse gjat\u00eb k\u00ebsaj periudhe nuk ndodhin funksione n\u00eb kontenier, ai shkat\u00ebrrohet.<\/li>\n<\/ol>\n<p>\nK\u00ebshtu, ne marrim Serverless \"nga kutia\". Do t\u00eb paguajm\u00eb p\u00ebr sh\u00ebrbimin me modelin pay-as-you-go dhe vet\u00ebm p\u00ebr funksionet q\u00eb p\u00ebrdoren, dhe vet\u00ebm p\u00ebr koh\u00ebn q\u00eb ato jan\u00eb p\u00ebrdorur.<\/p>\n<p>P\u00ebr t\u00eb njohur zhvilluesit me sh\u00ebrbimin, ofruesit ofrojn\u00eb deri n\u00eb 12 muaj prov\u00eb falas, por kufizojn\u00eb koh\u00ebn e p\u00ebrgjithshme t\u00eb llogaritjes, numrin e k\u00ebrkesave n\u00eb muaj, fondet ose kapacitetin e konsumuar.<\/p>\n<p>Avantazhi kryesor i pun\u00ebs me ofruesin \u00ebsht\u00eb mund\u00ebsia p\u00ebr t\u00eb mos u shqet\u00ebsuar p\u00ebr infrastruktur\u00ebn (serverat, makinat virtuale, kontenier\u00ebt). Nga ana e tij, ofruesi mund ta realizoj\u00eb FaaS si n\u00eb zhvillimet e tij, ashtu edhe me mjete open-source. K\u00ebto do t\u00eb diskutojm\u00eb m\u00eb tej.<\/p>\n<h2>Nga ana e open-source<\/h2>\n<p>\nDy vitet e fundit, komuniteti open-source ka punuar aktivisht p\u00ebr mjete Serverless. Gjithashtu, kontributi n\u00eb zhvillimin e platformave pa server vjen nga lojtar\u00ebt m\u00eb t\u00eb m\u00ebdhenj t\u00eb tregut:<\/p>\n<ul>\n<li><strong>Google<\/strong> ofron zhvilluesve mjetin e tij open-source - <noindex><a rel=\"nofollow\" href=\"https:\/\/cloud.google.com\/knative\/\">Knative<\/a><\/noindex>. N\u00eb zhvillimin e tij mor\u00ebn pjes\u00eb IBM, RedHat, Pivotal dhe SAP;<\/li>\n<li><strong>IBM<\/strong> punuan mbi platform\u00ebn Serverless <noindex><a rel=\"nofollow\" href=\"https:\/\/openwhisk.apache.org\/\">OpenWhisk<\/a><\/noindex>, e cila m\u00eb pas u b\u00eb projekt i Fondacionit Apache;<\/li>\n<li><strong>Microsoft<\/strong> pjes\u00ebrisht hap\u00ebn kodin e platform\u00ebs <noindex><a rel=\"nofollow\" href=\"https:\/\/azure.microsoft.com\/en-us\/services\/functions\/\">Azure Functions<\/a><\/noindex>.<\/li>\n<\/ul>\n<p>\nZhvillimet po b\u00ebhen gjithashtu n\u00eb drejtimin e frameworkeve pa server. <noindex><a rel=\"nofollow\" href=\"https:\/\/kubeless.io\/\">Kubeless<\/a><\/noindex> dhe <noindex><a rel=\"nofollow\" href=\"https:\/\/fission.io\/\">Fission<\/a><\/noindex> n\u00eb kontenier\u00ebt e p\u00ebrgatitur m\u00eb par\u00eb brenda klaster\u00ebve Kubernetes, <noindex><a rel=\"nofollow\" href=\"https:\/\/www.openfaas.com\/\">OpenFaaS<\/a><\/noindex> punon si me Kubernetes ashtu edhe me Docker Swarm. Framework-u vepron si nj\u00eb lloj kontrollori - sipas k\u00ebrkes\u00ebs p\u00ebrgatit brenda klasterit nj\u00eb mjedis ekzekutimi, pastaj e nis atje funksionin.<\/p>\n<p>Framework-et ofrojn\u00eb hap\u00ebsir\u00eb p\u00ebr konfigurimin e mjetit sipas nevojave t\u00eb tyre. K\u00ebshtu, n\u00eb Kubeless, zhvilluesi mund t\u00eb p\u00ebrcaktoj\u00eb koh\u00ebn e skadimit t\u00eb ekzekutimit t\u00eb funksionit (vlera e paracaktuar \u00ebsht\u00eb 180 sekonda). Fission, n\u00eb p\u00ebrpjekje p\u00ebr t\u00eb zgjidhur problemin e nisjes s\u00eb ftoht\u00eb, ofron nj\u00eb pjes\u00eb t\u00eb kontenjer\u00ebve q\u00eb t\u00eb mbahen gjithmon\u00eb t\u00eb ndezur (ndon\u00ebse kjo sjell kostot p\u00ebr p\u00ebrdorimin e t\u00eb dh\u00ebnave). Dhe OpenFaaS ofron nj\u00eb grup trigger-ash p\u00ebr \u00e7do shije dhe ngjyr\u00eb: HTTP, Kafka, Redis, MQTT, Cron, AWS SQS, NATs dhe t\u00eb tjera.<\/p>\n<p>Udh\u00ebzimet p\u00ebr t\u00eb filluar pun\u00ebn mund t\u00eb gjenden n\u00eb dokumentacionin zyrtar t\u00eb framework-eve. Puna me to n\u00ebnkupton nj\u00eb sasi t\u00eb vog\u00ebl m\u00eb shum\u00eb aft\u00ebsish se puna me ofruesin - kjo \u00ebsht\u00eb t\u00eb pakt\u00ebn aft\u00ebsia p\u00ebr t\u00eb nisur nj\u00eb klaster Kubernetes p\u00ebrmes CLI. Maksimumi, t\u00eb p\u00ebrfshijm\u00eb n\u00eb pun\u00eb mjete t\u00eb tjera open-source (p.sh. menaxheri i radh\u00ebve Kafka).<\/p>\n<p>Pavar\u00ebsisht se me \u00e7far\u00eb metode do t\u00eb punojm\u00eb me Serverless - n\u00ebp\u00ebrmjet ofruesit ose p\u00ebrmes open-source, do t\u00eb arrijm\u00eb nj\u00eb s\u00ebr\u00eb avantazhesh dhe disavantazhesh t\u00eb qasjes Serverless.<\/p>\n<h2>Nga pozita e avantazheve dhe disavantazheve<\/h2>\n<p>\nServerless zhvillon idet\u00eb e infrastruktur\u00ebs s\u00eb konteiner\u00ebve dhe qasjes mikro-sh\u00ebrbimore, ku ekipet mund t\u00eb punojn\u00eb n\u00eb nj\u00eb m\u00ebnyr\u00eb shum\u00ebgjuh\u00ebshe, pa u lidhur me nj\u00eb platform\u00eb t\u00eb vetme. Nd\u00ebrtimi i sistemit b\u00ebhet m\u00eb i thjesht\u00eb, dhe rregullimi i gabimeve b\u00ebhet m\u00eb e leht\u00eb. Arkitektura mikro-sh\u00ebrbimore lejon shtimin e funksionaliteteve t\u00eb reja n\u00eb sistem shum\u00eb m\u00eb shpejt se sa n\u00eb rastin e nj\u00eb aplikacioni monolitik.<\/p>\n<p><strong>Serverless e shkurton koh\u00ebn e zhvillimit edhe m\u00eb shum\u00eb,<\/strong> duke i lejuar zhvilluesit t\u00eb fokusohet ekskluzivisht n\u00eb logjik\u00ebn e biznesit t\u00eb aplikacionit dhe n\u00eb shkrimin e kodit. Si pasoj\u00eb, koha e daljes s\u00eb zhvillimeve n\u00eb treg shkurtizohet.<\/p>\n<p><strong>Si bonus, ne marrim p\u00ebrmir\u00ebsim automatik n\u00eb shkall\u00ebzim n\u00ebn ngarkes\u00eb,<\/strong> nd\u00ebrsa paguajm\u00eb vet\u00ebm p\u00ebr burimet e p\u00ebrdorura dhe vet\u00ebm n\u00eb at\u00eb koh\u00eb kur ato p\u00ebrdoren.<\/p>\n<p>Si \u00e7do teknologji, Serverless ka disavantazhe.<\/p>\n<p><em>P\u00ebr shembull, nj\u00eb nga k\u00ebto disavantazhe mund t\u00eb jet\u00eb koha e nisjes s\u00eb ftoht\u00eb (n\u00eb mesatare deri n\u00eb 1 sekond\u00eb p\u00ebr gjuh\u00ebt si JavaScript, Python, Go, Java, Ruby).<\/em><\/p>\n<p>Nga nj\u00ebra an\u00eb, n\u00eb praktik\u00eb, koha e nisjes t\u00eb ftoht\u00eb varet nga shum\u00eb variabla: gjuha n\u00eb t\u00eb cil\u00ebn \u00ebsht\u00eb shkruar funksioni, numri i bibliotekave, volumi i kodit, nd\u00ebrveprimi me burime shtes\u00eb (p.sh. bazat e t\u00eb dh\u00ebnave ose server\u00ebt e autentikimit). Duke qen\u00eb se zhvilluesi menaxhon k\u00ebto variabla, ai mund t\u00eb shkurt\u00eboj\u00eb koh\u00ebn e nisjes. Por nga ana tjet\u00ebr, zhvilluesi nuk mund t\u00eb kontrolloj\u00eb koh\u00ebn e nisjes s\u00eb kontejnerit - k\u00ebtu gjith\u00e7ka varet nga ofruesi.<\/p>\n<p>Nisja e ftoht\u00eb mund t\u00eb kthehet n\u00eb nj\u00eb t\u00eb ngroht\u00eb, kur funksioni rip\u00ebrdor nj\u00eb konteiner t\u00eb hapur nga nj\u00eb ngjarje e m\u00ebparshme. Ky rast do t\u00eb ndodh\u00eb n\u00eb tri raste:<\/p>\n<ul>\n<li>n\u00ebse klient\u00ebt e p\u00ebrdorin shpesh sh\u00ebrbimin dhe rritet numri i thirrjeve p\u00ebr funksionin;<\/li>\n<li>n\u00ebse ofruesi, platforma ose korniza lejojn\u00eb mbajtjen e disa kontejner\u00ebve t\u00eb hapur gjat\u00eb gjith\u00eb koh\u00ebs;<\/li>\n<li>n\u00ebse zhvilluesi aktivizon funksionet me nj\u00eb orar (p.sh. \u00e7do 3 minuta).<\/li>\n<\/ul>\n<p>\nP\u00ebr shum\u00eb aplikacione, nisja e ftoht\u00eb nuk \u00ebsht\u00eb nj\u00eb problem. K\u00ebtu duhet t\u00eb fokusohemi n\u00eb llojin dhe detyrat e sh\u00ebrbimit. Vonesa e nisjes p\u00ebr nj\u00eb sekond\u00eb nuk \u00ebsht\u00eb gjithmon\u00eb kritike p\u00ebr nj\u00eb aplikacion biznesi, por mund t\u00eb b\u00ebhet kritike p\u00ebr sh\u00ebrbimet mjek\u00ebsore. Probabilisht, n\u00eb k\u00ebt\u00eb rast, qasja pa server nuk do t\u00eb jet\u00eb e p\u00ebrshtatshme m\u00eb.<\/p>\n<p><em>Nj\u00eb nga disavantazhet e Serverless quhet koha e shkurt\u00ebr e jet\u00ebs s\u00eb funksionit (koha e skadimit, brenda s\u00eb cil\u00ebs funksioni duhet t\u00eb p\u00ebrfundoj\u00eb).<\/em><\/p>\n<p>Por, n\u00ebse pritet t\u00eb punohet me detyra t\u00eb gjata, mund t\u00eb p\u00ebrdoret nj\u00eb arkitektur\u00eb hibride - t\u00eb kombinohet Serverless me nj\u00eb teknologji tjet\u00ebr.<\/p>\n<p><em>Nuk t\u00eb gjitha sistemet do t\u00eb jen\u00eb n\u00eb gjendje t\u00eb punojn\u00eb sipas skem\u00ebs Serverless.<\/em><\/p>\n<p>Disa aplikacione ende do t\u00eb ruajn\u00eb t\u00eb dh\u00ebnat dhe gjendjen gjat\u00eb performanc\u00ebs. Disa arkitektura do t\u00eb mbeten monolitike, nd\u00ebrsa disa funksione do t\u00eb jen\u00eb me jet\u00ebgjat\u00ebsi. Megjithat\u00eb, (si\u00e7 ndodhi dikur me teknologjit\u00eb n\u00eb re, dhe m\u00eb von\u00eb me kontejner\u00ebt), Serverless \u00ebsht\u00eb nj\u00eb teknologji me nj\u00eb t\u00eb ardhme t\u00eb madhe.<\/p>\n<p>N\u00eb k\u00ebt\u00eb kontekst, do t\u00eb doja t\u00eb kaloj n\u00eb pyetjes p\u00ebr aplikimin e qasjes Serverless.<\/p>\n<h2>Nga k\u00ebndv\u00ebshtrimi i aplikimit<\/h2>\n<p>\nGjat\u00eb vitit 2018, p\u00ebrqindja e p\u00ebrdorimit t\u00eb Serverless <noindex><a rel=\"nofollow\" href=\"https:\/\/media.flexera.com\/documents\/rightscale-2019-state-of-the-cloud-report-from-flexera.pdf\">u rrit n\u00eb nj\u00eb dhe nj\u00eb gjysm\u00eb her\u00eb<\/a><\/noindex>. Nd\u00ebrmjet kompanive q\u00eb tashm\u00eb e kan\u00eb implementuar teknologjin\u00eb n\u00eb sh\u00ebrbimet e tyre, jan\u00eb gjigant\u00ebt e tregut si Twitter, PayPal, Netflix, T-Mobile, Coca-Cola. N\u00eb t\u00eb nj\u00ebjt\u00ebn koh\u00eb, duhet t\u00eb kuptohet se Serverless nuk \u00ebsht\u00eb nj\u00eb ila\u00e7 universal, por nj\u00eb mjet p\u00ebr zgjidhjen e nj\u00eb s\u00ebr\u00eb problemi:<\/p>\n<ul>\n<li><strong>T\u00eb pak\u00ebsosh papun\u00ebsin\u00eb e burimeve.<\/strong> Nuk duhet ta mbani vazhdimisht nj\u00eb makin\u00eb virtuale p\u00ebr sh\u00ebrbime, p\u00ebr t\u00eb cilat b\u00ebhet pak k\u00ebrkes\u00eb.<\/li>\n<li><strong>T\u00eb \u043e\u0431\u0440\u0430\u0431\u043e\u0442oni t\u00eb dh\u00ebnat \u00abn\u00eb fluturim\u00bb.<\/strong> T\u00eb kompresoni p\u00ebrmbajtjet e imazheve, t\u00eb prer\u00eb sfondin, t\u00eb ndryshoni kodimin e videove, t\u00eb punoni me sensor\u00ebt IoT, t\u00eb kryeni operacione matematikore.\n<\/li>\n<li><strong>T\u00eb \u00abngjiteni\u00bb sh\u00ebrbime t\u00eb tjera s\u00eb bashku.<\/strong> Git-repozitor me programe t\u00eb brendshme, chatbot n\u00eb Slack me Jira dhe me kalendarin.<\/li>\n<li><strong>T\u00eb balanconi ngarkes\u00ebn.<\/strong> K\u00ebtu do t\u00eb ndalem m\u00eb n\u00eb holl\u00ebsi.<\/li>\n<\/ul>\n<p>\nSupozoni se ka nj\u00eb sh\u00ebrbim, n\u00eb t\u00eb cilin hyn\u00eb 50 persona. P\u00ebrdoret nj\u00eb makin\u00eb virtuale me harduer t\u00eb dob\u00ebt. Her\u00eb pas here, ngarkesa n\u00eb sh\u00ebrbim rritet shum\u00eb her\u00eb. At\u00ebher\u00eb, hardueri i dob\u00ebt nuk arrin t'i p\u00ebrballoj\u00eb.<\/p>\n<p>Mund t\u00eb aktivizoni nj\u00eb balancues ngarkesash n\u00eb sistem, i cili do t\u00eb shp\u00ebrndaj\u00eb ngarkes\u00ebn, le t\u00eb themi, n\u00eb tri makina virtuale. N\u00eb k\u00ebt\u00eb faz\u00eb nuk mund t\u00eb parashikojm\u00eb sakt\u00ebsisht ngarkes\u00ebn, prandaj mbajm\u00eb disa burime t\u00eb aktivizuara \u00abp\u00ebr rezerv\u00eb\u00bb. Dhe paguajm\u00eb m\u00eb shum\u00eb p\u00ebr koh\u00ebn e papun\u00eb. <\/p>\n<p>N\u00eb k\u00ebt\u00eb situat\u00eb, mund t\u00eb optimizojm\u00eb sistemin p\u00ebrmes nj\u00eb qasjeje hibride: pas balancuesit t\u00eb ngarkes\u00ebs l\u00ebm\u00eb nj\u00eb makin\u00eb virtuale dhe vendosim nj\u00eb lidhje n\u00eb Serverless Endpoint me funksione. N\u00ebse ngarkesa kalon pragun - balancuesi aktivizon instanca funksionesh, t\u00eb cilat marrin p\u00ebrsip\u00ebr nj\u00eb pjes\u00eb t\u00eb p\u00ebrpunimit t\u00eb k\u00ebrkesave.<\/p>\n<p><img decoding=\"async\" alt=\"Serverless selon rack\" src=\"\/wp-content\/uploads\/2019\/05\/79262c19faba29a4639a05e3097f7914.jpg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\nK\u00ebshtu, Serverless mund t\u00eb p\u00ebrdoret atje ku duhet t\u00eb p\u00ebrpunoni shpesh, por intensivisht, nj\u00eb num\u00ebr t\u00eb madh k\u00ebrkesash. N\u00eb k\u00ebt\u00eb rast, \u00ebsht\u00eb m\u00eb e lir\u00eb t\u00eb aktivizoni disa funksione p\u00ebr 15 minuta sesa t\u00eb mbani vazhdimisht nj\u00eb makin\u00eb virtuale ose nj\u00eb server.<\/p>\n<p>Pavar\u00ebsisht p\u00ebrfitimeve t\u00eb llogaritjeve pa server, para se t\u00eb implementoni duhet s\u00eb pari t\u00eb vler\u00ebsoni logjik\u00ebn e aplikacionit dhe t\u00eb kuptoni se cilat probleme mund t\u00eb zgjidh\u00eb Serverless n\u00eb rastin e ve\u00e7ant\u00eb. <\/p>\n<h2>Serverless dhe Selectel<\/h2>\n<p>\nN\u00eb Selectel ne tashm\u00eb <noindex><a rel=\"nofollow\" href=\"https:\/\/kb.selectel.ru\/42078178.html?utm_source=habr.com&amp;amp;utm_medium=referral&amp;amp;utm_campaign=Functions_Serverless_Article_170519\">kemi leht\u00ebsuar pun\u00ebn me Kubernetes<\/a><\/noindex> n\u00ebp\u00ebrmjet panelit ton\u00eb t\u00eb menaxhimit. Tani po zhvillojm\u00eb platform\u00ebn ton\u00eb FaaS. Duam q\u00eb zhvilluesit t\u00eb mund t\u00eb zgjidhin problematikat e tyre p\u00ebrmes Serverless p\u00ebrmes nj\u00eb nd\u00ebrfaqeje t\u00eb p\u00ebrshtatshme dhe fleksib\u00ebl.<\/p>\n<p>N\u00ebse keni ide se si duhet t\u00eb jet\u00eb platforma ideale FaaS dhe si d\u00ebshironi t\u00eb p\u00ebrdorni Serverless n\u00eb projektet tuaja, ndani ato n\u00eb komente. Ne do t\u00eb marrim parasysh d\u00ebshirat tuaja gjat\u00eb zhvillimit t\u00eb platform\u00ebs.<br \/>\n\u00a0<br \/>\nMaterialet e p\u00ebrdorura n\u00eb artikull:<\/p>\n<ul>\n<li><noindex><a rel=\"nofollow\" href=\"https:\/\/www.rightscale.com\/lp\/state-of-the-cloud\">P\u00ebrqindja e p\u00ebrdorimit t\u00eb Serverless \u00ebsht\u00eb rritur nj\u00eb ndihm\u00eb e nj\u00eb her\u00eb (raporti i plot\u00eb RightScale)<\/a><\/noindex><\/li>\n<li><noindex><a rel=\"nofollow\" href=\"https:\/\/mikhail.io\/serverless\/coldstarts\/aws\/\">Si koh\u00ebzgjatja e nj\u00eb starti t\u00eb ftoht\u00eb varet nga gjuha e aplikacionit<\/a><\/noindex><\/li>\n<\/ul>\n<p>Burimi: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/selectel\/blog\/452266\/\">habr.com<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>Serverless \u2015 \u044d\u0442\u043e \u043d\u0435 \u043f\u0440\u043e \u0444\u0438\u0437\u0438\u0447\u0435\u0441\u043a\u043e\u0435 \u043e\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0438\u0435 \u0441\u0435\u0440\u0432\u0435\u0440\u043e\u0432. \u042d\u0442\u043e \u043d\u0435 \u00ab\u0443\u0431\u0438\u0439\u0446\u0430\u00bb \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u043e\u0432 \u0438 \u043d\u0435 \u043c\u0438\u043c\u043e\u043b\u0435\u0442\u043d\u044b\u0439 \u0442\u0440\u0435\u043d\u0434. \u042d\u0442\u043e \u043d\u043e\u0432\u044b\u0439 \u043f\u043e\u0434\u0445\u043e\u0434 \u043a \u043f\u043e\u0441\u0442\u0440\u043e\u0435\u043d\u0438\u044e \u0441\u0438\u0441\u0442\u0435\u043c \u0432 \u043e\u0431\u043b\u0430\u043a\u0435. \u0412 \u0441\u0435\u0433\u043e\u0434\u043d\u044f\u0448\u043d\u0435\u0439 \u0441\u0442\u0430\u0442\u044c\u0435 \u043a\u043e\u0441\u043d\u0435\u043c\u0441\u044f \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u044b Serverless-\u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0439, \u043f\u043e\u0441\u043c\u043e\u0442\u0440\u0438\u043c, \u043a\u0430\u043a\u0443\u044e \u0440\u043e\u043b\u044c \u0438\u0433\u0440\u0430\u0435\u0442 \u043f\u0440\u043e\u0432\u0430\u0439\u0434\u0435\u0440 Serverless-\u0443\u0441\u043b\u0443\u0433\u0438 \u0438 open-source \u043f\u0440\u043e\u0435\u043a\u0442\u044b. \u0412 \u043a\u043e\u043d\u0446\u0435 \u043f\u043e\u0433\u043e\u0432\u043e\u0440\u0438\u043c \u043e \u0432\u043e\u043f\u0440\u043e\u0441\u0430\u0445 \u043f\u0440\u0438\u043c\u0435\u043d\u0435\u043d\u0438\u044f Serverless. \u042f \u0445\u043e\u0447\u0443 \u043d\u0430\u043f\u0438\u0441\u0430\u0442\u044c \u0441\u0435\u0440\u0432\u0435\u0440\u043d\u0443\u044e \u0447\u0430\u0441\u0442\u044c \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f (\u0434\u0430 \u0445\u043e\u0442\u044c \u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442-\u043c\u0430\u0433\u0430\u0437\u0438\u043d\u0430). [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":25594,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-33935","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=\"Serverless \u2015 \u044d\u0442\u043e \u043d\u0435 \u043f\u0440\u043e \u0444\u0438\u0437\u0438\u0447\u0435\u0441\u043a\u043e\u0435 \u043e\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0438\u0435 \u0441\u0435\u0440\u0432\u0435\u0440\u043e\u0432.\" \/>\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\/serverless-po-stoechkam\" \/>\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\udd47Serverless \u043f\u043e \u0441\u0442\u043e\u0435\u0447\u043a\u0430\u043c | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"Serverless \u2015 \u044d\u0442\u043e \u043d\u0435 \u043f\u0440\u043e \u0444\u0438\u0437\u0438\u0447\u0435\u0441\u043a\u043e\u0435 \u043e\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0438\u0435 \u0441\u0435\u0440\u0432\u0435\u0440\u043e\u0432.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/sq\/blog\/administrirovanie\/serverless-po-stoechkam\" \/>\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-31T18:55:27+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2019-10-31T18:55:27+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\udd47Serverless me regjistrat | ProHoster","description":"Serverless \u2015 nuk ka t\u00eb b\u00ebj\u00eb me munges\u00ebn fizike t\u00eb server\u00ebve.","canonical_url":"https:\/\/prohoster.info\/sq\/blog\/administrirovanie\/serverless-po-stoechkam","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\udd47Serverless \u043f\u043e \u0441\u0442\u043e\u0435\u0447\u043a\u0430\u043c | ProHoster","og:description":"Serverless \u2015 \u044d\u0442\u043e \u043d\u0435 \u043f\u0440\u043e \u0444\u0438\u0437\u0438\u0447\u0435\u0441\u043a\u043e\u0435 \u043e\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0438\u0435 \u0441\u0435\u0440\u0432\u0435\u0440\u043e\u0432.","og:url":"https:\/\/prohoster.info\/sq\/blog\/administrirovanie\/serverless-po-stoechkam","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-31T18:55:27+00:00","article:modified_time":"2019-10-31T18:55:27+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"33935","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-21 17:17:19","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-03-01 02:31:21","updated":"2026-01-21 17:17:19","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\/33935","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=33935"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/posts\/33935\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/media\/25594"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/media?parent=33935"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/categories?post=33935"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/sq\/wp-json\/wp\/v2\/tags?post=33935"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}