Delighted to be speaking again at Adobe ColdFusion Summit 2024
Actually, I've had two of my talks selected. The first will be a repeat of the one I offered at CFCamp in Germany last month (June), while the second is a brand new talk (and one I've been meaning to offer for a long time):
- Using Redis for session storage in ACF and Lucee: why, and how it's easily done
- Understanding cflocks: how they work/how they can help or hurt
The conference site does not currently list other speakers and sessions, but will soon, I'm sure.
Besides just being a great conference (in terms of content as well as meeting fellow attendees, Adobe folks, and vendors), which is being offered in-person only and at the (current) VERY reasonable price of only US$199, the Summit is also a great chance for folks to pursue Adobe CF Certification (offered both online and in a separate one-day workshop the day after the conference, Oct 2, for just $199 more).
Note also that qualified adult students can attend the Summit for free. That's a great nod to Adobe supporting CF in higher education and among emerging developers.
For more content like this from Charlie Arehart:Need more help with problems?
- Signup to get his blog posts by email:
- Follow his blog RSS feed
- View the rest of his blog posts
- View his blog posts on the Adobe CF portal
- If you may prefer direct help, rather than digging around here/elsewhere or via comments, he can help via his online consulting services
- See that page for more on how he can help a) over the web, safely and securely, b) usually very quickly, c) teaching you along the way, and d) with satisfaction guaranteed





Unfortunately, it appears Adobe ColdFusion only supports connecting to standalone Redis servers. :(
If you might only say "it didn't work for me", do let us know what form of Redis deployment you were using. And what went wrong? And how were you using it in CF? For sessionstorage? or for caching?
This is kind of a strange place to have the conversation (a post announcing my presenting the talks at Summit 2 years ago), but I guess you found the preso and then wanted to reach out some way publicly.
We can continue here; since there are no other commenters, we won't be annoying any of them with the discussion. :-)
Right now, we use ColdFusion Cluster to replicate sessions, specifically org.apache.catalina.ha.session.DeltaManager
For busy CF apps, we've experienced significant issues with CF services joining a CF cluster, especially when attempting to add a third CF service to a CF cluster that already has two active CF services in it.
We spent a few months trying to work with Adobe Support, including very extensive review of our configuration. Based on logging and using cfstart.bat, the hang up would always appear to be when the catalina.ha.session manager would attempt to replicate sessions. At the end of it we ended up only having two CF services in clusters for busy CF apps.
After watching your presentations (THANK YOU!!!), I was intending to use Redis to replicate ColdFusion sessions (under Server Settings > Memory Variables) for our ColdFusion clusters.
The Redis deployment I chose was Microsoft's opensource GarnetServer, configured with Servy to run as Windows services on our VM's hosting ColdFusion services. I successfully created a sharded cluster configured in Garnet with 3 primary nodes and 3 replica nodes.
When I went to Server Settings -> Memory Varialbes to add the redis endpoint on that server and Verify Connection failed with an error:
Redis Connection Verification Failed. MOVED 6918 10.0.0.26:6381
That's when i googled more and found ColdFusion doesn't support the Redis sharded clusters for session variable storage.
Now, I know what matters is that "it didn't work". And that error does clearly mean that CF (the underlying Jedis) tried to connect to a cluster as if it was not one. Even so, let's consider a few things.
First, you've not said what CF version you're using. I don't know if a later version may have added support for that.
Second, just to clarify, the CF docs for using Redis as a CACHE do in fact show support for using a cluster: https://guides.adobe.com/coldfusion/en/docs/develop-coldfusion-applications/__references__/caching-enhancements.html. As such, if they added support for that use of Redis, I can't see why they would not add support for the sessionstorage to support clusters.
I would recommend you reach out to Adobe to ask about this: cfsup@adobe.com.
Third and finally, there are mechanisms that allow one to create a proxy for the Redis cluster such that a client can still THINK it's talking to a single Redis but the proxy talks to the cluster. (That's a reasonable design choice, I'd think. It's what proxies and load balancers do otherwise.)
One example of that is Envoy, which is open source. Here's their docs on doing this very thing (using it to be a proxy for a Redis cluster, to be talked to from a Redis client as if it's a single redis instance):
https://www.envoyproxy.io/docs/envoy/latest/intro/arch_overview/other_protocols/redis
Let us know if you give it a try.
Is your garnet setup that way? or does it support active/active? While Redis does not, an alternative like keydb does, and then cf should still be able to proxy to Envoy in front of that, for instance.
I'd like to wait to hear more from you (on my last couple of replies) before proceeding still further. Again, your CF version may be significant also.
I will see about compiling a native windows Envoy proxy executable.
I've also emailed Adobe coldfusion support with the error message in the hope they will magically say "oh yes, CF does in fact support Redis cluster connections you just have to do xyz". :)
I will report back!