Strona używa cookies (ciasteczek). Dowiedz się więcej o celu ich używania i zmianach ustawień. Korzystając ze strony wyrażasz zgodę na używanie cookies, zgodnie z aktualnymi ustawieniami przeglądarki.    X

Mam nowe środowisko programistyczne. W chmurze

Z pewnością każdy z nas lubi pracować na wydajnym i mocnym sprzęcie komputerowym. W codziennej pracy towarzyszy mi Dell Latitude z procesorem i3 czwartej generacji, 8GB RAM oraz jeszcze pachnący dysk SSD. Dzięki dwóm monitorom 21 cali, stacji dokującej i nisko-profilowanej klawiaturze zewnętrznej - mam idealne środowisko do codziennej pracy jako Software Developer. Taka konfiguracja sprzętowa pozwala mi swobodnie pracować przy trzech instancjach Visual Studio 2012 Premium z Resharperem, Sql Server Management Studio oraz innymi, mniej zasobożernym programami.

Moim prywatnym laptopem jest Lenovo G510 z procesorem i3, 4GB RAM, HDD oraz kartą graficzną AMD Radeon HD 8570 o pamięci 1GB. Używam go praktycznie do wszystkiego - internet, centrum multimediów, gry czy własne projekty programistyczne. W przeciągu ostatniego roku niestety nie miałem czasu ani okazji zrobić kompletnej reinstalacji, dlatego system zdecydowanie zwolnił i mocno stracił na świeżości. Wyłączenie wszelkich efektów graficznych pomogło na kilka miesięcy, jednak spadek wydajności jest odczuwalny.

Na codzień pracuję z technologiami Microsoftu, dlatego z wielką nadzieją zainstalowałem wersję 2015 RC wraz z wbudowanymi emulatorami Androida i iPhona. Nowa wersja IDE Microsoftu jest zdecydowanie cięższa niż wersja 2013, nawet w wersji Ultimate.

Kilka dni temu wykonałem pomiar czasu wczytywania solucji złożonej z ośmiu projektów. Wynik całkowicie mnie zaskoczył - ponad dwie minuty. Z formatem poczekam do lipca i Windowsa 10, a tym czasem spróbuję czegoś nowego - cloudowej instancji Windows Server 2012 wraz z Visual Studio 2013 na pokładzie.

Azure

Zacznijmy od stworzenia nowej wirtualnej maszyny z wersją serwererową Windows 2012. W galerii dostępnych obrazów mamy możliwość zainstalowania systemu wraz z Visual Studio 2013 i narzędziami developerskimi od Microsoftu.
Pierwszy krok instalacji pozwala nam na określenie nazwy VM, stworzenie konta administratora oraz wybrania mocy maszyny. W moim przypadku będzie to konfiguracja czterordzeniowa z 14GB pamięci operacyjnej. Następna karta jest miejscem wyboru lokalizacji serwerowni Microsoftu oraz podłączenia naszej nowej instancji do Clouda. Według mnie najlepszym rozwiązaniem jest wybranie data center w zachodniej Europie, w tym przypadku będzie to prawdopodobnie Holandia.
Po zaakceptowaniu ustawień nastąpi proces tworzenia wirtualnej maszyny. Trwa to około dziesięciu minut. Po upłynięciu tego czasu, wracamy do listy naszych VMów, zaznaczamy nowo stworzoną instancję i klikamy connect. Po kilku sekundach pobierzemy skrót do podłączenia zdalnego pulpitu. Plik ten zawiera domyślne ustawienia pozwalające na podpięcie zdalnego pulpitu, jednak aby zniwelować opóźnienia i lagi zastosujemy inne ustawienia.

Konfiguracja zdalnego połączenia

Zacznijmy od uruchomienia mstsc z okna Uruchom w systemie Windows. W oknie ustawień połączenia zdalnego wpisujemy adres wirtualnej maszyny wraz z portem dostępu oraz login. W zakładce Display zmieniamy rozdzielczość połączenia na taką samą jaką mamy w systemie - pozwoli to uniknąć skalowania.
W następnej karcie przechodzimy do ustawień sprzętu - wyłączamy transmisję dźwięku oraz synchronizację drukarek. Następnie przechodzimy do karty Experience, która pozwala na zmianę ustawień graficznych podczas połączenia z VM. Zalecane jest tutaj wybranie prędkości naszego internetu oraz wyłączenie efektów graficznych. Dla komfortu moich oczu zostawiłem jedynie wygładzanie czcionek i style systemowe. W przypadku gorszych połączeń internetowych - należy je wyłączyć.
Na sam koniec wracamy do pierwszej zakładki i zapisujemy ustawienia przyciskiem Save As. Skrót do naszego połączenia z cloudowa instancją Visual Studio jest gotowy. Checkboxem oznaczamy komputer jako zaufany, wpisujemy hasło podane przy tworzeniu wirtualnej maszyny i gotowe.

Konfiguracja i pierwsze uruchomienie IDE

Na pulpicie wirtualnej maszyny mamy skróty do Visual Studio, narzędzi pozwalających na konfigurację SharePoint'a oraz dwa foldery: Azure SDK oraz Configure Developer Desktop który zabiera Sql Server 2012 oraz kilka skryptów konfiguracyjnych.

Pierwsze uruchomienie VS może potrwać około minuty. W tym czasie IDE konfiguruje foldery z cache i Hyper-V. Po zakończonej konfiguracji program prosi o zalogowanie się kontem Live w celu synchronizacji ustawień Visual Studio (skróty klawiszowe, ustawienia okien itp). Po wpisaniu danych, synchronizacja może potrwać następną minutę.

Dodatki must-have

Jako programista na co dzień związany z Visual Studio, mam kilka dodatków które jeszcze bardziej przyśpieszają pracę i zwiększają komfort. Moimi standardowymi rozszerzeniami są:

  • ReSharper - przez wielu uznany za najlepszy dodatek zwiększający jakość pisanego kodu i uczący wielu dobrych zasad programowania
  • dotTrace - stworzony przez twórców ReSharpera tool pozwalający na wszelaki profiling aplikacji napisanych w .NET
  • Web Essentials - świetny dodatek znacznie ułatwiający tworzenie aplikacji webowych. Must-have web developera
  • Trailing Whitespace Visualizer - rozszerzenie do IDE, które wykrywa niepotrzebne białe znaki
  • Visual Studio Spell Checker - proste narzędzie sprawdzające poprawność językową

Po zainstalowaniu wcześniej wymienionych rozszerzeń moje środowisko programistyczne jest w pełni gotowe.

Opóźnienia

Zapewne dla wielu czytelników informacja o opóźnieniach czasowych będzie najważniejsza. Przy konfiguracji wirtualnej maszyny jaką wybrałem oraz internecie o prędkości około 10MB/s nie odczuwam opóźnień czasowych! Zdecydowanie częściej miałem problemy szybkim pisaniem kodu lub oczekiwaniem na podpowiedzi IDE gdy miałem włączone trzy karty Chrome i Visual Studio.

Koszty i podsumowanie

Według statystyk Azure, za godzinę pracy komputera o podanej specyfikacji płacę około 1,10 zł. Do kwoty tej należy również doliczyć prąd mojego domowego komputera oraz połączenia sieciowego. Rozwiązanie, które tutaj opisałem narodziło się w mojej głowie jakiś tydzień temu. Pracuję na nim trzeci dzień i jestem niesamowicie zadowolony. Żałuję, że zdecydowanie wcześniej nie pomyślałem o podobnym rozwiązaniu. Czy odinstaluję lokalne IDE? Na pewno nie, przydaje się tam gdzie nie mam dostępu do internetu.  

windows oprogramowanie programowanie

Komentarze

0 nowych
  #1 26.06.2015 09:11

Piękny artykuł :) Osobiście korzystałem z cloudowego rozwiązanie i potweirdzam, że pracowanie to czysta przyjemność :) Szybko płynnie 0 problemów :)

