Example #1
0
 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())
Example #2
0
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)
Example #3
0
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)
Example #4
0
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])
Example #5
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)
Example #6
0
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)
Example #7
0
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)