Alternatives to Memcached logo

Alternatives to Memcached

Redis, Ehcache, Varnish, Hazelcast, and MongoDB are the most popular alternatives and competitors to Memcached.
7.6K
5.5K
+ 1
473

What is Memcached and what are its top alternatives?

Memcached is a widely used open-source, high-performance, distributed memory-caching system. It is designed to speed up dynamic web applications by alleviating database load. Memcached stores data in memory to reduce the number of times an external data source (such as a database or API) must be accessed to retrieve data. This results in faster response times and improved overall performance. However, Memcached has limitations such as lack of built-in security features, limited data storage capabilities, and potential data loss in case of server failures.

  1. Redis: Redis is a popular in-memory data structure store known for its speed and flexibility. It supports various data structures, replication, and clustering features. Pros: Rich data structure support, persistence options, and high availability. Cons: More memory usage compared to Memcached.
  2. Apache Ignite: Apache Ignite is an in-memory computing platform that provides high-performance, distributed in-memory data storage and processing. It offers features like data replication, SQL queries, and machine learning capabilities. Pros: Scalability, durability, and SQL support. Cons: Higher learning curve compared to Memcached.
  3. Ehcache: Ehcache is an open-source, Java-based cache library that can be used as a standalone in-process cache or a distributed cache. It supports features like memory management, disk stores, and cache replication. Pros: Simple configuration, integration with Java applications. Cons: Limited to Java ecosystem.
  4. Couchbase: Couchbase is a NoSQL, distributed database that offers in-memory caching capabilities along with features like data replication, cluster management, and full-text search. Pros: Integrated database and cache solution, high availability. Cons: More complex setup compared to Memcached.
  5. Hazelcast: Hazelcast is an open-source, in-memory data grid platform that provides distributed caching, clustering, and real-time data processing capabilities. It supports features like data partitioning, event processing, and cluster-wide locks. Pros: High scalability, fault tolerance, and near-zero latency. Cons: Complexity in setting up and configuring.
  6. GridGain: GridGain is an in-memory computing platform that offers distributed caching, data processing, and analytics capabilities. It supports features like SQL queries, ACID transactions, and machine learning algorithms. Pros: High performance, scalability, and data consistency. Cons: Cost associated with enterprise features.
  7. RocksDB: RocksDB is an embeddable, persistent key-value store designed for fast storage. It is optimized for SSD storage and offers features like high write throughput, efficient memory utilization, and customizable compaction options. Pros: High performance, low latency reads and writes. Cons: More suitable for persistent storage rather than pure caching.
  8. Aerospike: Aerospike is a NoSQL database that can be used as a high-performance distributed cache as well. It offers features like scalable architecture, strong consistency, and multi-tenancy support. Pros: High throughput, low latency, and automatic data distribution. Cons: Requires more resources compared to Memcached.
  9. Gemfire: Apache Geode, formerly known as Pivotal GemFire, is an in-memory data grid platform that provides distributed caching and real-time data processing capabilities. It offers features like data replication, event handling, and transaction management. Pros: High availability, durability, and event-driven architecture. Cons: Complexity in configuration and deployment.
  10. Infinispan: Infinispan is an open-source, distributed in-memory data grid platform written in Java. It offers features like data partitioning, cluster-wide synchronization, and custom eviction policies. Pros: Scalability, fault tolerance, and near-real-time data access. Cons: Java-centric ecosystem, learning curve for non-Java developers.

