面向MySQL数据构架梭子鱼负载均衡解决方案

为了解决复杂均衡这方面难题,MySql官方推出了MySql Cluster的构架,下面就让我们从基本情况、成本、优缺点和应用场合等方面

  为了解决复杂均衡这方面难题,MySql官方推出了MySql Cluster的构架,下面就让我们从基本情况、成本、优缺点和应用场合等方面对5种MySql 服务器集群的可行性方案进行详细的分析和比较:

  1、MySQL Clustering(ndb-cluster stogare)

  MySQL公司以存储引擎方式提供的高可靠性方案,是事务安全的,实时复制数据,可用于需要高可靠性及负载均衡的场合。该方案至少需要三个节点服务器才能达到较好的效果。

  成本:

  1) 节点服务器对RAM的需求很大,与数据库大小呈线性比例;

  2) 最好使用千兆以太网络;

  3) 还需要使用Dolphin公司提供的昂贵的SCI卡。

  优点:

  1) 可用于负载均衡场合;

  2) 可用于高可靠性场合;

  3) 高伸缩性;

  4) 真正的数据库冗余;

  5) 容易维护。

  缺点:

  随着数据库的变大,对RAM的需求变得更大,因此成本很高;

  速度:

  几乎 比典型的单独服务器(无千兆以太网,无SCI卡,存储引擎相关的限制少)慢10倍。

  应用场合:

  冗余,高可靠性,负载均衡

  2、MySQL / GFS-GNBD/ HA (Active/Passive)

  GFS是事务安全的文件系统。同一时刻你可以让一个MySQL使用共享数据。

  成本:

  1) 最多n台高性能服务器的成本,其中一个激活的,其他作为备份服务器。

  优点:

  1) 高可靠性

  2) 某种程度的冗余

  3) 按照高可靠性进行伸缩

  缺点:

  1) 没有负载均衡

  2) 没有保证的冗余

  3) 无法对写操作进行伸缩

  速度:

  1) 单独服务器的2倍。对读操作支持得较好。

  应用场合:

  1) 需要高可靠性的、读操作密集型的应用

  3、MySQL / DRBD / HA (Active/Passive)

  DRBD可以提供这样的共享硬盘。DRBD可以被设置成事务安全的。 同一时刻你可以让一个MySQL使用共享数据。

  成本:

  1) 最多n台高性能服务器的成本,其中一个激活的,而其他则作为备份服务器。

  优点:

  1) 高可靠性;

  2) 一定程度的冗余;

  3) 以高可靠性名义来看是可伸缩的。

  缺点:

  1) 没有负载均衡

  2) 没有保证的冗余

  3) 在写负载方面没有伸缩性

  速度:

  1) 在读写方面相当于单独服务器

  应用场合:

  1) 需要高可靠性、读操作密集型的应用

  4、MySQL Write Master / Multiple MySQL Read Slaves (Active/Active)

  考虑不同的读、写DB数据库连接的情况。可以使用一台主服务器用于写操作,而采用n台从服务器用于读操作。

  成本:

  1) 最多1台高性能写服务器,n台读服务器的成本

  优点:

  1) 读操作的高可靠性;

  2) 读操作的负载均衡;

  3) 在读操作负载均衡方面是可伸缩的。

  缺点:

  1) 无写操作的高可靠性;

  2) 无写操作的负载均衡;

  3) 在写操作方面无伸缩性;

  速度:

  1) 同单独服务器;在读操作方面支持得较好

  应用场合:

  1) 读操作密集型的、需要高可靠性和负载均衡的应用。

  5、Standalone MySQL Servers(Functionally separated) (Active)

  多台功能分离的单独服务器,,没有高可靠性、负载均衡能力,明显缺点太多,不予考虑。

  总结:

  MySQL官方网站推荐的HA方案是结合DRBD (本文中的方案3) 和 Replication (本文中的方案4)。假如再加上Linux Heartbeat还可实现Auto-failover功能,在此种情况下,我们会发现,down机时间会大大减少。

  我们还看到,虽然上述方案解决了集群问题,但对于Mysql服务器之间的负载均衡还是存在问题的,下面我们就选用官方推荐的方案4,配合梭子鱼安全负载均衡机,来实现真正高效可靠的大型应用架构。

