-
Notifications
You must be signed in to change notification settings - Fork 27
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Does this framework work in distributed multi-node cluster of an orchestration service? #14
Comments
Hi, Thanks for taking out the time to look at Flowret and raise your questions. Below are the responses inline. Does this framework support multi-node cluster for an orchestration micro-service? Does the framework ensure that the caseId is unique across a cluster, or is this the responsibility of the application itself to ensure this on a single/multi-node cluster? Can the caseId be a UUID or it has to be an integer? There is no clear explanation provided for some key interfaces, for example, the FlowretDAO. What are the methods in this DAO supposed to do and what's the meaning of the parameters passed? What is the job of the incrCounter(String s) method which is taking a string as input, for example? What are the write and read methods supposed to do exactly? Is the "key" parameter supposed to be a caseId or processId? Similarly, for the other key interfaces provided, there are no clear java docs inline, or elsewhere. |
Thanks, but I still have the following doubts:
Appreciate the inputs! |
Responses inline: what’s the meaning of incrCounter method? What is its purpose? How does it help this library? I could only understand that it is incrementing a string which contains a number. But what’s the use of this to an application, I did not understand. Is this something related to the caseId or its uniqueness? Or just a way to help segregate the process logs/audit logs based on the counter (thinking of caseId here)? could you also share some details about the ProcessComponentFactory and what does the implementation of this interface have to do? Just create an object of either InvokableStep or InvokableRoute? Any examples here? ON_PERSIST event: When is this event triggered specifically? Does the application have to trigger it? Or this automatically triggered? Hope this clarifies. Thanks. |
Thank you so much!
|
Could you elaborate a bit on the state machine of this engine may be? Do you mean a persist step will trigger an ON_PERSIST event which an EventHandler can process, and then the application can decide to store data in the database as per need? Couldn't we do this through a normal "step" as well? What's the advantage of this type of step being added? ON_PROCESS_START: why does this event not set the user_data as well? I assume user_data is application-specific data that needs to be processed and starting a process/case would involve needing such data. If it is OK I will now close the issue. If you have more questions like this, request you to use the discussions tab rather than the issues tab. Thanks for your understanding. |
I checked the code. The reason why user data is not passed when the case is started is because user data is specific to a step being executed and is not at the case level. |
Hi,
Does this framework support multi-node cluster for an orchestration micro-service?
Suggestion:
I think there could be a lot more adoption of this library if better/clear documentation with examples is provided. I did check the JUnits like you have mentioned in docs/tickets and could understand a few things a little better, but I wouldn't say those are a replacement for good API documentation. (readme file needs more documentation or need examples. Inline java docs would be great)
The text was updated successfully, but these errors were encountered: