Code Monkey home page Code Monkey logo

Comments (3)

itaiag avatar itaiag commented on September 27, 2024

The queue size is set to 100000. You may raise this number to 500000 and more, but, if the server got to more then 100000 operations that are pending, then my guess is that you are having some problem with your IO. Even when I stress test the server, I never get near this number, and I'm running scenarios that are not realistic in any way.
Maybe you are using some kind of a NAS? If you do then I suggest changing the location of the docRoot folder to a local folder and see if it solves the problem.

Another option is to reduce the number of calls that are performed to the server. In most binders this can easily achieve this by editing the difido.properties file and increasing the value of the min.time.between.writes property. This will change the minimum time in milliseconds that updates are done to the server. You may experience some delays in the refresh intervals of the reports but it can reduce the IO and network usage significantly.

from difido-reports.

hengoldburd avatar hengoldburd commented on September 27, 2024

There is no NAS there.
this worker contain all persistency jobs?
including:
delete old reports
and all the live api calls (reports, new exec etc.)
??

BTW we did not implement min.time.between.writes in python binder....
maybe this is the time to do so

from difido-reports.

itaiag avatar itaiag commented on September 27, 2024

Hi Benadam!

The worker is responsible for all operations done on the file system. The majority of it is updating the json files of the executions and tests. You can see it as a kind of a shock absorber for smoothing the operation.

Not having the min.time.between.writes can add more stress on the IO and it is a good idea to implement it in the binder. It is not even have to be configurable. In the official binders it is set to 100ms by default and it good enough for most cases, but still, 100,000 operations waiting in queue it's a lot. It is like you are writing to a floppy drive J.

By the way, I'm really interested in your Python binder! and also, you have my number ;)

from difido-reports.

Related Issues (20)

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.