Skip to content
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

Create programmatic testnet traffic #1439

Open
ra0x3 opened this issue Oct 30, 2023 · 4 comments
Open

Create programmatic testnet traffic #1439

ra0x3 opened this issue Oct 30, 2023 · 4 comments
Assignees
Labels
research This issue only requires researching an idea

Comments

@ra0x3
Copy link
Contributor

ra0x3 commented Oct 30, 2023

This issue is written within the context of the indexer specifically but could be expanded to include other ecosystem projects (e.g., Fuel Client) that would benefit from simulated traffic

Context

  • So far on beta-4 testnet, the overwhelming majority of blocks only have a single transaction
  • This is generally fine, but makes it hard to see how our services (i.e., the indexer) performs under what would be a successful mainnet load (lots of transactions, lots of receipts in transactions, etc)
  • It would be great if we could "push a button" and programmatically simulate somewhat authentic successful mainnet traffic

The issue

  • The TX volume on beta-4 (and on future beta deployments, especially at the beginning) is low to the point where we're not using this time to get a good look at how our indexer service performs under real load (e.g., 50 transactions in a block)

Proposed Solution

  • We should create some script that will programmatically create, and emit blocks and transactions that are packed with data to simulate a "real world" mainnet
  • Some things to keep in mind:
    • We might want to use our best guess to pack these blocks & transactions with a distribution of data (e.g., receipts) that looks similar to what we'd see in the real world

Deliverable

  • A simple script that we can run from the command line to generate this data
    • This script would run for some given amount of time and eventually stop
    • This script would only be run on testnets
@ra0x3 ra0x3 self-assigned this Oct 30, 2023
@ra0x3
Copy link
Contributor Author

ra0x3 commented Oct 30, 2023

@Voxelot

  • As we discussed, I'm happy to lead the charge on this, but not sure in which project I should put this issue.
  • I thought about putting it in sway-applications but thought that was for public projects whereas this would be an internal Fuel project.
  • Feel free to let me know and I can move this issue and get the conversation started :)

@ra0x3
Copy link
Contributor Author

ra0x3 commented Nov 1, 2023

CC @digorithm

@digorithm, @Voxelot mentioned you were working on an SDK environment or something? Could you paste any relevant links here?

@ra0x3 ra0x3 assigned lostman and unassigned ra0x3 Nov 28, 2023
@ra0x3
Copy link
Contributor Author

ra0x3 commented Nov 28, 2023

@lostman We can keep track of this work in this issue, I'll re-assign to you

@ra0x3 ra0x3 added the research This issue only requires researching an idea label Nov 28, 2023
@lostman
Copy link
Contributor

lostman commented Nov 28, 2023

Thank you 🙏

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
research This issue only requires researching an idea
Projects
None yet
Development

No branches or pull requests

2 participants