Tylko ta cena. Jak dla mnie 100x lepszym rozwiązaniem byłoby za 300 zł kupić zajebiste ssd 128 gb np. Samsung Evo 850 do swojego laptopa, niż co miesiąc płacić 750zł!!! za utrzymnanie servera w chmurze...

GBM MODERATOR BLOGA  20 #2 26.06.2015 09:18

deja vu? Parę dni temu widziałem ten wpis... @Kapral18 przeprogramowujesz rzeczywistość? :D

  #3 26.06.2015 09:21

Czy ten wpis przypadkiem nie był już na blogu? Fajny wpis, ale bląd w tekscie, źle podlinkowany obrazek.

eklime   2 #4 26.06.2015 10:09

Coś te wyliczenia cenowe takie optymistyczne :)
Dość optymistyczna ta wycena :)

Maszynka o rozmiarze D3 którą wybrałeś kosztuje €0.474 na godzinę.
W dodatku nie ująłeś jeszcze kilku innych czynników wpływających na ostateczny rachunek.
Zatem za co płacimy w MS Azure?
1. Za czas uruchomionego wystąpienia maszyny wirtualnej - wspomniane wcześniej €0.474 za godzinę (naliczanie minutowe).
2. Jak VM jest uruchomiona, płacimy dodatkowo za ruch wychodzący z Azure - czyli cały ruch w momencie gdy coś pobierasz z maszyny wirtualnej oraz gdy jesteś do niej podpięty poprzez RDP - koszty niewielkie, pierwsze 5GB wyjściowe jest gratis :)
3. Gdy VM jest wyłączona w trybie Stopped Dealocated - płacimy za miejsce które zajmuje maszyna. Tu w zależności jaki rodzaj konta Storage wybierzemy ceny są różne. Przy domyślnej konfiguracji dostajemy konto geograficznie nadmiarowe - koszt 25GB to €1.77. Jeśli utowrzymy konto lokalnie nadmiarowe to koszt 25GB wynosi €0.94.
4. Jeśli maszynę wirtualną wyłączymy z poziomu samej maszyny (tak klasycznie), to pozostaje ona "włączona" i kosztuje nas tak jak zwykła pracująca maszyna.

A tak jako ciekawostka - w Azure dostępne jest Visual Studio Online, do 5 użytkowników za darmo dla każdego. http://azure.microsoft.com/pl-pl/services/visual-studio-online/

eklime   2 #5 26.06.2015 11:17

@dziomek (niezalogowany): a dlaczego aż 750zł? przecież na noc komputer wyłączasz - ile on pracuje, 8h dziennie? 160h w miesiącu? a przy optymalizacji może i 100h co daje ok €48 za miesiąc. Oczywiście odkładając te pieniądze przez miesiąc można kupić sobie lepszy sprzęt, ale skąd wziąć te pieniądze, skoro się nie programuje? No coś za coś :)

  #6 26.06.2015 13:11

Ja w pracy mam SSD 250 giga + 1 tera HDD,, i7 z nowszej generacji, 16 giga ramu. Śmiga jak maszyna. 10 instancji VS 2013 z R#, sql, oracle, outlook, kilka pdf/word i chodzi, jakby dopiero co był włączony ;) W domu mam słabego kompa. Na szczęście mam darmowego vpn'a do pracy i bardo szybki internet - nie muszę płacić za azure ;)

Zulowski   8 #7 26.06.2015 14:40

@dziomek (niezalogowany): 300 zl za evo 850? Gdzie?

Kapral18   5 #8 27.06.2015 14:33

@GBM: Dokładnie, deja vu :D

Kapral18   5 #9 27.06.2015 14:34

@eklime: Koszt który opisałem w poście jest oparty na statystyki płatności Azure, nie regulamin. Masz rację - przeoczyłem ruch wychodzący :)

  #10 28.06.2015 14:18

źle wstawiłeś obrazek:

"[img=polaczenie1] <-------------- tu...
Konfiguracja zdalnego połączenia"