Giter Club home page Giter Club logo

Comments (4)

lidel avatar lidel commented on June 3, 2024

Silly question, but.. do we cache anything in caskadht?

I suspect there are a lot of duplicate queries, considering how fallback/retry works in caboose. We have L1s being asked for the same CIDs over and over, and in turn, Lassie asks IPNI about them. IPNI needs to respond to the same asks, for the same CIDs, multiple times. Add cache.

Adding a separate lookup result cache for failures with TTL of 15s (to be under caboose retry) and other one for success with TTL of 60s (block get timeout in caboose across 3 retries) should reduce the cost of redundant lookups.

from caskadht.

masih avatar masih commented on June 3, 2024

All returned GET http responses are cached at cloudfront layer which sits in front of ci.contact load balancer

from caskadht.

masih avatar masih commented on June 3, 2024

Actions being taken to mitigate the high CPU utilisation:

  • Increase service replicas to 3 and loadbalance incoming requests over them
  • Deploy a fleet of caskadht with accelerated DHT client disabled. The instances sit behind a loadbalancer similar to the fleet that uses accelerated DHT.
    • 23/02/23 Holding off on this now that accelerated instances are seem to be running OK on compute optimised nodes.
    • 17/02/23 Service continues to function with stable performance. Deferring this task.
  • Move the fleet that uses accelerated DHT onto compute-optimised instances with ample CPU.
  • Profile the accelerated DHT for low hanging fruits if any.

Ideas:

  • Use persistent peerstore, such that on instance restart there is less overhead to repopulate the network state.
  • Share peerstore across multiple clients to reduce the need for state refresh per instance.

from caskadht.

masih avatar masih commented on June 3, 2024

Accelerate DHT-related profiling and improvement issues are to be captured separately with PRs to go-libp2p repo. This repo simply uses the library.

Closing as move to high CPU machines solved the stability problem.

from caskadht.

Related Issues (5)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.