This might be the solution to the huge CPU-spikes. Please read this

Blame is an emotional word. If you look through the thread it is used but I am not sure who is blaming who :wink:

The end result is that there IS a solution provided by Sangoma (even if they have never experienced it themselves) and all of those who had a concern have thanked Sangoma.


1 Like

Hi Dicko,

We all thank Sangoma for their incredible work. For more than 10 years now.
It is appreciated.

This is the theme of this thread. You said you talked to the original poster so maybe he forgot to tell you that he started this thread off by saying “They [sangoma] don’t want to give the solution”. That is not true and I don’t appreciate that. Since you seemed to align yourself with the original poster since you talked to him and came into this thread after taking to him I assumed you also agreed with his viewpoints

Well, the captain and the helmsman move on , amportal to FreePBX to Sangoma , the promise has always been to keep it open source at core.

Let’s all endeavour to keep it that way at heart, and be as inclusive as possible, given reports like

It would be interesting to see commercial support being added back to non x86 non RH based devices ( which are becoming more and more prevalent )

1 Like

Assume… [Do not make an Ass out of U and ME]
I am caring about any technical issue and I want to help Sangoma and others.
He had some issues with cpu spikes. And I am not interested in his or others viewpoint towards Sangoma or anyone else.

Let make and keep FreePBX the best PBX and let’s do that together.

In the near future I will test the Cron and Dasboard fixes more and let you know my results. Maybe it helps.

1 Like

So the zend company announced about three years ago that they were no longer making zend guard specifically for anything php 7.0 or higher. We announced that at that time and have been aware of that for about three years as well. The thread you posted is talking about zend engine. Which isn’t the same thing as zend guard or zend loader. So it’s not really a concern these days and has nothing to do with zend guard.

As I’ve detailed in two recent blog posts freepbx will go to ioncube.

1 Like

Excellent choice, I was it’s proponent all those years ago when you guys chose otherwise.

The original poster is encouraged to bring back their original posts at any time

1 Like

Hi all,

First things first: thanks for making my account un-freezed and this topic visible again @tm1000. I really appreciate it.

Then I want to make clear; I have a lot of respect for Sangoma and FreePBX, and this thread wasn’t a attack at all. I just want to share a solution that worked for me and might help other people. I made this thread so we can all come to a even better solution.

Also, I would like to say thank you, to anybody that was reacting to this post with other solutions nor criticism against my solution. It helps a lot, to find a more efficient solution.

Sangoma, thanks for making FreePBX great. Together we can make FreePBX even greater than it already is.


1 Like

According to the internal QA ticket on this these are the modules that now use the “job” consolidated functionality. Meaning it is now ‘one’ cron to rule them all. At least for these tasks that happen every minute. We’ve been working on this for a long time because of what the community said (but could not replicate the issue ourselves). This also helps solve a few other issues such as if you disable a module it will disable it’s cron jobs automatically and also remove them on uninstallation.

  • framework version 14.0.12
  • calendar v14.0.3
  • dashboard version 14.0.7
  • pms version
  • vqplus version
  • pagingpro version
  • timeconditions version

There’s been no formal write about this because it just entered testing yesterday and again. Kind of hard for me to work something up when we can’t replicate it ourselves. Once these/those are updated you’ll see that the “every minute” crons now turn into a single cron (you’ll notice it also randomizes a sleep from 0-30):

* * * * * [ -e /usr/sbin/fwconsole ] && sleep $[RANDOM\%30] && /usr/sbin/fwconsole job --run --quiet 2>&1 > /dev/null

Hi Andrew,

It seems like we’re getting closer to a permanent solution. I know it is hard to solve a problem if there is no formal or explained ticket of the specific problem. I have a lot of respect for you as developer.

I will look at the solution you made very soon. I will let you know the results.

Thanks in advance, for helping.


One ringt o rule them all

Running many processes in parallel is always much more resource intensive than running them serially.

Good call sangoma

There were formal FreePBX Open Source issue tickets. The issue comes from the fact that we (as Sangoma employees) can’t log into any user’s system unless they have a support contract with us, to investigate this. That is for liability reasons (Imaging if I went into your system and broke it and you lost business revenue as a result. I’d be liable for damages and so would Sangoma). Therefore you have to open a support ticket where-as you enter into an agreement with Sangoma and it’s employees (you agree to this in the TOS for support services)

It’s not until someone opens a support ticket up about it can we look into it on the systems it’s happening in and unfortunately that sometimes means spending money with Sangoma. I don’t know how to word that to sound any better, but this is sometimes what needs to happen, unfortunately.

Reiterating. Sangoma does run a cloud infrastructure, but we never experienced these issues. What we did experience and fix I documented in a blog post (Performance Improvements in FreePBX) and all of those fixes are in the open source product. So that should have already helped people out. As for running cron processes minutely, some of those processes people were saying were killing their systems were curious, like time conditions, which doesn’t do anything major. But I could never replicate it so it was hard to see myself.

