locked
Wincache ucache stops responding to commands RRS feed

  • Question

  • User-647903373 posted
    Hello,

    We are developing a php application which rather extensively uses the ucache of wincache. It all works just fine while we are running it; the problems start once we disconnects clients. Using Jmeter, we successfully have 100 simultaneous users connected all running along just fine. While the Jmeter users are accessing the site we can manually enter the site and see the bots running along...

    Now, of we simply kill the Jmeter application (on a client computer not even close to the server) wincache ucache stops responding to commands but php code still runs, and sqlsrv is still able to connect to DB and retrieve data...
    - We tested this by simply creating a small php-script on the server that first outputed phpinfo(), and that worked...
    - then we added DB connections and retrieved data from the DB, and that worked...
    - then we added a row like "var_dump(wincache_ucache_get('a'))" and when that page got reloaded it just hangs and later times out due to script run time too long...

    After restarting iis it all starts working again, and the testscript can execute the var_dump-line above just fine... untill we kill another Jmeter-bunch...

    We have tried the development version 1.2.0 available from (http://sourceforge.net/projects/wincache/files/development/) but still the same result :-(

    Please help us, this is really frustrating.
    - Can anyone else confirm this problem?
    - We cannot reproduce the problem with 10 Jmeter users... so perhaps they need to be at a "right" spot in the code... whatever that would be...

    Best regards,
    Nicklas
    Saturday, February 12, 2011 5:53 PM

All replies

  • User-647903373 posted
    Looks like there was a rather easy solution... however it would need some digging into for the dev-team for wincache I suppose...

    In the loop we have a keep-alive function that echo's a space " " back to the clients that can be detected to see if the connection is still active. After the echo there was a flush() since that empties the buffer and checks if the connection is alive and drops the connection if it is dead...
    - Removing the flush() command made the server drop the connections more gracefully and wincache continued to work even after all Jmeter users disconnected :-)

    I'm happy, and I hope that I may help anyone in the same corner...

    Best regards,
    Nicklas
    Saturday, February 12, 2011 6:20 PM