我问了关于这样的问题,有人建议我在这里问,这是有道理的。
我对用于构建系统的技术感到好奇,在这个系统中,确保不丢失数据是最重要的。一个简单的例子是,金融机构如何确保当资金在账户之间转移时,一旦从一个账户中提取资金,无疑就会存入另一个账户。我并不是在寻找特定的技术,比如数据库事务,而是更大、更具有体系结构的概念,比如在服务器崩溃、队列耗尽空间或其他情况下如何保存数据。
如果有人能给我指点有关的书或文章,我会非常感激的。
发布于 2010-12-01 01:32:10
进行了大量的规划,并加入了冗余,并且每一步都要确保数据永远不会太多。使用冗余存储数组,以便如果一个数组失败,另一个数组仍然拥有数据。冗余服务器用于数据库,以便如果服务器出现故障或重新启动,数据库将在几秒钟内可用。
除了本地冗余之外,整个数据中心将被复制到另一个数据中心,这样如果整个数据中心丢失了,那么所有数据仍然可用,以便公司及其客户能够继续运行。
用于所有通过数据库事务处理的货币转移,以及涉及多个服务器的分布式事务。
至于磁盘空间之类的东西,警报器被放置好,这样在队列填满警报之前很久,警报就会响起来,这样人们就可以弄清楚它为什么会被填满,如果填充是合法的,或者增加更多的空间,或者修复曾经停止处理数据的部分。
https://serverfault.com/questions/207664
复制相似问题