sahilpaudel

sahilpaudel

PID contributing 97% in the response time/API timeouts

While checking my API metrics in new relic and found queries are getting executed with response time in a few ms, but there is a field for #PID<0.30881.849> which took 300ms+ to process.

Below is the table

Category Slowest components Count Duration %
pid<0.30881.849> pid<0.30881.849> 1 379 ms 97%
Database Postgres rules_engine_test_cases select 1 2 ms 1%
Database Postgres rules_engine_conditions select 1 1 ms 0%
Database Postgres rules_engine_results select 1 1 ms 0%
Database Postgres rules_engine_new_audit_logs insert 1 1 ms 0%
WebTransaction /Diamond.Web.RuleSetController/select_evaluate 1 0 ms 0%
Remainder Remainder 1 7 ms 2%
Total time 391 ms 100%

Can you please help me understand this as it is causing few timeouts as well?

First Post!

hauleth

hauleth

Without knowledge of what is that PID doing and how it is implemented, then it is quite hard to tell.

Most Liked

wanton7

wanton7

Reason why you are not getting almost any answers is that what you are asking is basically someone else to do your work for you. Also they can’t give you any answers because they don’t have access to your code and if they did they would have to what you need to do and that is to find out what part of your code is slow. If someone asked something like that from you would you be able to answer?

I don’t work with Elixir professionally but first thing I would do is to find out what parameters where given to the request. Then try to get same problem appear in your local environment and start profiling. I haven’t yet used any Elixir/BEAM profiling tools because I haven’t had any performance problems with my small projects. With small bit of googling I found this blog how to do performance profiling in Elixir https://medium.com/@victor.nascimento/an-elixir-performance-tooling-story-c5c85479063a

Last Post!

Sebb

Sebb

Here is an example how you could tackle this:

Where Next?

Popular in Questions Top

rms.mrcs
Hi, I need to transform a list of numbers into a map where the keys are the indexes and the values are the original values of the list. ...
New
JeremM34
Hello, how can I check the Phoenix version ? Thanks !
New
vegabook
I’m brand new to Phoenix and I have stripped one of the demo applications to the bone. I just want to get an svg up on the screen. Here i...
New
vonH
When I run the Plug and I recompile I wind up having to use Ctrl C to quit iex and start again. Witht the help of rlwrap I can use the cu...
New
hariharasudhan94
lets say i have a sample like a = 20; b = 10; if (a &gt; b) do {:ok, "a"} end if (a &lt; b) do {:ok, b} end if (a == b) do {:ok, "equa...
New
greenz1
I have a phoenix application from which a user can download multiple(5-6) files of size 1MB. I couldn’t find anything related to sending ...
New
SoCreat
i’m a new one to elixir which editor can i use vs code? or atom? Thanks! :smiley:
New

Other popular topics Top

joaquinalcerro
Hi there, I am working with Ecto-Postgresql and I need to call all of the records from a specific table but the table has 40,000 records...
New
vonH
When I run the Plug and I recompile I wind up having to use Ctrl C to quit iex and start again. Witht the help of rlwrap I can use the cu...
New
jononomo
For some reason my phoenix channels are working for me in my local dev environment, but as soon as I deploy via Docker, I get a 403 error...
New
sen
Hi All, I set a environment variables in dev.exs , like below code. when i start server, how can i set the ${enable} value? thanks. d...
New
TunkShif
This post is an instruction guide to help you setup your Neovim for Elixir development from scratch. It includes general information on h...
274 42716 114
New
sergio
Kind of like when jquery came out, it was super necessary. Existing drag and drop libraries have a bunch of baggage to support old browse...
New

We're in Beta

About us Mission Statement