-
-
Notifications
You must be signed in to change notification settings - Fork 9
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
AsyncAPI Application simulation #16
Comments
Hello i am interested in participating . which technology stack you believe would best fit the needs of this library? suggestion : node ? will this be a npm library? |
Hey @NektariosFifes, Node (JavaScript/TypeScript) could be an option yes, to me it doesn't matter. 👍 on your ideas.
Keep in mind not everyone wants such a feature, so the library should be versatile enough to support different use-cases. But I would not be surprised if someone wants this feature.
I agree there has to be some kind of visualization, but to what extent might vary again, depending on the use-case. |
for containerization docker? |
Project requirements
Common Vocabulary
User stories
Developer stories
Implementation details
Non-functional requirements
|
Hey Guys, want to give some user inputs on requirements.
Please Correct me, if anything doesn't make sense |
@pawanakhil i will update the requirements. Any other suggestions? Will you take part in GSoC? |
That's it as if now, maybe will update if I get any.
Maybe not or Maybe as a mentor 🤔 if I get chance (although it's upto member's of community). Be it Anyways, I am happy to help out and contribute to this project. |
@pawanakhil this is open source project from initiative that is community driven. Nobody from some company will come and tell you to go away. We love working here in larger groups as it always enriches discussion and at the end make our tools better. So feel free to contribute and share your experience. I would say official GSoC mentors are there in case noone else can help, but it doesn't mean they are the only ones that can help drive the project forward. |
Great start guys 👏 Maybe it is a good idea we clarify the word
@NektariosFifes I would suggest we add a test coverage of around 95% whenever we talk about implementing anything it is implied that it contains tests, docs, and the implementation. We need to ensure that any contributions do not break the library 🙂
@pawanakhil I don't think this makes sense since, when you are doing the simulation you are expecting already existing services to be in place ready to process those requests right? However, I agree that we should use the defined servers in the AsyncAPI document 👍 Maybe the user selects a server before initiating the simulation.
Regarding #S2, maybe instead of Just to add a few more use-cases: As you guys suggest the scenarios should be part of the AsyncAPI document, but what if scenarios are across multiple AsyncAPI documents, such as a chain of events, that would be a bit confusing won't you say? 🤔 Maybe there already exist frameworks how to document such scenarios we can re-use? 🤔 |
I will update the requirements
Idea: "Reporters" could take 1.data streams or 2.Promise Arrays with results internally, and spit out objects with a specific format. It will be up to the user to figure out how he want to visualize the results. However i think we should provide an example(probably as a web app because a command line visualization of statistics will not be easy if the container is running in a remote machine). This example visualization webapp utilizing the library might be in a separate repo. I am making a ui library for react and i will try to add components for visualizing statistics / stress tests . |
Would be cool if it could do that yea 🎉 |
Cool. Agree with it. Although, It's a good option to have - Before starting the simulation, checking whether all the servers or user specified servers (for simulation) are running or not and notifying details of the servers which not running back to the user. Because if the servers aren't running and performing simulation doesn't make sense.
How are we planning to take the input of user defined scenarios ? through AsyncAPI document itself ? Yeah, then it would be definitely confusing. IMO. |
@pawanakhil Yea I agree it would probably be "best" to provide a separate file for this. Basically creating a specification for specifying simulations (if it doesn't already exist). Another thing we have to keep in mind is how would we keep the scenario files up to date with ever-changing AsyncAPI documents? @NektariosFifes I would have to insist that |
@jonaslagoni I will start working on the specification. For a start i will try to define its rules and try to make a parser. |
I created a repository for the follow up issues and PRs: https://github.com/asyncapi/fluffy-robot We should also figure out what it should be called 😄 #1 @NektariosFifes do you mind create an issue for the different parts that should be discussed? |
@jonaslagoni ok 😃 i will |
@NektariosFifes I'd love to help contribute to the visualization of the reports. You said you're making a ui library for react, is this library specific for the visualization? or something you're just working on. Nevertheless I'd love to take a peek at the library. Mid sharing the repo? |
@AceTheCreator I have not progressed that much just created some inline highlighted text components and a small fill/progress bar but i think this ui library will focus in the visualization of this project. My setup is kinda weird 1 project for developing testing and 1 for packaging and publishing. I will probably push the development repo here:https://github.com/asyncapi/fluffy-robot soon. |
Ok cool. Looking forward to it. Keep up with the good work mate 👍 |
I would like to contribute to the visualization of the project. Please direct me where to get started. |
Folks, maybe we could transfer it under the fluffy robot since the work starts soon and it no longer is just an idea? |
This issue has been automatically marked as stale because it has not had recent activity 😴 |
This issue has been automatically marked as stale because it has not had recent activity 😴 |
Shouldn't this issue be closed? |
Reason/Context
A simulation library that can trigger events in your applications based on AsyncAPI definition(s). The main purpose is to stimulate your application(s) in a development environment (staging?). Use it for stress testing, hunting down concurrency problems, stimulating visual applications, finding scalability issues in your application, and more.
The general use-case:
Required knowledge:
You need to learn the basics of the AsyncAPI specification since it relies on the information in the provided documents.
Description
I suggest focusing on the important parts of the use-case which are:
Rabbit holes / be careful around these topics:
Of course, these things are all suggestive and depend on what the user finds important. So never see any of these things as non-negotiable requirements and focus points.
The text was updated successfully, but these errors were encountered: