davidmoten / davidmoten/state-machine
Questions: Reflection and PlantUML
- Dominant language
- Java
- Stars
- 145
- Forks
- 14
- PR merge metrics
- No merged PRs in 30d
Description
Hi David,
I just came across this amazing library of yours and am considering using it in our next payment processing microservice.
Four question came to my mind, that I would be thankful to get your thoughts on:
- Does this library use reflection during run-time? If not, could it in your opinion be compiled into a native executable using GraalVM or do you foresee any problems?
- Did you achieve better results with GraphML -> yed, or why did you select this semi-manual process over an automatic with PlantUML?
- How powerful is your state chart export, and do you intend on improving it? E.g. I cannot find sub states as defined by Harel statecharts. To me, the diagram export and ES persistence are the most powerful feature of your library.
- How would you attempt to implement a LOCK across multiple microservices to make your request exactly-once processed, i.e. that the first request blocks the second while still processing, or returns the same result without executing twice? A database implementation would be possible when the database is shared for all microservices of the same domain, but has it been implemented yet? Or would you use a IMDG e.g. Hazelcast instead for this use case?
Cheers and thumbs up for your holding the flag of software quality high,
John
Contributor guide
No contributing guide indexed for this repository
Research direction
The issue names no repository files, tests, or entry points. Start by locating the runtime reflection, GraphML and state-chart export, ES persistence, and request-processing implementations; done would require documented answers to the four questions, including the feasibility and design considerations raised.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- java
- Domain
- devtools
- Issue type
- Documentation
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 15/100