Comments (7)
Your test case is invalid, but it has indeed measured a 4.4 percent improvement in response times. Concurrency of 100 threads is stressing PHP so thoroughly that your test scenario is above the server's configured capacity.
Reduce the concurrency to a count that matches your hardware capacity; you have only 4 cores. Your setup likely hits a negative inflection point at concurrency levels above 6 threads per core (I've seen this in load tests).
What does your .siegerc
file look like? What does app/etc/local.xml
contain? This isn't just a "flip a switch" improvement—better scaling comes through good configurations.
from cm_redissession.
The article doesn't mention system specs. I see you have SSD, so SSD would favor an improvement in the file backend and would not benefit Redis much so perhaps the article referenced has slow disks. Anyway, I don't expect Cm_RedisSession to be faster than filesystem so I think your performance is probably as it should be. As stated on the other ticket, it is when you go multi-server that the benefits of Redis are realized.
from cm_redissession.
Will this change anything? http://www.fabrizio-branca.de/redis-optimization.html
I will come back with .siegerc file content. It is standard, no changes inside. Also local.xml is standard Magento 1.9.0.1 but adding the code found here (copy & paste).
I am little confused because I am stressing my mind with this Redis trying to improve the server performance. I read hundreds of articles about how great is Redis with Magento, some kind of a "must have". But after doing the same thing in configuration the results are the same, no improvement. Having SSD there is no need to use Redis for session. This will be the same situation for all the other "old" solutions APC/Memcache.
I will follow your idea decreasing the concurrency to 20 or 50 to see what is happening. Maybe I should improve server configuration with some tuning in parameters. pm.max_children is 200 and it is taking only 2.4Gb from RAM, no warning inside /var/log/php5-fpm.log.
from cm_redissession.
A much more valid testing model is to step up through various concurrency levels; two or three data points do not make for conclusive evidence. A 4-core system cannot effectively run 200 php5-fpm processes.
Again: your tests are invalid.
from cm_redissession.
Fabrizio's optimization will only improve the situation if you have a low memory issue which I doubt you have. To be sure you can just disable persistence and run your test again. If it improve then you have identified an issue but I don't expect it to.
Redis is an excellent backend for both cache and sessions in Magento, but when you are running a single server with lots of RAM and a fast SSD then it is hard to compete with the filesystem. Redis will help you maintain that fast performance when you go from single-server to multi-server while still having a correctly functioning system (people running file cache on multiple nodes are making a huge mistake). You didn't post your avg response time, but I'm guessing it is about as good as you'll get without a full-page cache module.
So in short, Redis is great for helping you scale, but on a healthy single-server system don't expect it to do anything magical. Note, I strongly recommend Cm_Cache_Backend_File over Zend_Cache_Backend_File in any case.
If you really want to reduce your page load time focus on full page cache (shameless plug: see colinmollenhour/Cm_Diehard)
from cm_redissession.
To Reid's point, I've already done extensive testing at different concurrency levels: http://goo.gl/NDXan
from cm_redissession.
I will come back to you with some thoughts after testing.
For decreasing the page load time I have in test Lesti::FPC and Cm_Diehard.
I am struggling with Turpentine/Varnish configuration too which really boots from 15 requests/sec to 253 requests/sec. Page load time from 300 ms to only 6 ms. But there are lots of issues with side blocks being cached (cart, tags, poll, recently view, compare). Unfortunately ideas did not come faster like here. For this I have to thank you both.
from cm_redissession.
Related Issues (20)
- Connectivity issue with Azure Redis Cache HOT 1
- Configuration changes don't take effect HOT 3
- hard coded session expiry HOT 5
- Magento 1.7.0.2 and PHP 7.x HOT 1
- Fatal Error when compilation is enabled HOT 4
- Passing glue string after array is deprecated. Swap the parameters in colinmollenhour/credis/Client.php on line 1414 HOT 4
- Cm\RedisSession\Handler::read taking more than 6sec HOT 14
- Session storage - Too many active connections HOT 2
- Tag current version master HOT 1
- Magento 2 switching to Laminas instead of Zend (ZF2) HOT 3
- Experiencing delay problems HOT 1
- PHP Warning: Module 'redis' already loaded in Unknown on line 0 HOT 1
- Make setSaveHandler() only callable once
- Separate read-only instance from read/write instance HOT 5
- missing ConfigInterface HOT 1
- Session IDs are plain text in redis (missing hash) HOT 1
- Native Magento Redis Session extension HOT 1
- 3.0.1 can not load the session model using composer HOT 10
- How can I install a specific version of this module via modman? HOT 4
- Error cleaning cache by mode matchingAnyTag: A pipeline is already in use and only one pipeline is supported. HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from cm_redissession.