Juraj, thanks. That is a good plan.
On Sunday, May 7, 2017 at 10:47:22 PM UTC-4, back2dos wrote: > > You should really try to isolate the error. > > 1. Run the function from within a simple node script and see if it returns > the same results consistently. If not, investigate that. > 2. Replace the function with something trivial with a busy loop to get > roughly the same runtime duration. If you do get the same non-determinism, > then the error is somewhere up the stack. If not, it's gonna be tough, > because after step one you can be fairly certain that your function is > deterministic, so all you can tell is that it probably causes some > side-effect that is relevant to the stack above. Like you might be trashing > a lot of memory or something and that causes hapi to behave strangely. In > this case I would advice to add back more and more code of the old function > until the non-determinism shows again and act on what you have learned from > that. > 3. Assuming that a busy waiting function shows the same non-determinism, > the problem would have to be either in node or in hapi. To test that, your > best bet is to serve the functionality without any kind of framework. > Because you have only one call, it shouldn't be hard to do. You will find > out that either node is the problem or that it isn't. The next step would > be to report that to your client and also raise an issue with whoever is > responsible for the failure by giving them a minimal example which you > should have by this point. Then you should make sure to configure nginx in > a way that the concurrency never reaches a level that the node app can't > handle and start giving back 503 or something. That way you don't serve > incorrect responses. > > Best, > Juraj > > > On Fri, May 5, 2017 at 6:57 PM, <[email protected] <javascript:>> > wrote: > >> Danizavtz, that is an interesting read. Thank you for sharing it. But >> again, because I deliberately bombard the app with more than it can handle, >> I am expecting it to fail often. And when it fails, I expect to get a >> SocketTimeout exception, or some other kind of timeout error. So it seems >> reasonable that the app becomes overwhelmed and then fails -- that is >> exactly what I am trying to do. But again, I expect only one of two >> responses: >> >> 1.) the app sends the correct data formatted as JSON >> >> 2.) the app throws an exception >> >> What doesn't make sense to me is: >> >> 3.) the app sends correctly formatted JSON, but the actual data from the >> memory cache is missing >> >> >> >> >> On Thursday, May 4, 2017 at 9:53:24 PM UTC-4, Danizavtz wrote: >>> >>> Here is a better link: Sorry >>> https://medium.com/netflix-techblog/node-js-in-flames-ddd073803aa4 >>> >>> On 4 May 2017 at 09:28, DaneiL <[email protected]> wrote: >>> >>>> Hello, i read your entire case, it seems to me, that its not related >>>> with node itself, but with hapijs. >>>> Your statement made me reckon a study case made by Netflix. >>>> That you can see here: >>>> https://www.infoq.com/news/2014/12/expressjs-burned-netflix >>>> >>>> I think it should give you some insights of what is happening. >>>> That's all >>>> >>>> >>>> On 3 May 2017 at 18:27, <[email protected]> wrote: >>>> >>>>> No matter how much stress a NodeJS app is subjected to, it should only >>>>> offer 2 responses: >>>>> >>>>> 1.) the correct data >>>>> >>>>> 2.) a SocketTimeout exception >>>>> >>>>> A NodeJS app which sends back bad data is useless. >>>>> >>>>> I'm trying to find an answer for the problem described here: >>>>> >>>>> >>>>> http://www.smashcompany.com/technology/a-surprising-nodejs-failure-mode-deterministic-code-becomes-probabilistic-under-load >>>>> >>>>> >>>>> Any thoughts on why this might happen when the load is high enough? >>>>> >>>>> >>>>> >>>>> >>>>> >>>>> -- >>>>> Job board: http://jobs.nodejs.org/ >>>>> New group rules: >>>>> https://gist.github.com/othiym23/9886289#file-moderation-policy-md >>>>> Old group rules: >>>>> https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines >>>>> --- >>>>> You received this message because you are subscribed to the Google >>>>> Groups "nodejs" group. >>>>> To unsubscribe from this group and stop receiving emails from it, send >>>>> an email to [email protected]. >>>>> To post to this group, send email to [email protected]. >>>>> To view this discussion on the web visit >>>>> https://groups.google.com/d/msgid/nodejs/a02a9f1f-ef00-4049-8669-b70a00bf9457%40googlegroups.com >>>>> >>>>> <https://groups.google.com/d/msgid/nodejs/a02a9f1f-ef00-4049-8669-b70a00bf9457%40googlegroups.com?utm_medium=email&utm_source=footer> >>>>> . >>>>> For more options, visit https://groups.google.com/d/optout. >>>>> >>>> >>>> >>>> >>>> -- >>>> []'s >>>> >>> >>> >>> >>> -- >>> []'s >>> >> -- >> Job board: http://jobs.nodejs.org/ >> New group rules: >> https://gist.github.com/othiym23/9886289#file-moderation-policy-md >> Old group rules: >> https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines >> --- >> You received this message because you are subscribed to the Google Groups >> "nodejs" group. >> To unsubscribe from this group and stop receiving emails from it, send an >> email to [email protected] <javascript:>. >> To post to this group, send email to [email protected] >> <javascript:>. >> To view this discussion on the web visit >> https://groups.google.com/d/msgid/nodejs/c7353e3f-d936-4808-a133-5eebaf1a9723%40googlegroups.com >> >> <https://groups.google.com/d/msgid/nodejs/c7353e3f-d936-4808-a133-5eebaf1a9723%40googlegroups.com?utm_medium=email&utm_source=footer> >> . >> >> For more options, visit https://groups.google.com/d/optout. >> > > -- Job board: http://jobs.nodejs.org/ New group rules: https://gist.github.com/othiym23/9886289#file-moderation-policy-md Old group rules: https://github.com/joyent/node/wiki/Mailing-List-Posting-Guidelines --- You received this message because you are subscribed to the Google Groups "nodejs" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. To view this discussion on the web visit https://groups.google.com/d/msgid/nodejs/47eb51a3-87c2-4139-bed0-dfcf7be47ee5%40googlegroups.com. For more options, visit https://groups.google.com/d/optout.
