• MySQL+Memcache(d)


    NoSQL最近很火,因为它在K/V存储的优异性能表现,催生出很多产品,比如:Memcached、MongoDB、Redis、TT等等. 然而他们或多或少都有自己的某些缺陷,比如存在单点、数据安全持久化等等。然而这些随着新的技术和思路的在MySQL上面产品化,这些东西会被慢慢取代,MySQL重回她的王者地位。在这之前我说过Memcached会被MySQL+handler socket取代,现在情况有所变化,为了兼容现有大量的Memcache客户端,将handler socket用memcached替换掉,就出现了如下构架:

    MySQL+InnoDB with Memcached

    MySQL+InnoDB with Memcached 具有大量的优势:

    • 可以充分利用现有的memcache client,减少应用程序的变动
    • 解决了memcached不具备的数据存储持久性问题
    • 提供了memcached不具备的crash-safe、acid特性、复查查询的支持、丰富的管理和展示工具
    • 解决了平时单独使用memcached时,cache和数据库数据一致性的问题,提供更高的性能
    • 减少数据冗余,充分利用好内存,降低硬件投入成本
    • 在提供高效的k/v访问的同时,还提供复查的查询功能,比如排序、join等等

    总结:MySQL + InnoDB + Memcached 会颠覆很多原有的多层次cache构架,新的构架能提供更高性能和稳定的存储和访问服务,极大的降低开发的复杂度和硬件成本。

    另外去年MySQL用户大会上提到的MySQL Cluster+ Memcached,现在MySQL Cluster 7.2已经开始集成memcached,将充分发挥MySQL CLuster设计上的先天优势(k/v + sharding), 目前有测试数据(NDBAPI实现)已经达到 200万+/秒的写性能(8 server),1000,000 rps (读,2 server)。架构图:

    MySQL Cluster with Memcached

    总结:MySQL Cluster的未来很值得期待。同样我们可以想象,以后系统后台只有MySQL数据库,同时提供sql 和 nosql的功能,降低系统复杂度,降低管理和维护成本,降低开发的复杂度和开发周期及成本, 期待啊……

  • 相关阅读:
    学习进度总结表
    关于软件工程的问题
    自我介绍
    web安全
    spring profile
    spring 装配
    python Descriptor (描述符)
    python string intern
    Java 对象内存占用
    java jdb命令详解
  • 原文地址:https://www.cnblogs.com/inteliot/p/2457108.html
Copyright © 2020-2023  润新知