We are using HTTP object to call some SOAP web-services(this services can not be configured to System -> Settings due to some technical feasibility, and that is not a concern). In order to promote re-usability we created some objects(around 10) that will call web-services and provide results, now we are calling HTTP VBO from multiple objects(those 10 object which we created).
We are still in development but i want to ensure that there won't be any memory issue since HTTP object being called multiple times from different objects from a single process.
Any comments on this ? should i make HTTP object as shareable object then utilize it or i can go ahead without making it shareable ? i am also using XML object inside the object.
Now we can not use this HTTP object and XML object as there would be no re usability.
Thanks in advance !
------------------------------ Ishan Mahajan India ------------------------------
I understand that object is preserved in memory but if same object is being called by multiple objects(since my object size is small so i have obj1, obj2,.... obj10) calling HTTP VBO call from each object might create an instance in memory and that is what i am worried about.
------------------------------ Ishan Mahajan India ------------------------------
Blueprism only creates one instance of the object within a process. If you have a process that calls a subprocess that calls an object, vbo will do clean up when subprocess exits. Calling object from other different objects only creates one instance of it within a process scope.
You can test it. Create a simple vbo with get/set actions and one shared data item, then try calling it from different objects within a process - you can set value from one and get it back from another.
Only issue you might need to take care with this model is if your object recieves/returns huge collections, you better make that collection shared internally within VBO and have a separate action to clean it up and run GC or it stays in memory within VBO and also copied from/back to a caller. This should not be an issue with HTTP VBO, unless you get hundreds of megabytes of data in response.