Uruchamianie programu Visual Studio 2015 uruchamia również dwa inne pliki wykonywalne:
VsHub.exe
i
Microsoft.VsHub.Server.HttpHost.exe
Oba zajmują dużo miejsca w menedżerze zadań.
Jak mogę usunąć tę opcję „Visual Studio Hub”? Nie używam żadnych funkcji programu Visual Studio z najwyższej półki, w tym Visual Studio Hub.
visual-studio
visual-studio-2015
Reda Lahdili
źródło
źródło
Odpowiedzi:
Pomyślałem, że spróbuję rzucić trochę światła na VS Hub i do czego jest przeznaczony. Pracuję dla Microsoft.
Jak wspomina Sraboy, VS Hub jest hostem usług poza procesem, z którego korzysta Visual Studio (i inne produkty oparte na powłoce VS, takie jak Blend) w celu obsługi komunikacji z wieloma narzędziami, lepszej responsywności w devenv (VS) i umożliwić niektórym usługom przedłużenie okresu życia procesu tarła. Zestaw usług obecnie hostowanych w VS Hub obejmuje wiele elementów wywoływanych w innych odpowiedziach, takich jak ustawienia roamingu, przetwarzanie dużych obszarów danych ETL renderowanych w narzędziach diagnostycznych, niektóre raportowanie telemetryczne i automatyczna aktualizacja rozszerzenia i powiadomienia. Ten zestaw usług najprawdopodobniej rozwinie się w przyszłości, więc nawet jeśli żadna z tych usług nie wydaje się w tej chwili potrzebna, w przyszłości będą tam hostowane dodatkowe usługi (tj. Wyłączenie vshub jest bardzo trudne.
Pod względem czasu życia procesy vshub i hosta (tj. Microsoft.VsHub.Server.HttpHost (64) .exe) mogą pozostać uruchomione po zamknięciu devenv.exe. Jednak nie powinny one działać w nieskończoność. W większości przypadków procesy te kończą się w ciągu ~ 5 minut od ostatniego wystąpienia zamknięcia powłoki VS. Jeśli więc masz uruchomioną instancję VS (devenv.exe) i instancję Blend (blend.exe) i wyłączysz devenv.exe, vshub i powiązane procesy hosta będą nadal działać. Jeśli następnie zamkniesz blend.exe, program vshub i powiązany proces hosta będą nadal działać. Jednak po około 5 minutach te dodatkowe procesy zostaną zamknięte. Jeśli w ciągu 5 minut uruchomisz kolejne wystąpienie devenv.exe, vshub i powiązane procesy hosta nie zostaną zakończone,
Pod względem zasobów sam proces vshub.exe powinien zawsze być stosunkowo zwinny. Jeśli kiedykolwiek stanie się duży, to jest to błąd i chciałbym o tym wiedzieć, abyśmy mogli go naprawić :-) Z drugiej strony procesy hosta mogą być bardzo duże w zależności od hostowanej usługi. W szczególności narzędzia diagnostyczne działają poprzez przetwarzanie ETL. ETL może być bardzo, bardzo duży i jako taki host może zużywać wiele zasobów. Zespół diagnostyczny szuka sposobów na zmniejszenie tego problemu, ale na razie zamknięcie okna narzędzia diagnostycznego, gdy nie jest ono potrzebne, powinno pomóc złagodzić problem.
Jeśli chodzi o łączność online, w obecnym zestawie hostowanych usług istnieją obecnie trzy główne źródła (uwaga: to się zmieni z czasem). Po pierwsze, jak wspomina user3345048, usługa wykrywająca i automatycznie aktualizująca rozszerzenia działa w tym procesie. Opcje kontrolujące tę komunikację znajdują się w menu Narzędzia | Opcje | Środowisko | Rozszerzenia i aktualizacje (zobacz pierwsze dwa pola wyboru). Po drugie, ustawienia roamingu działają jako usługa w VS Hub. Ustawienie kontrolujące to zachowanie znajduje się w menu Narzędzia | Opcje | Środowisko | Zsynchronizowane ustawienia (lub bardziej całościowo, jeśli nie zalogujesz się na konto personalizacji w prawym górnym rogu VS). Wreszcie VS Hub zgłasza dane telemetryczne. Objętość tych danych można znacznie zmniejszyć za pomocąPomoc | Opcje opinii klientów | Pozycja menu Ustawienia… . Możesz również przeczytać o rodzaju danych telemetrycznych, które gromadzi firma Microsoft, oraz o tym, jak są one używane w tej lokalizacji.
źródło
Coś, o czym nikt nie wspomniał powyżej ...
Według mojego dziennika zapory, VsHub.exe, Microsoft.VsHub.Server.HttpHost.exe i Microsoft.VsHub.Server.HttpHostx64.exe próbują komunikować się online .
Adresy, które widziałem, z którymi były próby połączeń wychodzących, to 191.236.194.164 (Microsoft Azure, Wichita Kansas) i 23.102.160.172 (Microsoft Azure, Redmond Washington).
Zdaję sobie sprawę, że „nowoczesne” oprogramowanie ma być zintegrowane z chmurą, ale ...
Jako osoba, która nie wymaga niczego od serwerów Microsoft Azure i która jest uzasadniona troską o prywatność i nie ujawnia żadnej części tego, nad czym pracuję, do świata zewnętrznego, naprawdę chciałbym A) mieć sposób, aby wybrać nie uruchamiać te programy lub B) otrzymać ustawienia ograniczające ich czat online. Tak, zapora blokuje połączenia, ale to ostateczność.
Wystarczy proste pole wyboru „[] Skontaktuj się z serwerami Microsoft Azure”. Nie ma dla mnie znaczenia, czy oznaczałoby to nie uruchamianie programów, o których mowa, czy po prostu brak ich połączeń online. Sądzę, że z perspektywy zasobów ten pierwszy byłby lepszy, ponieważ zużywałby mniej zasobów.
Z reguły nie proponowałbym zmiany plików w pakiecie plików zainstalowanej aplikacji, ale ponieważ mam środowisko maszyny wirtualnej, w którym mogę testować zmiany w Visual Studio 2015 bez większych konsekwencji (migawki są wspaniałe), próbowałem zmienić uprawnienia (aby usunąć dziedziczenie, a następnie uniemożliwić użytkownikom odczyt i wykonanie) do tych trzech plików.
Voila, koniec z uruchomionymi aplikacjami VsHub, próbującymi skontaktować się ze zdalnymi systemami.
Visual Studio przychodzi od razu. Nie widzę tutaj wad.
-Kolęda
źródło
Używam systemu Windows 7 x64 z programem Visual Studio Express 2015. Zakończyłem denerwujące procesy za pomocą Menedżera zadań. Następnie usunąłem folder C: \ Program Files (x86) \ Common Files \ microsoft shared \ VsHub . Ta operacja rozwiązuje problem, ale wymaga uprawnień administratora.
źródło
Jak wspomniał xakepp35, możesz usunąć folder C: \ Program Files (x86) \ Common Files \ microsoft shared \ VsHub . Podejrzewam jednak, że aktualizacje lub inne instalatory prawdopodobnie spróbują je odtworzyć.
To, co zrobiłem, zamknęło wszystkie procesy VS. Przejmij na własność folder (jako administrator), a następnie RAR (ZIP) w górę folderu i ostatecznie go usuń (RAR jako kopia zapasowa, jeśli potrzebuję plików z powrotem). Mój jest na dysku SSD, więc chcę zaoszczędzić miejsce. W przeciwnym razie możesz po prostu zmienić jego nazwę i pozostawić na miejscu.
Następnie, aby zapobiec ponownemu utworzeniu, użyłem starej sztuczki z Win 3.1. Utwórz plik tekstowy o nazwie VsHub.txt w folderze udostępnionym C: \ Program Files (x86) \ Common Files \ Microsoft . Następnie zmień nazwę pliku tekstowego i usuń rozszerzenie .txt, pozostawiając plik o nazwie VsHub . Ponieważ system operacyjny nie może utworzyć folderu i pliku o tej samej nazwie w tej samej lokalizacji, poof, jest on niedostępny jako folder dla VS, a także jego niedostępne i przyszłe instalatory / aktualizatory jako folder. Jeśli chcesz ponownie zezwolić na dostęp w przyszłości, po prostu dodaj plik .txt z powrotem do pliku i gotowe.
źródło
Wygląda na to, że jest to szwajcarski scyzoryk do komunikacji dla studia wizualnego, zgodnie z odpowiedzią @ sraboy. Jest używany podczas debugowania do wyświetlania informacji o wydajności uruchomionego procesu, ale także do wysyłania telemetrii do firmy Microsoft na temat projektu, nad którym pracujesz. Możesz dobrze budować i przechodzić przez kod, gdy jest on wyłączony (na pierwszy rzut oka).
Usunięcie, zmiana nazwy lub zablokowanie tworzenia procesu vshub za pomocą AV zepsuje śledzenie wydajności, o którym wspomniałem. Utrata vshub zwiększa prywatność podczas korzystania z programu Visual Studio, ponieważ komunikuje się on z vortex.data.microsoft.com, przekazując informacje, takie jak identyfikatory GUID rozwiązania i projektu, wraz z identyfikatorem konta. Poniżej znajduje się zrzut ekranu z Fiddlera przechwytującego dane HTTPS.
Blokowanie dostępu na poziomie sieci pomaga zachować prywatność, ale nie rozwiązuje problemu z wykorzystaniem zasobów. Uznałbym to za normalne obciążenie związane z uruchomieniem programu Visual Studio.
W twoim przypadku prawdopodobnie możesz uciec z jakąś formą wyłączenia (blokowanie instancji za pomocą oprogramowania antywirusowego jest prawdopodobnie najczystszym podejściem), ale może obsługiwać dodatkowe funkcje, których jeszcze nie rozgryzłem.
źródło
Dla tych z Was, którzy chcą zachować VSHub i nadal mogą korzystać z Fiddlera, można skonfigurować filtr w Fiddlerze z następującym ustawieniem:
EDYTUJ - prawdopodobnie też chcesz to dodać:
w celu pominięcia
vortex.data.microsoft.com
itp. żądańźródło
Według menedżera programu firmy Microsoft komentującego blog programu Visual Studio, komentującego blog programu Visual Studio , jest on używany do obsługi komunikacji z wieloma narzędziami w całym pakiecie VS. Biorąc pod uwagę, jak skomplikowany jest Visual Studio, nie polecałbym niczego tak surowego, jak odpowiedź xakepp35 (usunięcie jej).
Na moim Win10 x64 z uruchomionym VS2015 podczas debugowania są trzy procesy, a całkowite użycie pamięci RAM jest mniejsze niż 150 MB. O ile nie rzucasz stronami na maszynie z minimalną pamięcią RAM, nie ma się czym martwić. Biorąc pod uwagę, że używasz VS2015, przypuszczam, że masz 150 MB wolnego miejsca.
Do czasu, gdy znajdziesz dokumentację wyraźnie pokazującą, co obsługuje Hub, zalecam pozostawienie tego. Z mojego doświadczenia wynika, że instalacje Visual Studio są zbyt łatwe do przerwania.
źródło
Jednym z powodów, dla których program Visual Studio próbuje połączyć się w trybie online, wydaje się również to, że domyślnie wyszukuje w Internecie aktualizacje programu Visual Studio i jego rozszerzeń.
Ponadto program Visual Studio zawiera w swoim rdzeniu wersję przeglądarki Internet Explorer, dzięki czemu stronę internetową (i rozszerzenie) można pobrać na żywo. Innymi słowy, działa również jako przeglądarka i jak wszyscy wiemy ... Microsoft bardzo chętnie sprawdza dane swoich użytkowników i wykorzystanie swojego oprogramowania.
W menu Narzędzia → Opcje dostępnych jest wiele funkcji online . (Szczerze mówiąc, wolę MonoDevelop nawet z jego wadami.)
źródło
Jest potrzebne do BrowserLink, okna Diagnostics, Intellitrace.
Czasami potrzebuję tych funkcji, ale mam tylko 8 GB pamięci RAM. Zwykle używam 90-95%, więc utworzyłem plik wsadowy, aby włączać i wyłączać VSHub, zmieniając nazwę folderu i tworząc dowiązanie symboliczne do pustego folderu z fikcyjnymi plikami.
Zamknij program Visual Studio przed uruchomieniem.
Na moim komputerze VSHub i jego kumple zwykle używają:
Zwalnia to ponad 1 GB pamięci RAM i prawie nie traci żadnej funkcjonalności.
źródło
Nazwę „VsHub” należy zmienić na „SmartMobileCloud”; taki jest głupiTrendy. Wyrzuciłem to; moja edycja / debugowanie VisualC nie została uszkodzona.
Po zainstalowaniu VisualStudio usuń nieużywane rozszerzenia, wykonaj poprawkę „C: \ Program Files (x86) \ Common Files \ Microsoft Shared \ - Deleted - VsHub” ... i umieść tam plik tekstowy „VsHub” (bez „.TXT” ), więc nic nie może odtworzyć folderu.
źródło