Thanks ;)
I'll run the same test tonight. I give you my results tomorrow ;)

oh and BTW 32 or 64bits ?

Thanks

On Fri, 1 Apr 2011 10:21:57 -0700 (PDT), Doug <[email protected]>
wrote:
> Anthony,
> 
> Well a similar situation was happening with APE 1.0. APE's process
> would slowly increase and eventually it reach a certain point (around
> 15% to 20%). At this point, I would attempt to post and it would
> return "UNKNOWN CHANNEL" which would normally happen when nobody is
> listening to that channel. Usually it took about 6-8 hours to reach
> this point.
> 
> Under 1.1.0, it appears to be a similar time frame, (perhaps a little
> longer ~10 to ~12 hours) and the memory consumption is much lower
> (around 1.9%), however at this point a post-attempt will return
> "BAD_PARAMS."
> 
> The test I conducted with 1.1.0 was about ten posts a second, but
> under the 1.0 version the traffic was much heavier, probably around
> 100 a second. 1.0 seemed to handle this really well, I automatically
> restarted the 1.0 server every 6 hours and it definitely did the job.
> 
> Thank you,
> Doug
> 
> On Apr 1, 9:35 am, <[email protected]> wrote:
>> Ok, so you didn't have this issue with APE 1.0 ?
>> How many messages do you send before encoutering it ?
>>
>> Thanks
>>
>> On Fri, 1 Apr 2011 08:31:37 -0700 (PDT), Doug
<[email protected]>
>> wrote:
>>
>>
>>
>>
>>
>>
>>
>> > Anthony,
>>
>> > I haven't changed any of the other APE server script, just what I got
>> > from you in the 1.1.0 release. Perhaps I could turn some more logging
>> > on to debug some more?
>>
>> > Thanks for your hard work on this project,
>> > Regards,
>> > Doug
>>
>> > On Mar 31, 3:13 pm, Doug <[email protected]> wrote:
>> >> I'm sorry I must have misunderstood, the way I am sending the events
>> >> is through a PHP script similar to the one that I found on APE's
>> >> website that does a single POST:
>>
>> >> <?php
>> >> $c=0;
>> >> while($c <= 5) {
>> >>         $APEserver = 'http://mydomain:6969/?';
>> >>         $APEPassword = 'mypasswd';
>>
>> >>         $messages = array(
>> >>         'Test Message',
>> >>         'test2',
>> >>         'test3',
>> >>         );
>>
>> >>         $cmd = array(array(
>> >>           'cmd' => 'inlinepush',
>> >>           'params' => array(
>> >>         'password' => $APEPassword,
>> >>         'raw' => 'DATA',
>> >>         'channel' => 'mychannelname',
>> >>         'data' => array( //Note: data can't be a string
>> >>         'message' => $messages[array_rand($messages)]
>> >>         )
>> >>            )
>> >>         ));
>> >>         echo "<br><br>".json_encode($cmd)."<br><br>";
>> >>         var_dump($APEserver.rawurlencode(json_encode($cmd)));
>> >>         $data =
>> >> file_get_contents($APEserver.rawurlencode(json_encode($cmd)));
>> >>         $data = json_decode($data, TRUE);
>>
>> >>         if ($data[0]->data->value == 'ok') {
>> >>         echo 'Message sent!';
>> >>         } else {
>> >>         //echo 'Error sending message, server response is : <pre>'.
>> >>         print_r($data);
>> >>         echo '</pre>';
>> >>         }
>> >>         $c++;
>>
>> >> }
>>
>> >> ?>
>>
>> >> This is the page that tells me "ok" sending the message until the
>> >> server reaches 1.9% and then it returns BAD_PARAMS, the listening
page
>> >> doesn't seem aware of any problems.
>> >> Thank you, regards,
>> >> Doug
>>
>> >> On Mar 31, 2:51 pm, Anthony Catel <[email protected]> wrote:
>>
>> >> > So, If I understand correctly, at the begening everything works
fine
>> >> > and
>> >> > sudently stop working with a "BAD_PARAMS".
>> >> > You don't have any server-side script?
>>
>> >> > Le 31/03/2011 22:05, Doug a crit :
>>
>> >> > > Hi Anthony,
>>
>> >> > > Thanks for the response, I am testing with 4 concurrent users.
>>
>> >> > > I am working with a Fedora, Amazon Linux AMI, EC2 instance,
here's
>> >> > > some specs:
>>
>> >> > > Small Instance default*
>> >> > > 1.7 GB memory
>> >> > > 1 EC2 Compute Unit (1 virtual core with 1 EC2 Compute Unit)
>> >> > > 160 GB instance storage
>> >> > > 32-bit platform
>> >> > > I/O Performance: Moderate
>> >> > > API name: m1.small
>>
>> >> > > I have added a function that wraps the APE.Client(); code (I
only
>> run
>> >> > > startRT() from the listener page):
>>
>> >> > > function startRT(channel, callback) {
>> >> > >      var client = new APE.Client();
>> >> > >      client.load();
>> >> > >      client.addEvent('load', function() {
>> >> > >                                    client.core.start();
>> >> > >      });
>> >> > >      client.addEvent('ready', function() {
>> >> > >            myJoin(client , channel);
>> >> > >                    client.onRaw('data', function(raw, pipe) {
>> >> > >                            callback(raw.data);
>> >> > >                  });
>> >> > >       });
>> >> > >       return client;
>> >> > > }
>>
>> >> > > function myJoin(client, channel) {
>>
>> >> > >      if(isArray(channel) == false)   {
>> >> > >          channel = removeNonAlphas(channel);
>> >> > >          client.core.join(channel);
>> >> > >      }
>> >> > >      else {
>> >> > >          for (var i in channel)  {
>> >> > >                      channel[i] = removeNonAlphas(channel[i]);
>> >> > >          }
>> >> > >          client.core.join(channel);
>> >> > >      }
>> >> > >      var channelpipe = channel.toLowerCase();
>> >> > > }
>>
>> >> > > function removeNonAlphas(channel){
>> >> > >      channel = channel.replace(/[^a-zA-Z 0-9]+/g,'');
>> >> > >      return channel;
>> >> > > }
>>
>> >> > > function isArray(obj) {
>> >> > >      if (obj.constructor.toString().indexOf("Array") == -1)
>> >> > >         return false;
>> >> > >      else
>> >> > >         return true;
>> >> > > }
>>
>> >> > > Thank you!
>>
>> >> > > On Mar 31, 11:51 am, Anthony Catel<[email protected]>  wrote:
>> >> > >> Hi doog,
>>
>> >> > >> You don't have any custom server-side javascript?
>>
>> >> > >> How many concurent users do you have?
>> >> > >> What is your CPU architecture?
>>
>> >> > >> Thanks
>>
>> >> > >> Le 31/03/2011 19:18, Doug a crit :
>>
>> >> > >>> I've been experimenting with the new APE 1.1.0, and it appears
>> >> > >>> that it
>> >> > >>> works until memory consumption of the aped process reaches
1.9%
>> and
>> >> > >>> then whenever I attempt to post some data I get
>> >> > >>> Array ( [time] =>    1301590992 [raw] =>    ERR [data] =>  
>>  Array
>> >> > >>> ( [code] =>
>> >> > >>> 001 [value] =>    BAD_PARAMS ) ) )
>> >> > >>> I can open a channel and I see this in ape.log:
>> >> > >>> 2011-03-30 15:58:21 - src/users.c:180 - New user - (ip :
>> >> > >>> 2.my.ip.69)
>> >> > >>> So it appears to recognize that somebody has joined the
channel
>> >> > >>> and is
>> >> > >>> listening. Also, the page I have set up that listens to the
>> channel
>> >> > >>> sends no errors, it includes the js file and its allocated a
>> >> > >>> numbered
>> >> > >>> subdomain like it should (4.mydomain.com, for example).
>> >> > >>> My main.ape.js looks like this:
>> >> > >>> Ape.addEvent("init", function() {
>> >> > >>>     include("framework/mootools.js");
>> >> > >>>     include("framework/Http.js");
>> >> > >>>     //include("framework/userslist.js");
>> >> > >>>     include("utils/utils.js");
>> >> > >>>     include("commands/proxy.js");
>> >> > >>>     include("commands/inlinepush.js");
>> >> > >>>     //include("examples/nickname.js");
>> >> > >>>     //include("examples/move.js");
>> >> > >>>     //include("utils/checkTool.js"); //Just needed for the APE
>> JSF
>> >> > >>> diagnostic tool, once APE is installed you can remove it
>> >> > >>>     //include("examples/ircserver.js");
>> >> > >>>     //include("framework/http_auth.js");
>> >> > >>> });
>> >> > >>> I've commented out some stuff that I didn't think I needed.
This
>> >> > >>> configuration works on an earlier installation (1.01a I
>> >> > >>> believe).
>> >> > >>> The
>> >> > >>> problem with the earlier version is memory consumption, but it
>> >> > >>> seems
>> >> > >>> to happen at a higher percentage (round about 15-20%).
>> >> > >>> I have tried using the older JSF and the newest one I could
find
>> on
>> >> > >>> github, behavior appears to be identical.
>> >> > >>> I have fixed the older installation by running a cronjob every
6
>> >> > >>> hours
>> >> > >>> to restart the ape process.
>> >> > >>> Any advice or suggestions would be a huge help, thank you!

-- 
You received this message because you are subscribed to the Google
Groups "APE Project" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/ape-project?hl=en
---
APE Project (Ajax Push Engine)
Official website : http://www.ape-project.org/
Git Hub : http://github.com/APE-Project/

Reply via email to