linux

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。

发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/1962973.html

(0)
上一篇 2025年2月23日 05:59:36
下一篇 2025年2月23日 05:59:53

AD推荐 黄金广告位招租... 更多推荐

相关推荐

  • Java框架性能优化常见问题解答

    Java 框架性能优化常见问题解答 引言 在高并发和数据吞吐量高的系统中,Java 框架的性能优化至关重要。本文探讨了一些常见的性能优化问题及其对应的解决方案。 1. 数据库连接管理 立即学习“Java免费学习笔记(深入)”; 问题:应用程…

    2025年4月2日
    100
  • Hibernate框架学习笔记:从概念到实战

    hibernate框架简化了java应用程序中与数据库交互的过程,涉及以下概念:实体(pojo表示数据库表)、会话(数据库交互)、查询(检索数据)、映射(类与表关联)、事务(确保数据一致性)。实战案例演示了创建数据库表、实体类、hibern…

    2025年4月2日
    100
  • Java框架中资源利用的性能优化方法有哪些?

    java 框架中优化资源利用性能的方法:采用池技术连接池和线程池管理连接和线程,避免频创建和销毁;缓存常用数据和对象,减少数据库访问和对象创建;异步处理耗时操作,避免卡顿;优化内存使用,选用合适的容器、清理引用、禁用未用类和方法;使用性能监…

    2025年4月2日
    100
  • java怎么导入数据库

    要在 Java 中导入数据库,需要依次执行以下步骤:建立数据库连接。创建 Statement 对象。执行 CREATE 语句创建表。执行 INSERT 语句插入数据。关闭 Statement 和数据库连接。 如何在 Java 中导入数据库 …

    2025年4月2日
    100
  • 哪些开源替代品具有独特的特性和优势?

    postgresql、mongodb、redis 和 mariadb 等开源数据库引擎提供独特的特性和优势:postgresql:可扩展性、安全性、jsonb 支持mongodb:文档结构、分布式架构、云服务redis:内存数据库、键值存储…

    2025年4月2日
    100
  • java怎么连接数据库sql

    通过 JDBC API 连接 Java 应用程序到 SQL 数据库只需六个步骤:1. 加载 JDBC 驱动程序;2. 创建连接;3. 创建 Statement;4. 执行查询或更新;5. 检索结果(如果执行的是查询);6. 关闭连接。 如何…

    2025年4月2日
    100
  • 最佳的开源替代品在哪些行业和用例中使用?

    开源替代品广泛应用于各个行业,提供与专有软件相当的功能,成本和限制更低。这些应用包括云计算、数据库、办公套件、操作系统和开发工具。例如,金融行业使用开源替代品创建了风险管理系统,降低了成本并提高了灵活性。随着开源软件的成熟,其采用范围预计将…

    2025年4月2日
    100
  • 哪些开源替代品提供商用支持和维护?

    对于商用支持和维护,企业可考虑针对热门开源软件采用以下选项:1. red hat enterprise linux (rhel) 替代品:centos、rocky linux(商用支持:red hat);2. postgresql 替代品:…

    2025年4月2日
    100
  • java框架中桥接模式的应用场景有哪些?

    Java 框架中桥接模式的应用场景 桥接模式是一种结构型设计模式,用于将抽象部分与它的实现部分解耦,使得两部分可以独立变化。在 Java 框架中,桥接模式有以下应用场景: 数据库连接 在连接数据库时,抽象部分表示数据库连接,实现部分表示不同…

    2025年4月2日
    100
  • Java框架中的数据访问层设计的多数据库支持

    java框架的数据访问层多数据库支持包括:创建抽象数据访问接口,定义通用数据库交互方法。为每个数据库创建特定适配器,映射抽象方法到具体实现。使用数据访问工厂根据需要实例化和使用数据库适配器。实例化数据访问接口,使用工厂获取特定数据库适配器,…

    2025年4月2日
    100

发表回复

登录后才能评论