Top Alternatives to Memcached

  • Redis
    Redis

    Redis is an open source (BSD licensed), in-memory data structure store, used as a database, cache, and message broker. Redis provides data structures such as strings, hashes, lists, sets, sorted sets with range queries, bitmaps, hyperloglogs, geospatial indexes, and streams. ...

  • Ehcache
    Ehcache

    Ehcache is an open source, standards-based cache for boosting performance, offloading your database, and simplifying scalability. It's the most widely-used Java-based cache because it's robust, proven, and full-featured. Ehcache scales from in-process, with one or more nodes, all the way to mixed in-process/out-of-process configurations with terabyte-sized caches. ...

  • Varnish
    Varnish

    Varnish Cache is a web application accelerator also known as a caching HTTP reverse proxy. You install it in front of any server that speaks HTTP and configure it to cache the contents. Varnish Cache is really, really fast. It typically speeds up delivery with a factor of 300 - 1000x, depending on your architecture. ...

  • Hazelcast
    Hazelcast

    With its various distributed data structures, distributed caching capabilities, elastic nature, memcache support, integration with Spring and Hibernate and more importantly with so many happy users, Hazelcast is feature-rich, enterprise-ready and developer-friendly in-memory data grid solution. ...

  • MongoDB
    MongoDB

    MongoDB stores data in JSON-like documents that can vary in structure, offering a dynamic, flexible schema. MongoDB was also designed for high availability and scalability, with built-in replication and auto-sharding. ...

  • Couchbase
    Couchbase

    Developed as an alternative to traditionally inflexible SQL databases, the Couchbase NoSQL database is built on an open source foundation and architected to help developers solve real-world problems and meet high scalability demands. ...

  • Memcached Cloud
    Memcached Cloud

    Memcached Cloud is a fully-managed service for running your Memcached in a reliable and fail-safe manner. Your dataset is constantly replicated, so if a node fails, an auto-switchover mechanism guarantees data is served without interruption. Memcached Cloud provides various data persistence options as well as remote backups for disaster recovery purposes. ...

  • etcd
    etcd

    etcd is a distributed key value store that provides a reliable way to store data across a cluster of machines. It’s open-source and available on GitHub. etcd gracefully handles master elections during network partitions and will tolerate machine failure, including the master. ...

Memcached alternatives & related posts

Redis logo

Redis

58.3K
44.9K
3.9K
Open source (BSD licensed), in-memory data structure store
58.3K
44.9K
+ 1
3.9K
PROS OF REDIS
  • 886
    Performance
  • 542
    Super fast
  • 513
    Ease of use
  • 444
    In-memory cache
  • 324
    Advanced key-value cache
  • 194
    Open source
  • 182
    Easy to deploy
  • 164
    Stable
  • 155
    Free
  • 121
    Fast
  • 42
    High-Performance
  • 40
    High Availability
  • 35
    Data Structures
  • 32
    Very Scalable
  • 24
    Replication
  • 22
    Great community
  • 22
    Pub/Sub
  • 19
    "NoSQL" key-value data store
  • 16
    Hashes
  • 13
    Sets
  • 11
    Sorted Sets
  • 10
    NoSQL
  • 10
    Lists
  • 9
    Async replication
  • 9
    BSD licensed
  • 8
    Bitmaps
  • 8
    Integrates super easy with Sidekiq for Rails background
  • 7
    Keys with a limited time-to-live
  • 7
    Open Source
  • 6
    Lua scripting
  • 6
    Strings
  • 5
    Awesomeness for Free
  • 5
    Hyperloglogs
  • 4
    Transactions
  • 4
    Outstanding performance
  • 4
    Runs server side LUA
  • 4
    LRU eviction of keys
  • 4
    Feature Rich
  • 4
    Written in ANSI C
  • 4
    Networked
  • 3
    Data structure server
  • 3
    Performance & ease of use
  • 2
    Dont save data if no subscribers are found
  • 2
    Automatic failover
  • 2
    Easy to use
  • 2
    Temporarily kept on disk
  • 2
    Scalable
  • 2
    Existing Laravel Integration
  • 2
    Channels concept
  • 2
    Object [key/value] size each 500 MB
  • 2
    Simple
CONS OF REDIS
  • 15
    Cannot query objects directly
  • 3
    No secondary indexes for non-numeric data types
  • 1
    No WAL

related Redis posts

Russel Werner
Lead Engineer at StackShare · | 32 upvotes · 2.2M views

