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

Horizon Lite - Productionization / Optimization Epic #4571

Closed
43 of 64 tasks
jcx120 opened this issue Sep 1, 2022 · 0 comments
Closed
43 of 64 tasks

Horizon Lite - Productionization / Optimization Epic #4571

jcx120 opened this issue Sep 1, 2022 · 0 comments

Comments

@jcx120
Copy link

jcx120 commented Sep 1, 2022

Epic for Productionalization and Optimization of Horizon Lite. Continuation from #4317

Backlog

These are in order of importance:

R&D Tasks

This entails exploring use-cases for Horizon Lite besides the main MVP described above.

Archived Tasks

These are past work items that have been completed, kept around for visibility and historical tracking.

Phase 1: Feature Work

Phase 2: Correctness

Is the work we've done actually correct, i.e. Does it match what Horizon serves today?

There are two main questions here:

  1. Are we generating indices correctly?
  2. Are we using indices correctly?

Phase 3: Going Live

In this phase, we'll actually be deploying the feature to real traffic and seeing how it performs.

Metrics

We want to easily be able to easily answer the question "How long does stuff take?"
At minimum, we should include:

  • Dashboards or some other form of at-a-glance analysis and comparison against existing infrastructure

Deployment

Work with Ops to build out infrastructure and deploy the branch. Questions we need to answer beforehand and tasks we need to complete:

  • What kind of architecture should it have?
  • Do we want to mirror traffic from testnet or production?
  • Do we want to do ALB replays?
  • A build/deployment pipeline for easily updating the infra with changes
  • Approximate the $ cost of a production-ready architecture and compare it to the current one
  • Dev/Demo deployment on infra - Dev deployment of Horizon Light  #4493

MVP Testing

Understand viability of Lite design for real world conditions using our Steel thread impl.

  • Understand request latency characteristics (can it support web scale response)
    • Request profiling: history age vs variation of data
    • Hotspots (indices lookup > txmeta download > request processing etc)
  • Load testing (is there a path to horizontal scaling)
  • Confirm HW footprint (does it confirm our “solid state, constant” assumptions)
    • IO, RAM, CPU, Disk

Performance Optimization

Phase 4: Everything Else

The remaining tasks are contingent on the success of Phase 3: if we deem that Horizon Lite is actually worth doing, there's quite a bit of work to getting everything else ready for production and public release.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Status: Done
Development

No branches or pull requests

2 participants