net-con

Szybkie sprawdzanie proxy w Fast Google Proxy Checker

Jak już informowałem Was na Facebooku, w ramach nauki programowania aplikacji wielowątkowych stworzyłem mały, zgrabny programik do testowania serwerów proxy. Nie jest to żadna nowość, takich programów sporo na rynku. Wiem że sofcik może nie jest idealny od strony programistycznej (zdziwiłbym się jakby był na tym etapie), ale jako że działa stabilnie udostępniam go, może komuś się przyda. Jeśli będzie zainteresowanie projektem, nie wykluczam rozbudowy aplikacji.

Dla programu wybrałem nazwę Fast Google Proxy Checker. Docelowo będzie to jeden z modułów nowej wersji Google Suggest Scrapera, który zostanie całkowicie przerobiony na aplikację wielowątkową. Zresztą nie on jedyny, docelowo większość programików, które zrobiłem bądź zrobię w przyszłości zyskają taką funkcjonalność - która jak wiemy pozwala wykonać zadanie w zdecydowanie krótszym czasie, aniżeli ma to miejsce w jednowątkowej aplikacji.

Fast Google Proxy Checker

Przejdźmy do omówienia poszczególnych funkcji programu. Kolejne przyciski (licząc od lewej) oznaczają...

  • Wczytanie listy z proxy (format oczywiście IP:PORT),
  • Zapis działających proxy do pliku,
  • Czyści listę zostawiając same działające adresy (ze statusem OK),
  • Uruchamia sprawdzanie,
  • Zatrzymuje,
  • Informacje o autorze i programie.

Inne:

  • Opóźnienie - jest to czas wyrażony w milisekundach, który decyduje o tempie tworzenia nowych wątków.
  • Timeout - czas po którym zainicjowane żądanie wygaśnie.
  • Serwer - adres URL do testowania.

Statusy pojawiające się przy każdym sprawdzonym/sprawdzanym adresie proxy:

  • Checking - trwa sprawdzanie,
  • OK - oznacza, że proxy jest zdatne do użytku (bazując na URL podanego serwera).
  • Timeout - nie otrzymano odpowiedzi od serwera w podanym limicie czasu.
  • Server Error - nie można było połączyć się z serwerem.
  • Aborted - wszelkie wątki, które zostały automatycznie zakończone przez program. Niektóre wątki potrafią się przedziwnie zawiesić, na ten moment nie wiem czym to jest spowodowane. Dla bezpieczeństwa Fast Google Proxy Checker postara się wszystkie zakończyć.
  • Unknown Error - wszelkie niesklasyfikowane błędy, które wystąpiły podczas sprawdzania.

Schemat wątków jest inny niż w podobnych programach. Początkowo testy przeprowadzałem na pakietowym sprawdzaniu co 10 sztuk, ale w tym wariancie jest jeden problem, w danej jednostce czasu inicjowanych jest 10 wątków, czyli do serwera wysyłanych jest jednocześnie 10 requestów - przy wolniejszych połączeniach cierpi na tym wydajność sprawdzania, dlatego zdecydowałem się na inny wariant, prostszy i wydajniejszy.

Ustawiając czas opóźnienia tworzenia nowych wątków mówimy aplikacji, że co zadaną ilość milisekund ma utworzyć nowe wątek, w którym zostanie uruchomione sprawdzanie jednego adresu proxy. Ustawiając wartość na 500 milisekund (najefektywniejsza wartość w testach przy łączu 4Mbit/s) będą tworzone 2 wątki na sekundę. Przy normalnym jednowątkowym sprawdzaniu zadanie zajmie 1000 proxy x wartość timeout. Natomiast przy wielowątkowym 1000 proxy x wartość opóźnienia + 10s czas potrzebny na prawidłowe ukończenie wszystkich "zawieszonych" wątków. Więc podstawiając do tego wartości, czas wykonania aplikacji jednowątkowej 1000 x 3s = 3000s / 60s = 50 minut, dla wielowątkowej 1000 x 0.5 + 10s = 510s / 8.5 minuty. Teraz już chyba każdy widzi dlaczego zdecydowałem się nauczyć programowania wielowątkowego.

Czym większa wartość opóźnienia, tym lepsze efekty - uzyskamy więcej działających adresów proxy. Na wolnych połączeniach zalecana wartość to 1000 milisekund. Na szybszych najefektywniejsza to 500ms, ale w programie jest opcja zmniejszenia wartości nawet do 100ms (10 wątków na sekundę).

Jeśli zauważycie jakieś usterki w programie śmiało piszcie. Fast Google Proxy Checker jest do pobrania z Facebooka, zakładka Free SEo Tools. Do uruchomienia programu potrzebny jest Microsoft .NET Framework 4.0, soft testowany na Windows 7 64 bit i Windows Vista 32 bit.

Fot. cooldesign, FreeDigitalPhotos.net

Mariusz Kołacz Fast Google Proxy Checker, google, proxy, sprawdzanie