StackShare Feed is built entirely with React, Glamorous, and Apollo. One of our objectives with the public launch of the Feed was to enable a Server-side rendered (SSR) experience for our organic search traffic. When you visit the StackShare Feed, and you aren't logged in, you are delivered the Trending feed experience. We use an in-house Node.js rendering microservice to generate this HTML. This microservice needs to run and serve requests independent of our Rails web app. Up until recently, we had a mono-repo with our Rails and React code living happily together and all served from the same web process. In order to deploy our SSR app into a Heroku environment, we needed to split out our front-end application into a separate repo in GitHub. The driving factor in this decision was mostly due to limitations imposed by Heroku specifically with how processes can't communicate with each other. A new SSR app was created in Heroku and linked directly to the frontend repo so it stays in-sync with changes.

Related to this, we need a way to "deploy" our frontend changes to various server environments without building & releasing the entire Ruby application. We built a hybrid Amazon S3 Amazon CloudFront solution to host our Webpack bundles. A new CircleCI script builds the bundles and uploads them to S3. The final step in our rollout is to update some keys in Redis so our Rails app knows which bundles to serve. The result of these efforts were significant. Our frontend team now moves independently of our backend team, our build & release process takes only a few minutes, we are now using an edge CDN to serve JS assets, and we have pre-rendered React pages!

#StackDecisionsLaunch #SSR #Microservices #FrontEndRepoSplit

See more
Simon Reymann
Senior Fullstack Developer at QUANTUSflow Software GmbH · | 30 upvotes · 9.2M views

