Hi Richard,

Good stuff, this siege, is’t ? Probably more readable than Apache Bench. Stay 
tuned. I will be back soon with more to share : advanced testing against a real 
word web application with up to seventy PostgreSQL calls per request (ways to 
setup best pg urbanization but the goal was in this case to test the app’s 
ability to resist to heavy loads) the results will probably seems amazing at 
some point :

LiveCode application’s server outperforms LuaJIT with an ability to deliver 80 
transactions/second (per core/socket binding) where the Lua version of the same 
web app deliver 13 connections/second only in the same conditions.

It’s not surprising at all as LuaJIT runs the Lua version of this app in 
FASTCGI mode (process started from RAM) where the Livecode one don’t restart at 
all for each socket’s incoming request and, even, is able to cache in hash 
tables redundant PostgreSQL responses (active cache application level proxy).

I’m, at this time, porting my Livecode’s application’s server to Lua (srLua 
should be used) to see if this implementation will become as fast as the LC 
original. It should be the case … or not. I expect to publish both the LC and 
Lua versions of those application’s servers on GITHUB as GPL3 (Livecode) and 
MIT (Lua) licensed stuff as soon as the second one will be up and running.

The more i can say at this point, is that Tomcat7, JBoss2 and PHP5.6 are 
definitively the turtles of the competition :

- Ubuntu / Openresty / Lua round-robin proxy and TCP sockets gateway / Livecode 
Application Server / PostgreSQL : 80 t/s per server’s core
- Ubuntu / Openresty / PHP round-robin proxy and TCP sockets gateway / Livecode 
Application Server / PostgreSQL : 14 t/s per server’s core
- Ubuntu / Openresty / Lua Web Application (server page mode) / PostgreSQL : 13 
t/s per server’s core
- Ubuntu / Openresty / FASTCGI / Livecode CGI server / PostgreSQL : 10 t/s per 
server’s core

note 1 : My Tomcat7’s and JBoss2 first tests went so low performant that i 
stopped to code the Java’s implementations of the test app (Scala code is not 
really a pleasure to write, to the end...) as soon as i could seen that they 
would never do best than PHP…
note 2 : While MySQL/MariaDB running the InnoDB engine are able to be 3 times 
faster than PostgreSQL 9.5 against atomic requests in read mode, PostgreSQL 
become up to 8 times faster than MySQL/MariaDB as soon as real world requests 
(READ with Inner joints, full text search in vector mode, etc…) are served. In 
about write mode requests, PostgreSQL outperforms for years MySQL and, even 
Oracle 8i to 11g (can’t say about 12c) …
note 3 : Livecode and Lua shares 90% of their concepts and anyone coding in one 
of them should be very confortable in the other one in some hours. The main 
difference i can see is that some tierce-party Lua modules are not reliable at 
all (some DB drivers and Json parsers, at least) while in using trusty sourced 
ones only, development cycles are just as fast an reliable as they are in using 
Livecode.
note 4 : Openresty (Nginx + LuaJIT + native RDBMS drivers and lots more) 
outperforms definitively Apache as a Livecode or Lua server side platform. Its 
speed and security model (WAF using locations and IP/Port rules, etc…) are just 
amazing and no far from perfect, conceptually speaking. A pleasure to work with 
!

Cheers,

Pierre
--
Pierre Sahores
mobile : 06 03 95 77 70
www.sahores-conseil.com


_______________________________________________
use-livecode mailing list
use-livecode@lists.runrev.com
Please visit this url to subscribe, unsubscribe and manage your subscription 
preferences:
http://lists.runrev.com/mailman/listinfo/use-livecode

Reply via email to