Hosting dla niezależnych programistów: PaaS, VPS, chmura i więcej

Opublikowany: 2022-03-11

Na pierwszy rzut oka branża hostingowa może nie wydawać się ekscytująca, ale to jęki w centrach danych na całym świecie podtrzymują naszą branżę. Są one, dosłownie, kręgosłupem Internetu i jako takie umożliwiają wszystko: od witryn e-commerce po inteligentne aplikacje mobilne dla naszych najnowszych zabawek. Ciężkie podnoszenie odbywa się w nudnych centrach danych, a nie na naszych krzykliwych smartfonach i cienkich notebookach.

Niezależnie od tego, czy tworzysz wirtualną witrynę sklepową, wdrażasz aplikację, czy po prostu przeprowadzasz testy i rozwój innych firm, prawdopodobnie potrzebujesz siły serwera. Dobrą wiadomością jest to, że jest w czym wybierać. Branża hostingowa może nie jest głośna ani ekscytująca, ale nigdy nie śpi; to świat, w którym psy jedzą psy, z bezwzględnymi cenami, wieloma innowacjami za kulisami i cyklicznymi aktualizacjami sprzętu. Cloud, IaaS i PaaS zmieniły sposób działania wielu programistów i firm, a są to stosunkowo nowe innowacje.

W tym poście przyjrzę się podstawom hostingu z perspektywy niezależnego programisty: co wybrać, a od czego trzymać się z daleka. Dlaczego podkreśliłem niezależnych inżynierów oprogramowania? Cóż, ponieważ wielu potrzebuje własnego środowiska deweloperskiego , jednocześnie pracując z różnymi klientami. Niestety oznacza to również, że zwykle nie mają nic do powiedzenia, jeśli chodzi o wdrożenie. Na przykład to od klienta zależy, w jaki sposób i gdzie dana aplikacja internetowa będzie hostowana, a freelancer zatrudniony na krótki okres zwykle nie ma nic do powiedzenia w tej decyzji. Jest to kwestia zarządzania, więc nie zajmę się tym w tym poście poza stwierdzeniem, że nawet freelancerzy muszą być świadomi dostępnych opcji. Mogą mieć związane ręce, ale w niektórych przypadkach klienci poproszą o wkład, a inżynierowie oprogramowania powinni pomóc im w podjęciu świadomej decyzji. Na początku tego tygodnia omówiliśmy jeden ze sposobów zacierania granicy między rozwojem a operacjami: DevOps. Jeśli przegapiłeś ten post, zachęcam do zapoznania się z nim i zobaczenia, dlaczego integracja DevOps może mieć wpływ również na hosting.

Na szczęście branża hostingowa stara się zaspokoić zapotrzebowanie deweloperów, więc wiele firm hostingowych oferuje plany dostosowane do deweloperów. Ale czekaj, czy wszystkie plany hostingowe nie są tak samo dobre dla programistów, jak te plany „deweloperskie”? Czy to tylko sprytny marketing i tania sztuczka SEO?

Filtrowanie hałasu

Jak więc znaleźć odpowiedni plan hostingowy? Google jest oczywistym miejscem do rozpoczęcia, więc spróbowałem wyszukać „hosting dla programistów”. Do tej pory prawdopodobnie widzisz, dokąd z tym zmierzam. To konkretne wyszukiwanie przyniosło 85 milionów wyników i wystarczającą liczbę reklam, by akcjonariusze Google otworzyli butelkę szampana.

Jeśli jesteś inżynierem oprogramowania i szukasz dobrego hostingu, szukanie odpowiedzi w Google nie jest dobrym pomysłem. Dlatego.

Jeśli jesteś inżynierem oprogramowania i szukasz dobrego hostingu, szukanie odpowiedzi w Google nie jest dobrym pomysłem. Dlatego.
Ćwierkać

Jest ku temu bardzo dobry powód i skontaktowałem się z kilkoma specjalistami od hostingu, aby lepiej zrozumieć, co dzieje się za kulisami.