Our whole DevOps stack consists of the following tools:

  • GitHub (incl. GitHub Pages/Markdown for Documentation, GettingStarted and HowTo's) for collaborative review and code management tool
  • Respectively Git as revision control system
  • SourceTree as Git GUI
  • Visual Studio Code as IDE
  • CircleCI for continuous integration (automatize development process)
  • Prettier / TSLint / ESLint as code linter
  • SonarQube as quality gate
  • Docker as container management (incl. Docker Compose for multi-container application management)
  • VirtualBox for operating system simulation tests
  • Kubernetes as cluster management for docker containers
  • Heroku for deploying in test environments
  • nginx as web server (preferably used as facade server in production environment)
  • SSLMate (using OpenSSL) for certificate management
  • Amazon EC2 (incl. Amazon S3) for deploying in stage (production-like) and production environments
  • PostgreSQL as preferred database system
  • Redis as preferred in-memory database/store (great for caching)

The main reason we have chosen Kubernetes over Docker Swarm is related to the following artifacts:

  • Key features: Easy and flexible installation, Clear dashboard, Great scaling operations, Monitoring is an integral part, Great load balancing concepts, Monitors the condition and ensures compensation in the event of failure.
  • Applications: An application can be deployed using a combination of pods, deployments, and services (or micro-services).
  • Functionality: Kubernetes as a complex installation and setup process, but it not as limited as Docker Swarm.
  • Monitoring: It supports multiple versions of logging and monitoring when the services are deployed within the cluster (Elasticsearch/Kibana (ELK), Heapster/Grafana, Sysdig cloud integration).
  • Scalability: All-in-one framework for distributed systems.
  • Other Benefits: Kubernetes is backed by the Cloud Native Computing Foundation (CNCF), huge community among container orchestration tools, it is an open source and modular tool that works with any OS.
See more
Ehcache logo

Ehcache

172
159
4
Java's Most Widely-Used Cache
172
159
+ 1
4
PROS OF EHCACHE
  • 1
    Way Faster than Redis and Elasticache Redis
  • 1
    Easy setup
  • 1
    Simpler to run in testing environment
  • 1
    Container doesn't have to be running for local tests
CONS OF EHCACHE
    Be the first to leave a con

    related Ehcache posts

    Varnish logo

    Varnish

    12.4K
    2.6K
    370
    High-performance HTTP accelerator
    12.4K
    2.6K
    + 1
    370
    PROS OF VARNISH
    • 104
      High-performance
    • 67
      Very Fast
    • 57
      Very Stable
    • 44
      Very Robust
    • 37
      HTTP reverse proxy
    • 21
      Open Source
    • 18
      Web application accelerator
    • 11
      Easy to config
    • 5
      Widely Used
    • 4
      Great community
    • 2
      Essential software for HTTP
    CONS OF VARNISH
      Be the first to leave a con

      related Varnish posts

      Around the time of their Series A, Pinterest’s stack included Python and Django, with Tornado and Node.js as web servers. Memcached / Membase and Redis handled caching, with RabbitMQ handling queueing. Nginx, HAproxy and Varnish managed static-delivery and load-balancing, with persistent data storage handled by MySQL.

      See more
      Tom Klein

      We're using Git through GitHub for public repositories and GitLab for our private repositories due to its easy to use features. Docker and Kubernetes are a must have for our highly scalable infrastructure complimented by HAProxy with Varnish in front of it. We are using a lot of npm and Visual Studio Code in our development sessions.

      See more
      Hazelcast logo

      Hazelcast

      347
      470
      59
      Clustering and highly scalable data distribution platform for Java
      347
      470
      + 1
      59
      PROS OF HAZELCAST
      • 11
        High Availibility
      • 6
        Distributed Locking
      • 6
        Distributed compute
      • 5
        Sharding
      • 4
        Load balancing
      • 3
        Map-reduce functionality
      • 3
        Simple-to-use
      • 3
        Written in java. runs on jvm
      • 3
        Publish-subscribe
      • 3
        Sql query support in cluster wide
      • 2
        Optimis locking for map
      • 2
        Performance
      • 2
        Multiple client language support
      • 2
        Rest interface
      • 1
        Admin Interface (Management Center)
      • 1
        Better Documentation
      • 1
        Easy to use
      • 1
        Super Fast
      CONS OF HAZELCAST
      • 4
        License needed for SSL

      related Hazelcast posts

      MongoDB logo

      MongoDB

      91.8K
      79.2K
      4.1K
      The database for giant ideas
      91.8K
      79.2K
      + 1
      4.1K
      PROS OF MONGODB
      • 827
        Document-oriented storage
      • 593
        No sql
      • 553
        Ease of use
      • 464
        Fast
      • 410
        High performance
      • 257
        Free
      • 218
        Open source
      • 180
        Flexible
      • 145
        Replication & high availability
      • 112
        Easy to maintain
      • 42
        Querying
      • 39
        Easy scalability
      • 38
        Auto-sharding
      • 37
        High availability
      • 31
        Map/reduce
      • 27
        Document database
      • 25
        Easy setup
      • 25
        Full index support
      • 16
        Reliable
      • 15
        Fast in-place updates
      • 14
        Agile programming, flexible, fast
      • 12
        No database migrations
      • 8
        Easy integration with Node.Js
      • 8
        Enterprise
      • 6
        Enterprise Support
      • 5
        Great NoSQL DB
      • 4
        Support for many languages through different drivers
      • 3
        Drivers support is good
      • 3
        Aggregation Framework
      • 3
        Schemaless
      • 2
        Fast
      • 2
        Managed service
      • 2
        Easy to Scale
      • 2
        Awesome
      • 2
        Consistent
      • 1
        Good GUI
      • 1
        Acid Compliant
      CONS OF MONGODB
      • 6
        Very slowly for connected models that require joins
      • 3
        Not acid compliant
      • 1
        Proprietary query language

      related MongoDB posts

      Shared insights
      on
      Node.jsNode.jsGraphQLGraphQLMongoDBMongoDB

      I just finished the very first version of my new hobby project: #MovieGeeks. It is a minimalist online movie catalog for you to save the movies you want to see and for rating the movies you already saw. This is just the beginning as I am planning to add more features on the lines of sharing and discovery

      For the #BackEnd I decided to use Node.js , GraphQL and MongoDB:

      1. Node.js has a huge community so it will always be a safe choice in terms of libraries and finding solutions to problems you may have

      2. GraphQL because I needed to improve my skills with it and because I was never comfortable with the usual REST approach. I believe GraphQL is a better option as it feels more natural to write apis, it improves the development velocity, by definition it fixes the over-fetching and under-fetching problem that is so common on REST apis, and on top of that, the community is getting bigger and bigger.

      3. MongoDB was my choice for the database as I already have a lot of experience working on it and because, despite of some bad reputation it has acquired in the last months, I still believe it is a powerful database for at least a very long list of use cases such as the one I needed for my website

      See more
      Vaibhav Taunk
      Team Lead at Technovert · | 31 upvotes · 3.9M views

      I am starting to become a full-stack developer, by choosing and learning .NET Core for API Development, Angular CLI / React for UI Development, MongoDB for database, as it a NoSQL DB and Flutter / React Native for Mobile App Development. Using Postman, Markdown and Visual Studio Code for development.

      See more
      Couchbase logo

      Couchbase

      469
      600
      110
      Document-Oriented NoSQL Database
      469
      600
      + 1
      110
      PROS OF COUCHBASE
      • 18
        High performance
      • 18
        Flexible data model, easy scalability, extremely fast
      • 9
        Mobile app support
      • 7
        You can query it with Ansi-92 SQL
      • 6
        All nodes can be read/write
      • 5
        Equal nodes in cluster, allowing fast, flexible changes
      • 5
        Both a key-value store and document (JSON) db
      • 5
        Open source, community and enterprise editions
      • 4
        Automatic configuration of sharding
      • 4
        Local cache capability
      • 3
        Easy setup
      • 3
        Linearly scalable, useful to large number of tps
      • 3
        Easy cluster administration
      • 3
        Cross data center replication
      • 3
        SDKs in popular programming languages
      • 3
        Elasticsearch connector
      • 3
        Web based management, query and monitoring panel
      • 2
        Map reduce views
      • 2
        DBaaS available
      • 2
        NoSQL
      • 1
        Buckets, Scopes, Collections & Documents
      • 1
        FTS + SQL together
      CONS OF COUCHBASE
      • 3
        Terrible query language

      related Couchbase posts

      Gabriel Pa

      We implemented our first large scale EPR application from naologic.com using CouchDB .

      Very fast, replication works great, doesn't consume much RAM, queries are blazing fast but we found a problem: the queries were very hard to write, it took a long time to figure out the API, we had to go and write our own @nodejs library to make it work properly.

      It lost most of its support. Since then, we migrated to Couchbase and the learning curve was steep but all worth it. Memcached indexing out of the box, full text search works great.

      See more
      Ilias Mentzelos
      Software Engineer at Plum Fintech · | 9 upvotes · 232.1K views
      Shared insights
      on
      MongoDBMongoDBCouchbaseCouchbase

      Hey, we want to build a referral campaign mechanism that will probably contain millions of records within the next few years. We want fast read access based on IDs or some indexes, and isolation is crucial as some listeners will try to update the same document at the same time. What's your suggestion between Couchbase and MongoDB? Thanks!

      See more
      Memcached Cloud logo

      Memcached Cloud

      12
      16
      24
      A fully-managed service for hosting and running your memcached in a reliable and fail-safe manner
      12
      16
      + 1
      24
      PROS OF MEMCACHED CLOUD
      • 6
        High-availability
      • 6
        Heroku add-on
      • 3
        Fast
      • 2
        Email alerts
      • 2
        Fail-safe
      • 1
        24/7 monitoring & support
      • 1
        Backups and import
      • 1
        Offered by Redis Labs
      • 1
        Auto-switchover
      • 1
        Seamless scalability
      CONS OF MEMCACHED CLOUD
        Be the first to leave a con

        related Memcached Cloud posts

        etcd logo

        etcd

        303
        412
        24
        A distributed consistent key-value store for shared configuration and service discovery
        303
        412
        + 1
        24
        PROS OF ETCD
        • 11
          Service discovery
        • 6
          Fault tolerant key value store
        • 2
          Secure
        • 2
          Bundled with coreos
        • 1
          Consol integration
        • 1
          Privilege Access Management
        • 1
          Open Source
        CONS OF ETCD
          Be the first to leave a con

          related etcd posts