acrolink

acrolink

Storing transient data for chat sessions

For an AI driven chatbot over channels I want to store some transient data. There will be 10’s of thousands of concurrent users. Will be hosted on AWS using either EB, ECR or EKS, i.e. using multiple machines/pods. What will be the best method to store transient data for chat sessions? Store them simply in socket.assigns or using ElasticCache (Redis, Memcached, Valkey)?

Most Liked

christhekeele

christhekeele

ETS (Erlang Term Storage) is the go-to batteries-included for transient storage on the BEAM VM. I always recommend using it for any out-of-process transient storage until incompatible requirements reveal themselves and push you towards a more apt solution.

dimitarvp

dimitarvp

I really have to ask… what’s wrong with a regular database?

dimitarvp

dimitarvp

I see. Well, if you want to make full use of AWS and are not worried about vendor lock-in then ElasticCache seems like a very good option indeed.

Where Next?

Popular in Questions Top

baxterw3b
Hi guys, i’m new in the Elixir world, and i have to say, that i love it! i’m having some problem to understand anonymous functions with ...
New
jononomo
I am trying to figure out how Mix knows whether the environment is test, dev, or prod – where is this set? Thanks.
New
New
hariharasudhan94
Lets say I have map like this fetching from my database %{"_id" => #BSON.ObjectId<58eb1a7a9ad169198c3dXXXX>, "email" => ...
New
komlanvi
Hi everyone, I was playing with phoenix liveView but I run into an issue. I have a form and want to validate each input text when the te...
New
dblack
I’ve got an issue with an app and I’ve no idea of how to troubleshoot it. I’m hoping someone here might have seen something similar. I p...
New
romenigld
I am trying to run a deploy with docker and I successfully runned with this command: docker build -t romenigld/blog-prod . but when I t...
New

Other popular topics Top

rms.mrcs
Hi, I need to transform a list of numbers into a map where the keys are the indexes and the values are the original values of the list. ...
New
JakeBecker
TL;DR: I’ve just released an implementation of Microsoft’s IDE-independent Language Server Protocol for Elixir. It adds language support ...
1144 54921 245
New
jononomo
For some reason my phoenix channels are working for me in my local dev environment, but as soon as I deploy via Docker, I get a 403 error...
New
greenz1
I have a phoenix application from which a user can download multiple(5-6) files of size 1MB. I couldn’t find anything related to sending ...
New
bsollish-terakeet
Credo is smart enough to check for (something like) this: assert length(the_list) == 0 with this response: Checking if an enum is empt...
New
TunkShif
This post is an instruction guide to help you setup your Neovim for Elixir development from scratch. It includes general information on h...
274 42533 114
New

We're in Beta

About us Mission Statement