Adam Wood, ekspert od hostingu i autor Ultimate Guide to Web Hosting wyjaśnił:

Trzymaj się z dala od Google „hosting dla programistów”. To pokazuje hostów, którzy wydali dużo pieniędzy na SEO, a nie dużo energii na budowanie doskonałej platformy.

Wood potwierdziło to, co większość z nas już wiedziała: wiele planów „hostingu dla programistów” to sztuczki marketingowe. Podkreślił jednak, że często oferują doskonałe plany hostingowe same w sobie.

„Hosting jest prawdziwy, część dla programistów to tylko marketing” – dodał.

Chociaż Wood pracuje dla witryny z recenzjami hostingu WhoIsHostingThis, uważa, że ​​programiści szukający nowego hosta powinni polegać na czymś więcej niż na wyszukiwaniu w Internecie.

Zamiast uciekać się do Google, najlepszym sposobem na znalezienie idealnego planu dla potrzeb programistów jest poczta pantoflowa i staromodne badania:

  • Sprawdź główne blogi techniczne od programistów korzystających z tego samego stosu co Ty.
  • Skontaktuj się ze społecznością i poproś o radę.
  • Przyjrzyj się bliżej planom hostingowym oferowanym przez Twojego obecnego hosta. Szukaj narzędzi do szybkiego wdrażania, integracji z innymi narzędziami programistycznymi, wsparcia w zakresie testowania i tak dalej.
  • Upewnij się, że masz jasne potrzeby i priorytety; nie ma miejsca na dwuznaczność.
  • Oprzyj swoją decyzję na aktualnych informacjach.

Małe gospodarze mogą mieć problemy z nadążaniem

Ale co z setkami tysięcy planów hostingowych dostosowanych do programistów? Cóż, tak naprawdę nie są wyjątkowe iw większości przypadków możesz uzyskać podobny poziom usług i wsparcia na planie hostingowym „zwykłej Jane”.

Czy istnieje w ogóle potrzeba tych małych i niedrogich planów? Tak jest. Chociaż doświadczeni weterani prawdopodobnie nie będą z nich korzystać, nadal stanowią element układanki, pozwalając małym programistom, hobbystom i studentom tanio doskonalić swoje umiejętności, korzystając ze wspólnych planów hostingowych, które kosztują mniej niż członkostwo w siłowni. Nikt nie będzie hostował kilku lokalnych witryn hobbystycznych na AWS, a dzieci projektujące swoje pierwsze witryny WordPress nie dostaną VPS. W większości przypadków skorzystają z najtańszej dostępnej opcji.

Tanie, współdzielone plany hostingowe są chlebem powszednim wielu strojów hostingowych, więc możesz je otrzymać od lidera branży lub małego, regionalnego hosta. Problem z małymi hostami polega na tym, że większość z nich polega na konwencjonalnym hostingu odsprzedawców lub przepakowywaniu hostingu w chmurze od AWS i innych gigantów chmurowych. Plany te są następnie sprzedawane jako wspólne plany hostingowe, plany VPS lub plany odsprzedawców.

Konkluzja: Jeśli coś pójdzie nie tak z twoim małym planem sprzedawcy, do kogo zadzwonisz w środku nocy?

Małe hosty zanikają i jest to mniej więcej nieodwracalny trend. Centra danych są niesamowicie kapitałochłonne; są internetowym odpowiednikiem elektrowni, stają się coraz większe i wydajniejsze, a jednocześnie konkurują o niższe ceny i lepszą obsługę. Wiąże się to oczywiście z dużymi inwestycjami, od ogromnych obiektów z doskonałym bezpieczeństwem i wsparciem na miejscu po klimatyzację, nadmiarowe zasilanie i niesamowicie kosztowną infrastrukturę internetową. Ponadto hosty potrzebują stałego dopływu najnowocześniejszego sprzętu. Flagowe dyski Xeon i SAS SSD nie są tanie.

