Nieraz nasi klienci proszą, byśmy skorzystali z hostingu znajdującego się w kraju zlokalizowanym tam, gdzie znajduje się największa grupa docelowa serwisu klienta. Chodzi oczywiście o zmniejszenie czasu ładowania strony, a mówiąc bardziej nerdowskim językiem – zredukowanie latencji do minimum i maksymalne zmniejszenie TTFB (Time to first byte). Czasem jednak ciężko wskazać jedną konkretną serwerownię, czasem mija się to z celem.
A gdyby lokalizacja nie była problemem?
Moi drodzy, odpalcie na głośnikach utwór Lady Gagi „Edge of glory” i posłuchajcie o Edge computingu.
O co chodzi w tym całym edżu? Wyobraźcie sobie, że robicie deploy strony bądź aplikacji i magicznie Wasz serwis dostępny jest nie z poziomu jednej serwerowni, ale ze wszystkich centr danych providera. Co więcej użytkownik korzystający z Waszego serwisu będzie otrzymywał jego „wersję“ znajdującą się najbliżej jego lokalizacji. Czyli jeżeli mieszkam w Łodzi to najpewniej dane, które zostaną załadowane z Edge’a będą pochodziły z centrum danych z Warszawy, a nie np. z Londynu.
Dzięki temu globalna firma, która świadczy usługi na całym świecie, nie jest skazana na ograniczenie się do jednego miejsca na naszym globie.
Oczywiście sam przykład ze stroną czy większością webaplikacji jest dosyć trywialny. Tutaj częściej wąskim gardłem jest moc samego serwera, to jak zbudowany jest serwis czy szybkość łącza internetowego użytkownika. Wtedy, ograniczenia geolokalizacyjne schodzą na drugi plan. Są jednak zastosowania Edge’a, które sprawiają, że jest on po prostu niezbędny.
Jakie korzyści z edge’a będzie miała twoja Tesla, lodówka i roomba
Edge jest niezbędny, kiedy potrzebujemy odpowiedzi serwera natychmiastowo. Naprawdę natychmiastowo. Przykładem tutaj mogą być samochody autonomiczne, których systemy w jednej milisekundzie muszą przetworzyć tysiące danych. By uzyskać pełną autonomiczność, nie tylko konieczne jest udoskonalenie AI odpowiedzialnego za sterowanie samochodami, ale także rozwiązanie problemu maksymalnie szybkiego systemu komunikacji. Potrzebujemy tutaj dwóch rzeczy: rozwiniętej infrastruktury sieci 5g (szybkość sieci) oraz infrastruktury opartej o edge computing (redukcja opóźnień sieci). I tyle, drzemki za kierownicą, podczas dojazdu do pracy staną się możliwe.
Kolejny problem, który rozwiązują centra danych ulokowane na „brzegu sieci” to konieczność obsługi mnogości urządzeń.
Nie znam dokładnych statystyk, ale w krajach rozwiniętych na jednego człowieka przypada kilka urządzeń, które łączą się z siecią – nie tylko są to komputery, tablety i smartfony ale również wszelkie urządzenia domowe typu smart (odkurzacze, lampki nocne, telewizory, ekspresy do kawy czy lodówki) i wszystko inne co możemy zaliczyć do kategorii IoT (huby obsługujące urządzenia, włączniki, czujniki, itd). Edge w tym wypadku zapewnia nam rozproszenie mini centrów danych, dzięki czemu requesty generowane przez nas będą szybko obsługiwane i nie dojdzie do przeciążeń poszczególnych dużych centr.
Edge & Webdevelopment
A czy są jakieś zastosowania edge computingu, które mogą usprawnić pracę nam, developerom. Oczywiście! Już teraz możemy skonfigurować nasze IDE w taki sposób, by część procesów była przetwarzana w chmurze. Może to być na przykład przetwarzanie plików naszej aplikacji za pomocą webpacka. Im większa aplikacja, tym proces buildowania, transpilacji plików staje się dłuższy, nieraz staje się także mocno zasobożerny dla naszej maszyny. Jeżeli po odpaleniu takie procesu, nasze wiatraki wchodzą w poziom głośności mogący pozbawić nas słuchu, a temperatura powoduje, że trzymanie komputera na kolanach zaraz skończy się dla nas pobytem w szpitalu na oddziale ciężkich poparzeń, warto zastanowić się nad delegacją tego typu zadań do chmury. W połączeniu z Edge computingiem, development stanie się jeszcze szybszy i nieraz kilkukrotnie bardziej efektywny, niż gdybyśmy wszystkie procesy mieli odpalone lokalnie. I to nie tylko procesy, w końcu już istnieją rozwiązania w których całe IDE mamy w chmurze – https://github.com/features/codespaces
Mam nadzieje, że udzielił Wam się hype związany z edgem. No dobrze, ale jak zacząć? Wróćmy do tego najprostszego case’a, który opisalem na samym początku. Jeżeli zajmujecie się tworzeniem stron statycznych, opartych np. na Gatsbym albo Gridsome, to polecam skorzystanie z Cloudflare Pages: https://pages.cloudflare.com. Usługa ta stała się publicznie dostępna z początkiem tego roku, ale bardzo szybko zyskuje na popularności i z czasem może stać się realną konkurencją do takich popularnych serwisów jak Netlify czy Vercela. Twórcy tej platformy w taki sposób nas zachęcają: „Run your site on the Cloudflare edge, milliseconds from end users – up to 115% faster than competing platforms.”. Brzmi to bardzo zachęcająco, ja sam niebawem będę migrować kilka stron do Cloudflare’a, a efekty tych przenosin na pewno opiszę w którymś z kolejnych artykułów 🙂
Dodaj komentarz