skip to Main Content

I use Memcached in AWS ElastiCache and enabled encryption-in-transit as a security requirement.

However, at client side, when trying to connect to the new cache cluster with encryption-in-transit enabled, the connection failed right away with below error.

Error: read ECONNRESET

I use client memcached-elasticache, which essentially wraps around client memcached for cluster node auto-discovery. This client is not easy to work with, but they are so far the best I found in the open source world.

However, quoting from the README, this client does not yet support TLS (Transport Layer Security), which is required after enabling encryption-in-transit in the server cluster.

As in other databases and message queues, this module uses the ASCII protocol to communicate with the server, which means that you can see what is send over the wire. For debugging this is easier for both the users and the developers however this also means that SASL auth is not supported because it demands the binary protocol.

I believe this is the reason why I got connection reset right away because network protocol does not match. There is an open issue in this open source package where people are enquiring on TLS support.

Is there any existing Memcached JS/TS client that has full TLS support?

2

Answers


  1. For Java, we recommend you to use our memcached Java client that supports TLS https://github.com/awslabs/aws-elasticache-cluster-client-memcached-for-java

    For PHP, we recommend you to use our PHP client which has TLS supports. https://github.com/awslabs/aws-elasticache-cluster-client-memcached-for-php

    For Python, pymemcache client supports TLS https://pypi.org/project/pymemcache/

    For Rust, I found this rust-memcache client which supports TLS https://crates.io/crates/memcache

    For Ruby, there is memcached Dalli client supports TLS https://github.com/petergoldstein/dalli

    So far I am not aware of any NodeJS or C# .NET client that has TLS support.

    Login or Signup to reply.
  2. We recently contributed TLS support into electrode-io memcache client. In addition to NodeJS, it also has typescript support. Please take a look.

    Login or Signup to reply.
Please signup or login to give your own answer.
Back To Top
Search