def test_cluster_call_and_get_better_availability(self): service = Service(50, 100) cluster = Cluster(service, 2) for _ in range(0, 100000): cluster.call() service.call() self.assertLess(cluster.get_failed_count(), service.get_failed_count())
def main(): # Configuring microservice structure service = Service(5, 100, 'service') database = Service(5, 100, 'database') service.add_dependency(database) # Simulating calls in cycles cycles = 100000 for _ in range(cycles): service.call() # Drawing from root draw = Draw() draw.draw_tree(service)
def main(): # Configuring microservice structure poor_developer = Service(0, 100, 'hapless_developer') for i in range(100): service = Service(1, 100, 'service-%d' % i) poor_developer.add_dependency(service) # Simulating calls in cycles cycles = 100000 for _ in range(cycles): poor_developer.call() # Drawing from root draw = Draw() draw.draw_radial_tree(poor_developer)
def main(): # Configuring microservice structure services = [] maximum_number_of_services = 10 for i in range(1, maximum_number_of_services + 1): service = Service(1, 100, 'service-%d' % (maximum_number_of_services - i + 1)) for other_service in services: other_service.add_dependency(service) services.append(service) # Simulating calls in cycles cycles = 100000 for _ in range(cycles): for service in services: service.call() # Drawing from root draw = Draw() draw.draw_radial_tree(services[0])
def main(): # Configuring microservice structure proxy = Service(5, 100, 'proxy') aggregate = Service(5, 100, 'aggregate') database = Service(5, 100, 'database') another_app_db = Service(5, 100, 'database') cache = Service(5, 100, 'cache') proxy.add_dependency(aggregate) aggregate.add_dependency(database) aggregate.add_dependency(cache) aggregate.add_dependency(another_app_db) # Simulating calls in cycles cycles = 100000 for _ in range(cycles): proxy.call() # Drawing from root draw = Draw() draw.draw_tree(proxy)
def main(): # Configuring microservice structure services = [] maximum_number_of_services = 10 broker = Service(5, 100, 'broker') broker_cluster = Cluster(broker, 2) for i in range(1, maximum_number_of_services + 1): service = Service(5, 100, 'service-%d' % (maximum_number_of_services - i + 1)) service.add_dependency(broker_cluster) services.append(service) # Simulating calls in cycles cycles = 1000000 for _ in range(cycles): for service in services: service.call() # Drawing from root draw = Draw() draw.draw_each(services)
def main(): # Configuring microservice structure proxy = Service(5, 100, 'proxy') bff = Service(5, 100, 'BFF') bff_database = Service(5, 100, 'BFF_database') cart = Service(5, 100, 'cart') cart_cache = Service(5, 100, 'cart_cache') user = Service(5, 100, 'user') user_database = Service(5, 100, 'user_database') proxy.add_dependency(bff) bff.add_dependency(bff_database) bff.add_dependency(cart) cart.add_dependency(cart_cache) cart.add_dependency(user) user.add_dependency(user_database) # Simulating calls in cycles cycles = 100000 for _ in range(cycles): proxy.call() # Drawing from root draw = Draw() draw.draw_tree(proxy)