Page 1 of 1

nginx+php-cgi and mysql cluster with vicidial

PostPosted: Thu Aug 19, 2010 11:16 am
by cyrenity
Hi,

we are planning to expand your vicidial setup from 20 seats to 150 seats, previously everything was running on a single box, for now we have setup mysql cluster (2+2 sql/data nodes) and migrated already running vicidial db into cluster and it's running smooth till now, we have also replaced apache2 by nginx+php-cgi setup. soon i will be shifting asterisk server to a new quad core machine, nginx has drastically lowered down the cpu utilization and memory consumption.

as for now things are running smoothly, i will keep this thread update as i progress further in coming days.

best regards,
-m

PostPosted: Thu Aug 19, 2010 11:22 am
by cyrenity
forgot to mention i have also split the database load of astguiclient(http) and perl across two sql nodes.

PostPosted: Thu Aug 19, 2010 4:26 pm
by williamconley
interesting.

you are using a true sql cluster and hitting more than one node to access the same data?

have you bumped into any "bad data" issues?

PostPosted: Thu Aug 19, 2010 7:25 pm
by mflorell
ViciDial does not support InnoDB-based databases like the MySQL cluster engine. As you grow you WILL run into problems over time.

The only MySQL cluster solution that we recommend is MyISAM Master/Slave.

PostPosted: Thu Aug 19, 2010 7:56 pm
by williamconley
In which case, you should certainly have a "backup" plan available and ready to go (with pre-mapped data into MyISAM for when the moment comes).

But DO tell us when the "barrier" arrives ... how many simultaneous calls, how many agents and the like. good to know. :)

PostPosted: Fri Aug 20, 2010 12:12 am
by cyrenity
@mflorell : i am experimenting mysql cluster out of curiosity :-p

@williamconley : yes accessing same data over two nodes, i have even moved HEAP/MEMORY tables to NDBCLUSTER, and it works out of the box,


Yes i have a backup plan, i have a stand-by mysql server and i am taking both Cluster Backups and SQL Dumps as well.

we are running an inbound only campaign, right now there are 20 agents and 60+ incoming calls on server.

PostPosted: Fri Aug 20, 2010 8:59 am
by mflorell
With only 20 agents you won't notice problems with the innodb engine. It's when you start to get over 50 that you will notice some strange issues cropping up, and then when you get over 100 agents the lack of query queueing will really start to cause constant problems. The more load you put on it beyond that the worse things will get. We have dealt with several clients that tried InnoDB and this is always how it goes. ClusterDB is based on InnoDB and it has the same problems. Only MyISAM remains stable at agent loads over 100 agents and on well over 300 agents.

PostPosted: Fri Aug 20, 2010 9:57 am
by williamconley
also the load from inbound is minimal compared to the load for outbound with the same number of agents. the number of queries generated for all those outbound calls, the necessary logic behind each decision, hammers the sql server mercilessly. but on inbound, it's a little more orderly and relaxed.

so i'm very interested to hear when it "moans and passes out" LOL