W grze w centrum danych po prostu nie ma miejsca dla małych graczy.

Mali sprzedawcy nadal mają do odegrania rolę, zwykle oferując usługi niszowe lub lokalizację, w tym lokalne wsparcie w różnych językach, które nie są obsługiwane przez dużego hosta. Jednak większość z tych nisz i potencjalnych zalet nie ma większego znaczenia dla przeciętnego dewelopera.

Rewolucja PaaS

Mniej niż dziesięć lat temu branża obracała się wokół hostingu dedykowanego i współdzielonego i nie sądzę, abym musiał wyjaśniać, czym one są i jak działają.

Usługi w chmurze weszły do ​​walki kilka lat temu, oferując bezprecedensową niezawodność i skalowalność. Najnowsze trendy w branży oferują programistom wiele ekscytujących możliwości w postaci zorientowanych na programistów ofert platformy jako usługi (PaaS).

PaaS to nowy czarny kolor dla wielu programistów. Jak wypada w porównaniu z tradycyjnym hostingiem?

PaaS to nowy czarny kolor dla wielu programistów. Jak wypada w porównaniu z tradycyjnym hostingiem?
Ćwierkać

Większość programistów zna już duże usługi PaaS, takie jak Heroku, Pantheon i OpenShift. Wielu z tych dostawców zaczęło funkcjonować jako platformy dla określonej struktury lub aplikacji. Na przykład Heroku był hostem Ruby-on-Rails, podczas gdy Pantheon był dostawcą hostingu zarządzanego Drupal, który rozszerzył się na WordPress.

Usługi PaaS można postrzegać jako kolejny logiczny krok w ewolucji hostingu zarządzanego. Jednak w przeciwieństwie do hostingu zarządzanego, PaaS jest skierowany prawie wyłącznie do programistów. Oznacza to, że usługi PaaS są dostosowane do potrzeb poszczególnych programistów i zespołów. Nie chodzi tylko o hosting; PaaS polega na integracji z preferowanym przez zespół przepływem pracy poprzez włączenie szeregu funkcji zaprojektowanych w celu zwiększenia produktywności. Dostawcy PaaS zwykle oferują szereg przydatnych funkcji:

  • Możliwość pracy z innymi narzędziami programistycznymi, takimi jak GitHub.
  • Obsługuje narzędzia Continuous Integration (CI), takie jak Drone.io, Jenkins i Travis CI.
  • Umożliwia tworzenie wielu klonowalnych środowisk na potrzeby programowania, testowania, wersji beta i produkcji.
  • Obsługuje różne zestawy testów automatycznych.

Co najważniejsze, wielu dostawców PaaS oferuje bezpłatne konta programistów . Zarówno Heroku, jak i Pantheon pozwalają programistom wypróbować platformę, co zachęca ich do późniejszego wykorzystania jej w projektach. Ponadto, jeśli jeden z tych eksperymentalnych projektów wystartuje, programiści prawdopodobnie pozostaną na platformie.

To sprytny marketing, a także oferta, której wielu programistów nie może zignorować. PaaS jest tutaj, aby pozostać, a jeśli jeszcze się nie zanurzyłeś, być może nadszedł czas, aby przeprowadzić trochę badań i zobaczyć, co tam jest.

Tradycyjne oferty hostingu i chmury

Hosting dedykowany i współdzielony nigdzie się nie wybiera. Były ostoją hostingu przez dwie dekady i nadal są silne. Wiele firm polega na serwerach dedykowanych lub serwerach VPS w swoich codziennych operacjach. Niektóre firmy decydują się na korzystanie z chmury lub PaaS do określonych zadań wraz z istniejącą infrastrukturą serwerową.

W niektórych sytuacjach PaaS może okazać się zbyt drogi, ale potężne serwery dedykowane też nie są tanie. Dobrą wiadomością jest to, że PaaS może dać dobry obraz rodzaju zasobów, których będziesz potrzebować, zanim zdecydujesz się przenieść na serwer dedykowany. Co więcej, usługi PaaS zwykle oferują lepszą obsługę niż zarządzane serwery VPS lub serwery dedykowane.

