{"id":155,"date":"2015-07-22T16:41:43","date_gmt":"2015-07-22T14:41:43","guid":{"rendered":"http:\/\/flexray.pl\/?p=155"},"modified":"2015-10-13T16:03:57","modified_gmt":"2015-10-13T14:03:57","slug":"microsecond-cloud-computing-nowym-trendem-w-chmurze","status":"publish","type":"post","link":"http:\/\/flexray.pl\/microsecond-cloud-computing-nowym-trendem-w-chmurze\/","title":{"rendered":"Microsecond Cloud Computing nowym trendem w chmurze"},"content":{"rendered":"
<\/p>\n
Artyku\u0142 ten pojawi\u0142 si\u0119 w ICT Professional 08\/2015 w skr\u00f3conej formie. Poni\u017cej zamieszczam pe\u0142n\u0105 tre\u015b\u0107.<\/em><\/p>\n Du\u017co w ostatnim czasie s\u0142yszy si\u0119 o migracji aplikacji z modelu klasycznego – wewn\u0105trz maszyn wirtualnych – do \u015brodowisk opartych o kontenery. Za\u0142o\u017ceniem jest oddzielenie si\u0119 od warstwy systemu operacyjnego i przechowywanie tylko kluczowych danych w postaci bibliotek oraz plik\u00f3w niezb\u0119dnych do uruchomienia aplikacji wewn\u0105trz logicznie odseparowanych od siebie wirtualnych kontener\u00f3w. Mog\u0105 one by\u0107\u00a0 w prosty spos\u00f3b przenoszone i wersjonowane np. po wgraniu kolejnego wydania aplikacji tworzymy nowy punkt odniesienia, do kt\u00f3rego w kr\u00f3tkim czasie mo\u017cemy wr\u00f3ci\u0107 gdyby co\u015b posz\u0142o nie tak.\u00a0 Dzi\u0119ki temu zespo\u0142y deweloperskie mog\u0105 w wi\u0119kszym stopniu skupi\u0107 si\u0119 na tworzeniu aplikacji, pozostawiaj\u0105c utrzymanie system\u00f3w operacyjnych zespo\u0142om za to odpowiedzialnym. Nie uwalnia to jednak programist\u00f3w od my\u015blenia o swoim \u015brodowisku uruchomieniowym oraz dba\u0142o\u015bci o jego aktualno\u015b\u0107 i bezpiecze\u0144stwo. Wszystko po to, by kod, kt\u00f3ry przygotuj\u0105, dzia\u0142a\u0142 dok\u0142adnie tak samo jak w \u015brodowisku testowym.<\/p>\n Gdy Amazon Web Services<\/a><\/strong> 14 listopada 2014 r. og\u0142osi\u0142 uruchomienie wersji beta swojej unikalnej us\u0142ugi Lambda<\/a><\/strong>, nikt nie s\u0142ysza\u0142 o rozliczaniu us\u0142ug w chmurze na poziomie milisekundowym. Nikt nie my\u015bla\u0142 o tym, \u017ce b\u0119dzie m\u00f3g\u0142 uruchamia\u0107 sw\u00f3j kod bez zastanawiania si\u0119 na jakim serwerze aplikacja zosta\u0142a wdro\u017cona. Czym zatem jest Lambda? Mo\u017cna \u015bmia\u0142o stwierdzi\u0107, \u017ce jest us\u0142ug\u0105 polegaj\u0105c\u0105 na wypo\u017cyczaniu mocy obliczeniowej na wykonanie konkretnego bloku kodu\u00a0w postaci funkcji\u00a0(JavaScript lub Java). Co wi\u0119cej, rozliczanie odbywa si\u0119 na podstawie d\u0142ugo\u015bci trwania takiego wywo\u0142ania oraz ilo\u015bci pami\u0119ci RAM, kt\u00f3ra tej funkcji zosta\u0142a przydzielona. Us\u0142uga ta dba o wysok\u0105 dost\u0119pno\u015b\u0107, automatyczne skalowanie i przydzielanie zasob\u00f3w. Kod uruchamiany jest na \u015brodowisku przygotowanym przez ekspert\u00f3w, kt\u00f3rzy zadbali o bezpiecze\u0144stwo, separacj\u0119 mi\u0119dzy klientami i odpowiednie wersje wszystkich komponent\u00f3w uruchomieniowych. Dzi\u0119ki temu Lambda jest us\u0142ug\u0105 o zerowym poziomie administracji. Skupiamy si\u0119 jedynie na kodzie oraz logice biznesowej, czyli na tym co jest dla nas najbardziej istotne.<\/p>\n Przyjrzyjmy si\u0119 przyk\u0142adowej witrynie internetowej, kt\u00f3rej g\u0142\u00f3wnym celem jest przechowywanie i prezentowanie fotografii. U\u017cytkownicy maj\u0105 mo\u017cliwo\u015b\u0107 wykorzystania przegl\u0105darki internetowej (HTTPs) lub aplikacji mobilnej (REST) do umieszczania, wy\u015bwietlania, aktualizowania i usuwania zdj\u0119\u0107. Wykorzystuj\u0105c gotowe funkcjonalno\u015bci jakie dostarczaj\u0105 Lambda<\/a><\/strong>, API Gateway<\/a><\/strong>, S3<\/a><\/strong>, Route53<\/a><\/strong> i DynamoDB<\/a><\/strong> – budujemy nasz\u0105 aplikacj\u0119 bez wykorzystania maszyn wirtualnych czy nawet kontener\u00f3w. Mo\u017cliwe jest to dzi\u0119ki po\u0142\u0105czeniu zdarze\u0144 (ang. event<\/em>) inicjowanych przez u\u017cytkownik\u00f3w z odpowiednimi funkcjami Lambda. Wywo\u0142ywa\u0107 je mog\u0105 poni\u017csze us\u0142ugi AWS:<\/p>\n Z powodu pe\u0142nej dowolno\u015bci w postaci wykonywanego kodu\u00a0 mo\u017cemy kolejnymi funkcjami umie\u015bci\u0107 zdj\u0119cia na S3, dokona\u0107 ich automatycznego skalowania, za\u015b meta-dane przekaza\u0107 do tabeli DynamoDB.<\/p>\nLambda \u2013 przysz\u0142o\u015b\u0107 chmury<\/h3>\n
Jak to wygl\u0105da w praktyce? Czyli Microsecond Cloud Computing<\/h3>\n
\n