from resolver import Resolver from timeit import timeit resolve = Resolver() time_elapsed = timeit(setup='from __main__ import resolve ', stmt='resolve("google.com")', number=1) print("Time elapsed for google.com:{0:f}".format(time_elapsed)) time_elapsed = timeit(setup='from __main__ import resolve ', stmt='resolve("google.com")', number=1) print("Time elapsed for google.com:{0:f}".format(time_elapsed)) print("Is microsoft.com present in resolve cache:{0}".format( resolve.has_host("microsoft.com"))) resolve("microsoft.com") print("Is microsoft.com present in resolve cache:{0}".format( resolve.has_host("microsoft.com"))) resolve.clear() print("Is microsoft.com present in resolve cache:{0}".format( resolve.has_host("microsoft.com")))
from timeit import timeit timeit(setup='from __main__ import resolve', stmt="resolve('localhost')", number=1) timeit(setup='from __main__ import resolve', stmt="resolve('localhost')", number=1) timeit(setup='from __main__ import resolve', stmt="resolve('python.org')", number=1) timeit(setup='from __main__ import resolve', stmt="resolve('python.org')", number=1) print("{:f}".format(_)) exit() from resolver import Resolver resolve = Resolver() resolve.has_host('localhost') resolve('localhost') resolve.has_host('localhost') resolve.clear() resolve.has_host('localhost') resolve.has_host('pluralsight.com') resolve('pluralsight.com') resolve.has_host('pluralsight.com') resolve.clear() resolve.has_host('pluralsight.com')
resolve._cache resolve('sixty-north.com') resolve.__call__('sixty-north.com') resolve._cache resolve('pluralsight.com') resolve._cache from timeit import timeit timeit(setup='from __main__ import resolve', stmt="resolve('localhost')", number=1) timeit(setup='from __main__ import resolve', stmt="resolve('localhost')", number=1) timeit(setup='from __main__ import resolve', stmt="resolve('python.org')", number=1) timeit(setup='from __main__ import resolve', stmt="resolve('python.org')", number=1) print("{:f}".format(_)) exit() from resolver import Resolver resolve = Resolver() resolve.has_host('localhost') resolve('localhost') resolve.has_host('localhost') resolve.clear() resolve.has_host('localhost') resolve.has_host('pluralsight.com') resolve('pluralsight.com') resolve.has_host('pluralsight.com') resolve.clear() resolve.has_host('pluralsight.com')
resolve.__call__('sixty-north.com') # => '93.93.131.30' resolve._cache # => {'sixty-north.com': '93.93.131.30'} resolve('pluralsight.com') # => '54.201.247.181' resolve._cache # => {'sixty-north.com': '93.93.131.30', 'pluralsight.com': '54.201.247.181'} resolve._cache # => {'sixty-north.com': '93.93.131.30', 'pluralsight.com': '54.201.247.181'} resolve.has_host('pluralsight.com') # => True resolve.clear() resolve._cache # => {} """ Class as callable """ def sequence_class(immutable): # if immutable: # cls = tuple # else: # cls = list
from resolver import Resolver resolve = Resolver() print(resolve('google.com')) print(resolve('apple.com')) # Note that everytime we are calling object # we're appending it to cache, hence if we call it # twice with the same argument the result will be much faster # Checking the speed with time it from timeit import timeit first_time = timeit(setup="from __main__ import resolve", stmt="resolve('python.org')", number=1) second_time = timeit(setup="from __main__ import resolve", stmt="resolve('python.org')", number=1) print("the first time was {:f} and the second was {:f} ".format( first_time, second_time)) # Managing the cache print(resolve.has_host("plurasight.com")) print(resolve("plurasight.com")) print(resolve.has_host("plurasight.com")) resolve.clear() print(resolve.has_host("plurasight.com"))
resolve = Resolver() resolve('google.com') resolve.__call__('google.com') resolve._cache resolve('pluralsight.com') resolve._cache from timeit import timeit timeit(setup="from __main__ import resolve", stmt="resolve('python.org')", number=1) resolve1 = Resolver() resolve1.has_host("pluralsight.com") resolve1("pluralsight.com") resolve1.has_host("pluralsight.com") resolve1.clear() resolve1.has_host("pluralsight.com")