Objects Asynchronous Operation
The aim of this blueprint is to enhance the remotable api to provide an easy way to do async operation over RPC
class MyObject(
fields = {...}
...
@remotable_async
def save(self):
...
@remotable_
def get_by_
...
When using, this object a new object "Future" will be returned
future = MyObject.
... do some stuff ..
obj = future.get_result()
obj.foo = 'bar'
future = obj.save_async()
... do some stuff ..
future.
To achieve this two situation are possible.
From oslo point of view, the project need to provide new method "call_async?" which will immediately return the object Future. In Nova the conductor should be enhanced by new method "object_
An alternative to oslo can be done with the module threading and, the conductor will be enchanced by a new method "object_
...A very simple example:
def object_
return Future(
Blueprint information
- Status:
- Complete
- Approver:
- None
- Priority:
- Undefined
- Drafter:
- Sahid Orentino
- Direction:
- Needs approval
- Assignee:
- Sahid Orentino
- Definition:
- Obsolete
- Series goal:
- None
- Implementation:
- Unknown
- Milestone target:
- None
- Started by
- Completed by
- Sahid Orentino