问题标签 [failover]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
google-app-engine - 应用引擎停机时间
我注意到谷歌应用引擎似乎有相当长的停机时间,他们将数据存储区置于只读模式。这种停机时间通常是在中午。这是仅在早期开发过程中发生的事情,还是我可以预料到总是会发生的事情?
我正在开发一个应用程序来帮助小型企业处理他们的运营。它所做的一件事是预约,另一件事是路由电话。我想就如何处理数据存储处于只读状态的时间提出一些建议,例如:
- 如果我们的客户正在与客户通话并且正在取消约会并且数据存储处于只读状态怎么办?要求客户稍后回来保存是不可接受的,尤其是在中午时。
- 如果有来电,并且由于数据库写入不可用,应用程序无法存储记录或正确路由呼叫怎么办?
通常如何处理这些类型的问题?
nosql - redis:处理故障转移?
Redis 看起来确实是一个很棒的产品,具有内置的复制功能和惊人的速度。经过测试,感觉绝对是2010年memcached的替代品。
但是,由于在正常使用 memcached 时,会使用一致的散列来在池中的服务器之间均匀分布数据。如果池中的其中一台服务器出现故障并停止访问,它将被透明地处理,只有丢失的密钥将被重新创建并均匀分布在池中剩余的可用服务器上。
另一方面,Redis 还内置了分片,但还有另一个非常有趣的功能,称为自动复制。多亏了这一点,数据的可用性可以大大提高,同时利用从服务器来使用以防万一发生大事。
但是,我还没有找到任何好的解决方案来处理将 Redis 服务器的状态更改为从属服务器以自动成为新的主服务器或通过任何其他方式自动处理 Redis 的故障转移。
怎么可能做到这一点?什么是合适的方法?
php - 用于“无法连接到主机”的 php curl 故障转移功能
我有一个抓取不同网站的 php curl 脚本。问题是,过了一会儿,我认为网站对我的 IP 设置了一种临时禁令,并且脚本无法再连接到主机(因为我收到“无法连接到主机”错误)。我想设置一个条件/函数来使脚本停止一段时间(例如 sleep(30)),但我不知道当 cURL 无法连接到主机时如何检测(处理错误)。
sql-server - 为什么在使用 SQL Server 镜像和自动故障转移时不支持 MSDTC?
我有一个希望支持 SQL Server 镜像的应用程序。但是,当前的体系结构使得多个 WCF 服务和 DB 连接将在单个 MSDTC 事务中登记,并且 Microsoft 声明使用镜像时不支持 MSDTC。
他们的解释并没有提供非常丰富的信息:
当您将数据库镜像与 MS DTC 事务一起使用时,可能会发生类似的情况。例如,新的主体服务器在故障转移后联系 MS DTC。但是,MS DTC 不知道新的主体服务器。因此,MS DTC 会停止任何处于“准备提交”阶段的事务,即使这些事务在其他数据库中被视为已提交。
我在理解上有问题的是最后一句话。这与如果数据库服务器没有镜像,只是在同一时间点死亡有什么不同?有人可以向我解释吗?我需要能够向我组织中的其他人(以及客户)解释这一点,但我不明白为什么 MSDTC 可以在一种情况下正确回滚/补偿,但如果其中一个参与者是镜像 SQL 服务器则不能(在完全安全模式下)。
failover - 如何使 RabbitMQ 队列故障转移?
RabbitMQ 默认支持集群,但不会复制队列,而是绑定到创建它们的节点。我现在正在寻找使 RabbitMQ 高度可用的方法,而不是他们记录的 DRBD 解决方案,因为保留一个除了等待活动服务器关闭之外什么都不做的整个服务器似乎是一种资源浪费。
我正在考虑一个有两个队列的设置。发布消息时,我希望 RabbitMQ 集群将消息发送到两个队列中的任何一个,无论哪个队列已启动。我知道如果发布者尝试发布到已关闭的队列并且发布者可以使用另一个队列再次尝试,发布者会收到错误,但我想知道这是否可以在集群级别自动完成,以便我不不必编写客户端代码来处理它。这可以做到吗?
nosql - 选择 noSQL - 可用性优先
我们已经考虑过为我们的下一个项目运行一个 noSQL 数据库。但是,我们不确定哪个平台可以为我们提供最佳可用性,并具有最好的内置复制特性/功能来提供这一点 - 最不让人头疼。
目前,Cassandra 似乎是最佳人选,但我们希望从在该领域有更多经验的人那里听到更多关于这一点的信息,然后我们就这样做了。
非常感谢!
php - 如何构建可用的 Web 应用程序
假设我们要构建一个以高可用性为重中之重的 Web 应用程序。我们的客户是公司,因此停机时间等于所有相关人员的收入损失。
总而言之,我们需要时刻在线,让每个人都开心。那么,从一个非常基本的角度来看,我们应该使用哪些技术来做到这一点?
除了我们将使用 PHP 来保持高速开发之外,我们几乎没有任何偏好,因此我们对新的数据存储平台完全开放,还有其他什么可以实现它。
非常感谢您的回答!非常感谢!
replication - 有谁知道为 VMware ESXi 执行故障转移的免费解决方案?
我想设置一个免费/自定义解决方案来为 VMware ESXi 执行故障转移。
设置如下:
2 个物理服务器,每个都有独立的存储。每个物理服务器有 2 个 Win2k8 Enterprise 服务器。
在物理服务器完全失败的情况下,我们希望另一个(为方便起见,我们可以为其分配从属角色)恢复运行。
为此,我们需要以某种方式对虚拟服务器进行连续复制,并且在主服务器出现故障的情况下让它接管 IP,启动虚拟机并继续运行。
我自己是 VMware ESXi 的新手,但我正在尝试研究用于故障转移的昂贵 VMware 许可的替代解决方案。
谢谢。
nservicebus - 使用 NServiceBus 或 MassTransit 的服务总线的故障转移方案
我需要构建像 Microsoft 的http://login.live.com这样的身份服务器。
为了处理故障转移,我将拥有多个 Web 服务器节点。计划是通过向数据库服务器发送消息来完成所有数据库写入操作。数据库将被镜像或复制。这个想法是数据库订阅写操作,但其他节点也订阅。这样其他节点就不需要从数据库中读取数据并且可以更新它们的缓存。
我刚刚开始学习服务总线架构,我不清楚如何处理服务总线的故障转移场景。
问题:
- 如果数据库服务器不可用,发布的消息会怎样?
- 它们会被存储在某个地方吗?
- 我是否需要额外的机器或集群来处理服务总线的故障转移?
- 我读到 SQL Server 可以用作消息存储,但我可以使用持久的 MSMQ 吗?我正在排队消息以便能够将它们写入数据库,那么为什么我要先将它们存储到数据库中,然后再将它们写入数据库?或者,我弄错了,DB 仅用于订阅列表而不用于消息?
c# - 如何在运行时更改 SQLServer 模式下 sessionState 的 sqlConnectionString?
我们试图找到一种在运行时更改 sessionState 的 sqlConnectionString(在 SQLServer 模式下)的方法。我们正在为我们的 SQL 服务器实现故障转移,我们希望在 sessionState 无法访问我的 SQL 服务器时捕获并告诉它故障转移到我的辅助服务器并同时初始化站点范围的故障转移。
如果我不清楚,请随时问我更多细节。(顺便说一句,我们使用的是 C#)
编辑:可以肯定的是,我说的是 sessionState 而不是常规的 sql 服务器连接,请参阅http://msdn.microsoft.com/en-us/library/h6bb9cz9(vs.71).aspx。
我当前的 web.config 是这样构建的:
希望这可以帮助。