Also your account was “freezed” because you started this whole thread and then went through and removed every single response you posted, before I even got involved. Leaving an unbalanced amount of replies. That’s pretty close to trolling a forum system. So I locked your account.

One could word that "a curious developer who noticed a burgeoning problem in his own forum might go outside the pale to reach out to a compliant user to agree without charging them, to mutually investigate the problem, no? not much cost to Sangoma and working with a sophisticated end user is free , just beneficial to all.

The question is at what point financially, 1 no, 5 maybe, 25 probably needs investigation.

But what is irresponsible in the long run is to say “lots of people don’t have this problem, please go away” is that not "sweeping it under the carpet?

Here is the double edge sword of all this. Sangoma employees, like @tm1000, spend numerous hours on the forum providing help and support for the community. They not only do this during normal office hours, they do it after hours and weekends. Having support tech and project developers active in the community is how Sangoma tries to mitigate support costs for the community.

The problem with this, and this can be found in various threads about CPU spikes, is that when users are asked for specific details, test results, configuration information and don’t provide it either fully or at all it makes it hard for anyone (Sangoma employee or community member) to actually help at all. These things are going to be requested when you are paying for support time so why treat it like it means nothing when asked on the forum for free?

This is why paid support exists and has to be used in certain cases. Once the clock is ticking and there is a monetary cost applied it seems the information no one deemed important during the attempts to get free support find it vital to provide.

While the idea of Sangoma waving the support fee for one or two users that are having an issue like this CPU one is noble, it’s a slippery slope. Could turn out that the issue is not a Sangoma issue but a user issue that has nothing to do with Sangoma (improper VM config, etc.). When Sangoma says “This is the issue, it’s not related to us. You’ll need to fix it” and the user goes “Oh well how do I do that? Can you help?” is it fair then to start charging them?

This of course then leads to the “Well we looked at 3 user’s systems and it was all user error. Who is the next one to get free support to figure this out?” How long do you be noble and find that the 2 dozen people that reported the issue only 4 had real issues Sangoma needed to fix?

My response has always been the same on most of these types of threads. “I cant reproduce it” and “please go to support”. It’s the “please go to support” comment that people usually have the most issue with, I dont think I’ve ever told someone to “go away” (“go to support” usually winds up in my inbox anyways but we get the support guys to go through it first) but I get your gist there and hear your point.

“cannot reproduce” seems to irk people the same way. There’s a classic example of an issue with Yealink years ago where I kept telling people I couldn’t reproduce the bug with Yealink and people got upset and I got upset because I was sitting there with a Yealink phone in the Neenah office with @xrobau. It’s the stuff you don’t see behind the scenes that causes a lot of these assumptions, thats unfortunate but I can’t document my life like a reality show :slight_smile: (not that you expected that). These situations always seem to wind up with thinking that Sangoma isn’t trying or Sangoma doesn’t care or that I’m pushing people away when most offten I am spending my own “free” time looking at these issues before I actually comment “can not reproduce”.

When this issue first came up about CPU I went to the cloud team and I had a conversation with the lead cloud employee here at Sangoma and he stated he did not see those issues in our cloud environment. Since I don’t run cloud services I took him at his word. This is what he does for a living after all.

Here’s a few classic examples of statements that people have said where I go on the defensive and it turns into a spitting match:

  • “Sangoma is going to get rid of user and device mode”.

    • False. We literally and coditivly (I made that word up) can not. It’s impossible. FreePBX would blow up and not work. Additionally I just worked with a member of the Digium team on Voicemail changes Asterisk had to insure these changes would still work with the open source hot desking model that is in FreePBX for User and Device mode. Work is still being put into that
  • “There is high CPU and Sangoma don’t want to give the solution”

    • Just because we can’t reproduce something doesn’t mean Sangoma doesn’t want to give the solution. What seemed to be overlooked originally was that I said I couldn’t replicate it and please go to support. I only have so many hours in the day to deal with forum threads and forum issues and most of those hours are when I am not actively at work (to which my wife says “why are you on that site again”)

Ok let’s go to res publica . . .

Does any user here have a problem in this general area? It is an up or down answer.

I suppose I havent been following this issue with CPU spikes, so I am somewhat out of the loop. In my tiny little cloud, I have 89 images running on two hyperV hosts. Each VM has 2 vCPUs and 2048MB of RAM.

I havent noticed any CPU spikes, here is a small sample from a random VM.

Well, you said that somebody of Sangoma said that he doesn’t have any of these problem in the cloud. Than why didn’t you compared the cloud environment and the open-source project? Just to see if there is something different in this area? Sometimes I think that Sangoma wants to force us to go to their cloud environment. Am I the only one?

And I have a problem @dicko. But you already knew that ;p

Yes, because they aren’t.

1 Like