Oczywiście wszystko to jest subiektywne i zależy od Twoich wymagań i budżetu.

PaaS, serwery dedykowane, plany VPS lub Twój własny kawałek chmury. Co powinien wybrać niezależny inżynier oprogramowania?

PaaS, serwery dedykowane, plany VPS lub Twój własny kawałek chmury. Co powinien wybrać niezależny inżynier oprogramowania?
Ćwierkać

Nazywaj mnie staromodnym, ale nadal uważam, że serwery dedykowane są najlepszym sposobem na hosting większości rzeczy. Dotyczy to jednak tylko dojrzałych projektów; rozwój to zupełnie inna gra w piłkę. Zarządzane serwery dedykowane oferują wyjątkową niezawodność i dobry poziom wsparcia, a także dobry stosunek jakości do ceny.

Właściwie używane serwery dedykowane i PaaS mogą również przyspieszyć wdrożenie, jak wyjaśnia Adam Wood:

Mogę uruchomić nową aplikację Ruby-on-Rails na Heroku w ciągu kilku minut. Robienie tego samego na AWS zajmuje mi pół dnia i ciągle czuję, że zaraz coś zepsuję.

Usługi w chmurze są z natury bardziej wydajne niż sprzęt dedykowany, ponieważ korzystasz tylko z zasobów, których potrzebujesz w danym momencie. Na przykład, jeśli korzystasz z usługi, która uzyskuje większość ruchu w godzinach pracy (od użytkowników z obu Ameryk), Twój serwer dedykowany będzie niewykorzystany przez 12 do 16 godzin. Pomimo tej oczywistej luki w wydajności, serwery dedykowane mogą nadal być tańsze niż rozwiązania chmurowe. Ponadto klienci mogą je dostosowywać i ulepszać według własnego uznania.

Chmura nadrabia zaległości, ale serwery dedykowane będą dostępne jeszcze przez wiele lat. Oczywiście nie są dobrym rozwiązaniem dla indywidualnych programistów, ale są dla wielu firm. Plany VPS kosztują znacznie mniej niż serwery dedykowane i są łatwo dostępne dla poszczególnych programistów, mimo że nie oferują takiego samego poziomu swobody jak serwery dedykowane.

Co to oznacza dla freelancerów?

Dobrą wiadomością jest to, że większość niezależnych inżynierów oprogramowania nie musi się martwić o każdą opcję hostingu. Chociaż prawdą jest, że różni klienci mają różne sposoby działania, w większości przypadków jest to problem klienta, a nie twój.

Nie oznacza to, że różne opcje hostingu nie mają wpływu na freelancerów; robią, ale są ograniczone. Zawsze dobrze jest zapoznać się z infrastrukturą przed wejściem na pokład projektu, ale nie ma się czym martwić. Większość nowych usług hostingowych została opracowana w celu ułatwienia życia programistom i skupienia ich na swojej stronie projektu. Jednym z pozytywnych skutków ubocznych wdrożenia PaaS i chmury jest rosnąca standaryzacja; większość stacków jest dojrzała i cieszy się szerokim przyjęciem, więc niewiele może się nie udać.

Poza tym nic nie można zrobić z wyborem infrastruktury przez klienta, na lepsze lub na złe. Ale co z własnym środowiskiem serwerowym ?

Nie ma jednego uniwersalnego rozwiązania ; wszystko zależy od twoich wymagań, twojego stosu i twojego budżetu. Usługi PaaS zyskują na popularności, ale mogą nie być świetnym rozwiązaniem dla programistów z ograniczonym budżetem lub tych, którzy na co dzień nie potrzebują środowiska hostingowego. Dla wielu freelancerów i małych, niezależnych deweloperów VPS jest wciąż drogą do zrobienia. W zależności od tego, co robisz, zarządzany serwer dedykowany na poziomie podstawowym jest opcją, a jeśli wykonujesz małe projekty internetowe pod klucz, możesz nawet rozważyć niektóre pakiety odsprzedawców.

