Some feedback:
- I would be happy with it restarting 5 minutes later. For my case, the client usually won’t even have his domain up yet. The key here is that the checkout process is fast.
- My options remain to try and speed this up, or to create the account afterwards using cron
Some things I tried:
- I tried restart_httpd 0, and it went down from 24 seconds to 19.
- We also increased Ram to 12Gb, which may have also helped in this case.
I am going to try a few more things and then give up and leave it up to cron to create the account afterwards.
There is also a mistake on the documentation here: appendix .interworx. com/ 7.x/ api/ nodeworx/ siteworx.html
Seems the same description are used for both these entries:
fpm_process_id_timeout |
string |
No |
|
|
The number of seconds after which an idle process will be killed. Used only when pm is set to ondemand. Available units: s(econds)(default), m(inutes), h(ours), or d(ays). |
restart_httpd |
integer |
No* |
1, 0 |
1 |
The number of seconds after which an idle process will be killed. Used only when pm is set to ondemand. Available units: s(econds)(default), m(inutes), h(ours), or d(ays). |
I also noticed that if I provide incorrect data in the api call, it takes 6 seconds. So 6 seconds is really the best I can get. So the account creation portion probably only takes about 13 seconds. Really wish I could get it down to 3 or 4 though. 
Thanks for that info, re the API–we are in the process of updating the API documentation (which is why there is a little disclaimer on the main page). It is automatically generated and that automated process has been broken for a little bit, so some tables and such may be a bit jumbled. It is currently being worked on.
Honestly, 6-13 seconds is pretty good. On my test server, with zero traffic and 5 domains, it takes about 11. So what you are experiencing is pretty standard.
I think that creating the account afterward may be the normal practice–that way the customer has paid for the product, first, so it is known it is a good order. I’ve not heard of many folks who generate the account before payment is even processed (including our parent company. My personal domain, the order had to be set up and processed before they sent me an email with the account information a minute or so later).
5-6 seconds is about what I’m getting when I hit the CLI on my test server, CLI users the same controllers as API. I don’t appear to have any incorrect data in my call. 8-10 is about what I get on other control panels.
If you want to put the acct creation process in the background and make it non-blocking. You could use shell exec, put the call in a script and call the script with exec and add & at the end of the cmd. You will need to do a lot of your own validation and I’d also set up locking of some kind to prevent these tasks from running at the same time. If you went this direction there would be no need to skip apache reload etc. It can take as long as needed.