Using Valkey instead of redis in sugarcrm on-premise instance

Hey everyone,
The potential of using Valkey as an in-memory data store with a SugarCRM instance is being explored, and input from the community is welcome. Valkey is a recent open-source alternative to Redis.
The following topics are of interest:
  • Real-world performance gains: Have there been any significant improvements in areas like page load times, query execution, or overall system responsiveness when using Valkey instead of Redis with SugarCRM?
  • Ease of integration: Was the setup process straightforward? Were there any particular challenges or best practices discovered during the integration? Many existing Redis clients work by simply pointing them to a Valkey server. Valkey is compatible with most Redis tools and modules,.
  • Stability and reliability: How has Valkey performed in terms of uptime, data consistency, and failover mechanisms in your SugarCRM context?
  • Features and compatibility: Did you encounter any feature limitations or compatibility issues with existing SugarCRM components or customizations? Valkey retains compatibility with Redis 7.2 APIs and commands. However, Valkey doesn't support Redis modules maintained by Redis Inc., and its own ecosystem of modules is still developing.
  • Any challenges or considerations: What are the key takeaways or lessons learned from your adoption of Valkey with SugarCRM? Valkey offers advantages but presents challenges with scaling, integration, data consistency, and security.
Any direct comparisons between Valkey and Redis in a SugarCRM setup would be helpful. Understanding the practical benefits and challenges can help make informed decisions about optimizing the SugarCRM instance.
Thank you for sharing your insights!
Parents
  • Hello,

    I am not aware of any customers that are actively using Valkey and you should be aware that this is not a component we test or officially support. That being said, the manner in which Sugar interacts with Redis (or memcached) is quite basic.

    If PHP is configured to store its sessions in Redis/memcached, Sugar would then indirectly leverage it to read/store PHP session info. I would say that this is the most common way that customers leverage the technology and this configuration will help improve overall performance. Our general advice as it relates to this topic is that we highly recommend its use for the performance gains.

    Additionally, it is possible to configure Sugar such that it directly interacts with Redis/memcached and use it as a user cache. This is used to store information pertaining to the currently logged in user, such as some preferences and other tidbits normally retrieved from the database. Such a configuration also helps improve performance, although, the session caching technique is more impactful.

    Sugar itself is not dependent on any Redis modules or specific features beyond the ability to store or delete a key/value pairing or session. Incidentally, the use of Redis, while highly recommended, is purely for improving performance as the system can operate without it. I mention this just to clarify that none of the features in Sugar are dependent on its use. 

    I would caution you on using Valkey as we simply don't have any test data to rely upon to comment on its feasibility nor provide advice on correcting issues should you encounter them.

    I would also be concerned about the status of its PHP client, assuming it exists. The Redis PHP client is mandatory if one wishes to use it to either store the sessions or as a user cache. You would need an equivalent for Valkey in order to make use of it for either. In the case of leveraging it for the user cache, you might also need to customize Sugar to cause it to recognize it.

Reply
  • Hello,

    I am not aware of any customers that are actively using Valkey and you should be aware that this is not a component we test or officially support. That being said, the manner in which Sugar interacts with Redis (or memcached) is quite basic.

    If PHP is configured to store its sessions in Redis/memcached, Sugar would then indirectly leverage it to read/store PHP session info. I would say that this is the most common way that customers leverage the technology and this configuration will help improve overall performance. Our general advice as it relates to this topic is that we highly recommend its use for the performance gains.

    Additionally, it is possible to configure Sugar such that it directly interacts with Redis/memcached and use it as a user cache. This is used to store information pertaining to the currently logged in user, such as some preferences and other tidbits normally retrieved from the database. Such a configuration also helps improve performance, although, the session caching technique is more impactful.

    Sugar itself is not dependent on any Redis modules or specific features beyond the ability to store or delete a key/value pairing or session. Incidentally, the use of Redis, while highly recommended, is purely for improving performance as the system can operate without it. I mention this just to clarify that none of the features in Sugar are dependent on its use. 

    I would caution you on using Valkey as we simply don't have any test data to rely upon to comment on its feasibility nor provide advice on correcting issues should you encounter them.

    I would also be concerned about the status of its PHP client, assuming it exists. The Redis PHP client is mandatory if one wishes to use it to either store the sessions or as a user cache. You would need an equivalent for Valkey in order to make use of it for either. In the case of leveraging it for the user cache, you might also need to customize Sugar to cause it to recognize it.

Children
No Data