Fakt, że duże firmy hostingowe nadal konkurują o biznes deweloperski, jest ostatecznie dobrą rzeczą. Oznacza to, że są zmuszeni wprowadzać aktualizacje na czas i oferować lepsze wsparcie we wszystkich pakietach hostingowych, aby zachować konkurencyjność. Tak naprawdę nie konkurują z PaaS i usługami w chmurze, ale nadal chcą kawałek tortu.

Pamiętasz, jak dostawcy PaaS oferują programistom różne zachęty do wejścia na pokład, tylko po to, aby mogli rozwijać swoją działalność na dłuższą metę? Można argumentować, że konwencjonalne firmy hostingowe próbują zrobić to samo, zachęcając początkujących programistów do swojej platformy, mając nadzieję, że będą lojalnymi klientami i użyją swoich serwerów do obsługi kilkudziesięciu projektów kilka lat później.

Przyszłość hostingu

Chociaż branża hostingowa może nie wydawać się tak dynamiczna i innowacyjna jak inne sektory technologiczne, nie jest to całkowicie sprawiedliwe. Oczywiście zawsze będzie wyglądać nijako i nieciekawie w porównaniu z niektórymi szybko rozwijającymi się sektorami, ale mówimy o infrastrukturze, a nie o jakimś schemacie szybkiego wzbogacenia się.

Branża hostingowa się zmienia i jest innowacyjna. Wdrożenie nowej technologii zajmuje trochę więcej czasu, to wszystko. Na przykład firma logistyczna prawdopodobnie zmienia swoje smartfony co rok lub dwa lata, ale jej pojazdy dostawcze nie są aktualizowane tak często, a mimo to stanowią trzon firmy.

Rzućmy okiem na niektóre trendy w branży hostingowej, które stają się istotne z perspektywy tworzenia oprogramowania:

  • Ciągły rozwój i wzrost usług Cloud i PaaS.
  • Ewolucja hostingu zarządzanego w usługi quasi-PaaS.
  • Zwiększona integracja z narzędziami standardowymi w branży.
  • Nowy sprzęt może sprawić, że serwery dedykowane będą tańsze.

Usługi w chmurze i PaaS będą nadal dojrzewać i rozwijać się. Co ważniejsze, w miarę zaostrzania się konkurencji ceny powinny spadać. Możliwość zintegrowania różnych narzędzi programistycznych i funkcji z przystępnymi planami hostingowymi nadal będzie czynić je atrakcyjnymi z finansowego punktu widzenia. Przechodząc w górę na skali cenowej, hosting zarządzany może również ewoluować w celu objęcia niektórych funkcji i usług oferowanych przez PaaS. Jeśli interesują Cię trendy w branży hostingowej, sugeruję zapoznanie się z tym zestawieniem prognoz rynku chmury Forbes na rok 2015 i kolejne.

Serwery dedykowane nigdy nie będą tanie, przynajmniej nie w porównaniu z planami współdzielonymi i VPS. Jednak stają się tańsze i mogą zyskać w postaci oszczędnego i niedrogiego sprzętu ARM. Procesory oparte na architekturze ARM zwykle oferują wyższą wydajność w porównaniu z procesorami x86, ale są stosunkowo tanie w opracowywaniu i wdrażaniu. Niektóre flagowe smartfony są dostarczane z czterordzeniowymi układami opartymi na 64-bitowych rdzeniach procesora Cortex-A57, a te same rdzenie pojawią się w procesorach serwerowych opartych na architekturze ARM.

Jako chip geek mógłbym kontynuować, ale zamierzamy przyjrzeć się bliżej rozwijającej się dziedzinie serwerów ARM w jednym z naszych nadchodzących wpisów na blogu, więc jeśli jesteś zainteresowany, bądź na bieżąco.