AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / dba / 问题 / 32898
Accepted
potto
potto
Asked: 2013-01-15 08:45:20 +0800 CST2013-01-15 08:45:20 +0800 CST 2013-01-15 08:45:20 +0800 CST

在测试或生产中使用 ScaleArc 的经验?

  • 772

有没有人有使用ScaleArc的经验?

我的首席技术官问过我对此的看法,但我没有看到任何关于现实世界经验的信息。

mysql replication
  • 2 2 个回答
  • 1068 Views

2 个回答

  • Voted
  1. Best Answer
    RolandoMySQLDBA
    2013-01-15T10:14:48+08:002013-01-15T10:14:48+08:00

    哈哈哈哈哈哈哈好巧啊。我被要求亲自评估它。

    这是到目前为止所做的...

    • 我的主管安装了它
    • 我创建了两个 EC2 实例
    • 我在他们之间创建了主/从状态
    • 我在 ScaleArc EC2 上创建集群
      • 我提交了 Master EC2 作为 ScaleArc Master
      • 我将 Slave EC2 作为 ScaleArc Sl​​ave 提交
    • 我在集群上调整了端口 3306 的安全选项

    以下是我执行的基本测试:我决定连接到 MySQL,不使用 Master EC2,也不使用 Slave EC2,而是仅使用 ScaleArc EC2。这是编写用于测试连接性的脚本:

    [redwards@lw-lts-155 ec2]$ cat master_select
    EC2_DNS=<ScaleArc-EC2-DNS Hidden>
    MYSQL_USER=<<Username Hidden>
    MYSQL_PASS=<Password Hidden>
    MYSQL_CONN="-u${MYSQL_USER} -p${MYSQL_PASS}"
    mysql -h${EC2_DNS} ${MYSQL_CONN} -ANe"show variables like 'hostname'"
    

    这是结果:

    [redwards@lw-lts-155 ec2]$ ./master_select
    +----------+------------------+
    | hostname | ip-10-242-47-176 |
    +----------+------------------+
    [redwards@lw-lts-155 ec2]$ ./master_select
    +----------+------------------+
    | hostname | ip-10-205-21-233 |
    +----------+------------------+
    [redwards@lw-lts-155 ec2]$ ./master_select
    +----------+------------------+
    | hostname | ip-10-242-47-176 |
    +----------+------------------+
    [redwards@lw-lts-155 ec2]$ ./master_select
    +----------+------------------+
    | hostname | ip-10-242-47-176 |
    +----------+------------------+
    [redwards@lw-lts-155 ec2]$ ./master_select
    +----------+------------------+
    | hostname | ip-10-242-47-176 |
    +----------+------------------+
    [redwards@lw-lts-155 ec2]$ ./master_select
    +----------+------------------+
    | hostname | ip-10-242-47-176 |
    +----------+------------------+
    [redwards@lw-lts-155 ec2]$ ./master_select
    +----------+------------------+
    | hostname | ip-10-205-21-233 |
    +----------+------------------+
    [redwards@lw-lts-155 ec2]$ ./master_select
    +----------+------------------+
    | hostname | ip-10-242-47-176 |
    +----------+------------------+
    [redwards@lw-lts-155 ec2]$ ./master_select
    +----------+------------------+
    | hostname | ip-10-205-21-233 |
    +----------+------------------+
    [redwards@lw-lts-155 ec2]$ ./master_select
    +----------+------------------+
    | hostname | ip-10-242-47-176 |
    +----------+------------------+
    

    嘿,还不错。10 次中有 7 次到达从站。

    至少,这就是人们想要的:只使用一个地址,连接到 MySQL 并让一些流动智能决定连接到哪个数据库服务器。这是所有狂热的 MySQL 代理预测者的白日梦:

    • Dec 17, 2012: MySQL代理复制配置
    • Apr 19, 2012: MySQL Proxy 的最新消息是什么?
    • Jan 24, 2012:使用复制进行横向扩展

    无论他们是使用 LUA 实现 MySQL 代理还是以某种专有方式编写脚本,底线是:ScaleArc 已经实现了这一点,并为我们所有人(至少在 AWS 宇宙中)完成了繁重的工作。

    我会说:继续玩吧,如下所示:

    • 设置一主三从
    • 在 ScaleArc 中注册主站和从站
    • 写一些针对集群的基准
    • 使用提供的图表,看看它是否智能地进行负载平衡

    抱歉,我不是 ScaleArc 方面的专家,这对您来说不是一个完整的答案。试驾它并踢一些轮胎。

    更新 2013-01-14 16:32 EDT

    我下载了 sakila 数据库并将其加载到集群中。

    wget http://downloads.mysql.com/docs/sakila-db.tar.gz
    

    然后,我运行了这个查询

    SELECT actor_id FROM sakila.actor
    ORDER BY MD5(CONCAT(last_name,first_name))
    

    并将结果存储在actor_id.txt

    接下来,我构建了以下脚本来在测试平台中多次启动 mysql ..

    EC2_DNS=<ScaleArc-EC2-DNS Hidden>
    MYSQL_USER=<Username Hidden>
    MYSQL_PASS=<Password Hidden>
    MYSQL_CONN="-h${EC2_DNS} -u${MYSQL_USER} -p${MYSQL_PASS} -Dsakila"
    NUMBER_OF_TESTBEDS=${1}
    PARALLEL_TESTS=${2}
    if [ "${1}" == "" ] ; then NUMBER_OF_TESTBEDS=1 ; fi
    if [ "${2}" == "" ] ; then PARALLEL_TESTS=1     ; fi
    ACTOR_LIST=""
    for ACTOR_ID in `cat actor_id.txt`
    do
            ACTOR_LIST="${ACTOR_LIST} ${ACTOR_ID}"
    done
    SQLPREFIX="SELECT F.film_id,F.title FROM actor A"
    SQLPREFIX="${SQLPREFIX} INNER JOIN film_actor FA USING (actor_id)"
    SQLPREFIX="${SQLPREFIX} INNER JOIN film F USING (film_id) WHERE A.actor_id="
    for (( X = 1 ; X <= NUMBER_OF_TESTBEDS ; X++ ))
    do
            echo -n "Launching TestBed #${X} ("
            for (( Y = 1 ; Y <= PARALLEL_TESTS ; Y++ ))
            do
                    echo -n " ${Y}"
                    for ACTOR_ID in `echo "${ACTOR_LIST}"`
                    do
                            SQLSTMT="${SQLPREFIX}${ACTOR_ID}"
                            mysql ${MYSQL_CONN} -ANe"${SQLSTMT}" /dev/null 2>/dev/null &
                    done
            done
            echo -n ")"
            wait
            echo
    done
    

    希望这可以帮助 !!!

    • 6
  2. cvanorman
    2016-05-11T10:35:43+08:002016-05-11T10:35:43+08:00

    根据我的个人经验,Scale Arc 的支持是出了名的糟糕,而且他们的软件似乎非常不可靠。

    我们的数据库与负载均衡器的连接无故失败。例如,我们的数据库连接失败,这会影响我们在网络服务器上运行的所有服务。当我们联系 Scale Arc 支持时,他们通常将其归咎于过期的 SSL 证书(他们的错),或与他们的软件同步问题(再次,他们的错)。解决同步问题(在主节点和多个从节点之间)需要两周的时间,支持技术人员才能通过软件日志来确定问题。

    如果你要宣传 0% 停机时间,你应该确保你的支持团队拥有与你向客户营销的相同的 SLA。

    尝试向您的老板解释所有网络服务器和数据库服务器都运行良好,除了我们支付给第 3 方公司以监控和支持的服务。我不需要追溯支持,我需要他们告诉我什么时候会出现故障,然后再取消我们公司赖以收入的每项服务。

    如果我按照自己的方式行事,我会处理使用 HAproxy 设置高可用性网络所涉及的痛苦......

    不要忽视你的客户

    • 0