Skomentuj wpis - Komentarzy (15)

  1. Dawid Boho pisze:

    Cześć,

    Możesz sprawdzić taki scenariusz:

    Wczytuje Listę, Uruchamiam sprawdzanie, W trakcie sprawdzania (gdy trwa) klikam Oczyść listę pozostawiając tylko działające adresy (oczywiście wtedy się zakończy i pokaże listę tych z OK). Wczytuję znów listę i podczas, gdy daję start to nic mi się nie wyświetla w tabeli status. Dopiero po najechaniu na jakieś pole pisze status Timeout, a niektóre są puste. Klikam wtedy zakończ i mam komunikat ,, Trwa kończenie wątków, proszę czekać... '' już około 10 min i nadal nic.

    Przy normalnym korzystaniu jest wszystko jak najbardziej ok. Ale jak wykombinowałem takie coś jak wyżej to już nie. Sprawdzałem kilka razy ten sam scenariusz i za każdym razem jest tak samo. Jutro postaram się sprawdzić na innych komputerach.

    Świetna Aplikacja ;) wymiata!

    Pozdrawiam,
    Dawid

  2. Mariusz Kołacz pisze:

    Dzięki. Tego akurat nie testowałem. Faktycznie występuje w tym scenariuszu błąd, ale to bardziej wynika z tego, że taka operacja w ogóle nie powinna zostać dopuszczona w programie. W weekend siądę do tego i wprowadzę poprawki zw. z zdezaktywowaniem niektórych przycisków, gdy user uruchomił sprawdzanie.

  3. Morfeusz pisze:

    Ciekawy programik, fajnie że Ci się chciało coś takiego przygotować. Testowałem go trochę i jak dla mnie jest prosty w obsłudze a przy tym można z niego wyłuskać sporo przydatnych danych.

  4. Adrian pisze:

    Witam. Pytanie z innej beczki. Weszła zasada, że trzeba informować swoich odwiedzających o plikach cookie. Szczerze nie wiem po co to, ale moje pytanie: Czy jest jakaś wtyczka do wordpress'a, która będzie informowała na blogu w okienku o cookie? Pozdrawiam serdecznie.

  5. tomek pisze:

    Mysle, ze jedno z lepszych narzedzi - na pewno nie nalezy do zbyt zaawansowanych, a to przeciez tylko zaleta.

  6. Mariusz Kołacz pisze:

    Dzięki, takie ma być proste ale jednocześnie szybkie :)

  7. Mariusz Kołacz pisze:

    @Adrian, sprawdź wtyczkę EU Cookie Law Compliance.

    Z innych:
    Cookie Warning
    UK Cookie Consent
    Cookie Confirm

  8. Szymon pisze:

    Bardzo fajny program, szybki w działaniu. Zastanawia mnie tylko, potrzeba testowania darmowych proxy? Z reguły one bardzo szybko są już nie do użytku. Taki publiczny adres, jest używany przez wiele osób i prędzej czy później spada jego wydajność oraz może być zbanowany przez Google. Osobiście przerzuciłem się już na prywatne proxy i to nie takie jak np. proxymarket gdzie tak naprawdę otrzymujemy listę działających publicznych proxy, a ich sprawdzaniem zajmuje się sam serwis proxymarket. Wolę proxy dedykowane lub współdzielone, ale płatne. Ich właściciel zapewnia stałą pracę proxy i odpowiada za ich jakość i dostępność. Wybierając tego rodzaju proxy trzeba jeszcze pamiętać aby nie posiadały one limitu transferu, ponieważ przy aplikacjach, które działają praktycznie w oparciu o proxy, taki limit szybko zostanie wykorzystany, nawet w ciągu jednego dnia.

  9. Marcin pisze:

    Odbiegając od tematu, fajnie by było jakby na blogu pojawił się fachowy wpis dotyczący nowych regulacji nt. cookies. Co właściciel strony powinien napisać, czego nie musi, czy "belka informacyjna" jest wymagana czy to tylko opcjonalny gadżet, i w ogóle po co komu te całe zamieszanie.
    pozdrawiam

  10. Mariusz Kołacz pisze:

    @Marcin, dzięki za propozycję, może taki wpis pojawi się na blogu kto wie. Pozdrawiam!

  11. michal pisze:

    Czegoś takiego szukałem. W necie pełno jest jakichś darmowych list proxy, ale nie miałem pod ręką żadnego prostego narzędzia, którym mógłbym je przetestować.

  12. Gosia Incentive pisze:

    Ooo... czas przetestować programik. Wielkie dzięki! :) Może akurat ten okaże się dla mnie idealny! :)

  13. Kasia pisze:

    Myślę, że to dobre narzędzie dla zwykłego użytkownika, a po ostatnich problemach z neostradą, proxy okazało się pomocne.

  14. Arkadiusz pisze:

    Ja tam używam starego i poczciwego scrapeboxa lub nowszego GSA. Sprawdzają się one dobrze. Niemniej jednak nie są to darmowe i "lekkie" programy. Może warto odpalić od czasu do czasu Fast Google Proxy Checker i sprawdzić jak to działa bo z tymi proxy w ostatnim czasie jest coraz ciężej.Też tak macie że sporo jest banowanych do np. odpytań w Google ?
    Pozdrawiam

  15. Mariusz Kołacz pisze:

    @Arkadiusz, nie wiem jak inni, ale też to zauważyłem, nawet prywatne proxy mają teraz obniżoną wydajność i raczej nie jest to wina nadmiernej ich utylizacji przez osoby trzecie, po prostu od pewnego czasu proxy są częściej banowane ;)

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *

Poinformuj mnie o nowych komentarzach do tego wpisu.