I highly recommend that you take time making this library pass autobahn testsuite.
First it'll help find some odd bugs.
Second it'll help to respect standard of RFC 6455.
1-8 and 10 : is about basic protocol
9 : benchmark purpose
12 and 13 : is about compression.
Also most probably will help to speed up the library. I tested it with your library and my version.
All test are done with php7 on localhost. I added support of stream library the libevent are not there because they are not yet supported on php 7. Time are in seconds.
autobahn testsuite without 9 -12 -13
...eventloop... total time - server side time - calls
ghedi socket 53.894512891769 - 0.2540876865387 - 1053
xarak stream 11.52151799202 - 0.12486124038696 - 1442
xarak socket 11.546305894852 - 0.16052651405334 - 1343
xarak libev 11.529824018478 - 0.20058488845825 - 1329
I highly recommend that you take time making this library pass autobahn testsuite.
First it'll help find some odd bugs. Second it'll help to respect standard of RFC 6455.
1-8 and 10 : is about basic protocol 9 : benchmark purpose 12 and 13 : is about compression.
Also most probably will help to speed up the library. I tested it with your library and my version.
All test are done with php7 on localhost. I added support of stream library the libevent are not there because they are not yet supported on php 7. Time are in seconds.
here the result : https://drive.google.com/file/d/0B5H5z7SEgVa4cUNGSnlLSUJJM1k/view?pref=2&pli=1
For binary support I add ->onbinary event for apps.