相关问题

  • 我在哪里可以找到mysql慢日志?

  • 如何优化大型数据库的 mysqldump?

  • 什么时候是使用 MariaDB 而不是 MySQL 的合适时机,为什么?

  • PostgreSQL 9.0 Replication 和 Slony-I 有什么区别?

  • 组如何跟踪数据库架构更改?

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    如何让sqlplus的输出出现在一行中?

    • 3 个回答
  • Marko Smith

    选择具有最大日期或最晚日期的日期

    • 3 个回答
  • Marko Smith

    如何列出 PostgreSQL 中的所有模式?

    • 4 个回答
  • Marko Smith

    授予用户对所有表的访问权限

    • 5 个回答
  • Marko Smith

    列出指定表的所有列

    • 5 个回答
  • Marko Smith

    如何在不修改我自己的 tnsnames.ora 的情况下使用 sqlplus 连接到位于另一台主机上的 Oracle 数据库

    • 4 个回答
  • Marko Smith

    你如何mysqldump特定的表?

    • 4 个回答
  • Marko Smith

    使用 psql 列出数据库权限

    • 10 个回答
  • Marko Smith

    如何从 PostgreSQL 中的选择查询中将值插入表中?

    • 4 个回答
  • Marko Smith

    如何使用 psql 列出所有数据库和表?

    • 7 个回答
  • Martin Hope
    Stéphane 如何列出 PostgreSQL 中的所有模式? 2013-04-16 11:19:16 +0800 CST
  • Martin Hope
    Mike Walsh 为什么事务日志不断增长或空间不足? 2012-12-05 18:11:22 +0800 CST
  • Martin Hope
    Stephane Rolland 列出指定表的所有列 2012-08-14 04:44:44 +0800 CST
  • Martin Hope
    haxney MySQL 能否合理地对数十亿行执行查询? 2012-07-03 11:36:13 +0800 CST
  • Martin Hope
    qazwsx 如何监控大型 .sql 文件的导入进度? 2012-05-03 08:54:41 +0800 CST
  • Martin Hope
    markdorison 你如何mysqldump特定的表? 2011-12-17 12:39:37 +0800 CST
  • Martin Hope
    pedrosanta 使用 psql 列出数据库权限 2011-08-04 11:01:21 +0800 CST
  • Martin Hope
    Jonas 如何使用 psql 对 SQL 查询进行计时? 2011-06-04 02:22:54 +0800 CST
  • Martin Hope
    Jonas 如何从 PostgreSQL 中的选择查询中将值插入表中? 2011-05-28 00:33:05 +0800 CST
  • Martin Hope
    Jonas 如何使用 psql 列出所有数据库和表? 2011-02-18 00:45:49 +0800 CST

热门标签

sql-server mysql postgresql sql-server-2014 sql-server-2016 oracle sql-server-2008 database-design query-performance sql-server-2017

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve