Akila created STRATOS-1633:
------------------------------

             Summary: Refactoring Mock IaaS to improve performance and 
concurrency issues
                 Key: STRATOS-1633
                 URL: https://issues.apache.org/jira/browse/STRATOS-1633
             Project: Stratos
          Issue Type: Improvement
          Components: Mock IaaS
    Affects Versions: 4.1.4
            Reporter: Akila
            Assignee: Akila
            Priority: Minor
             Fix For: 4.1.5


Currently there are lot of Thread.sleep calls in mock iaas component which 
makes it slow and cause unexpected behavior due to concurrency issues. Also it 
has a significant performance overhead when running integration tests since 
mock iaas is being used for test cases. I've been working on improving this 
component by doing following changes;

 - Remove *all* Thread sleep calls in mock iaas
 - Introduce a method named 'initialize' to start event receivers and 
publishers. This is a synchronous call which grantees that receiver and 
publisher objects will be created successfully. If not it will throw an 
exception and startInstance() method call in CC will fail. Earlier this task 
was delegated to an executor service which made it difficult to check whether 
mock instance was created successfully.
 - Create topology receiver in mock instance and listen for member initialized 
and member started events. It will publish instance started and instance 
activated events based on topology events received rather than sleeping for 
some time interval before publishing.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to