标签: data-consistency

你应该在构造函数中检查错误的参数值吗?

您是否在每个构造函数中检查数据有效性,或者您只是假设数据是正确的并且在参数有问题的特定函数中抛出异常?

constructor data-consistency

5
推荐指数
1
解决办法
933
查看次数

如何避免向 Web 服务发送 2 个重复的 POST 请求

我发送 POST 请求来创建一个对象。该对象已在服务器上成功创建,但我无法收到响应(丢弃在某处),因此我尝试再次发送 POST 请求(一次又一次)。结果是服务器端有很多重复的对象。

处理这个问题的官方方法是什么?我认为这是一个很常见的问题,但我不知道它的确切名称,所以无法谷歌它。谢谢。

networking post web-services duplicates data-consistency

5
推荐指数
1
解决办法
4882
查看次数

如何避免在SQLite表中插入错误的数据类型?

SQLite的有这个"功能",而即使当您创建类型的列INTEGERREAL,它允许你插入一个字符串到它,即使没有这数字的字符串,如"快跳下狐狸在懒狗".

你如何防止在你的项目中发生这种插入?

我的意思是,当我的代码有一个导致这种插入或更新的错误时,我希望程序发出错误,所以我可以调试它,而不是简单地在我的数据库中静默插入垃圾.

sqlite debugging error-handling data-consistency

5
推荐指数
1
解决办法
1132
查看次数

AWS S3保存和加载项目需要多长时间?

S3 FAQ提到"所有区域中的Amazon S3存储桶都为新对象的PUTS提供了读写后一致性,并为覆盖PUTS和DELETES提供了最终的一致性." 但是,我不知道获得最终一致性需要多长时间.我试图搜索这个,但在S3文档中找不到答案.

情况:

我们有一个由7个步骤组成的网站.当用户在每个步骤中单击"保存"时,我们希望将json文档(包含所有7个步骤的信息)保存到Amazon S3.目前我们计划:

  1. 创建一个S3存储桶以存储所有json文档.
  2. 当用户保存步骤1时,我们在S3中创建一个新项目.
  3. 当用户保存步骤2-7时,我们覆盖现有项目.
  4. 用户保存步骤并刷新页面后,他应该能够看到他刚刚保存的信息.即我们要确保我们总是在写完后阅读.

完整的json文档(完成所有7个步骤)大约为20 KB.用户点击"保存"按钮后,我们可以冻结页面一段时间,在保存完成之前无法进行其他更改.

题:

  1. AWS S3保存和加载项目需要多长时间?(当文档保存到S3时,我们可以冻结我们的网站)
  2. 是否有根据项目大小计算保存/加载时间的功能?
  3. 如果我选择另一个S3区域,保存/加载时间会不同吗?如果是这样哪个是西雅图最好的地区?

amazon-s3 data-consistency amazon-web-services

5
推荐指数
1
解决办法
8427
查看次数

新增加的微服务如何实现数据一致性?

例如,我们有带有事件溯源的微服务。为了实现数据一致性,我们使用以下方法:

  1. 微服务生成事件
  2. 事件存储在事件存储中
  3. 事件发布到订阅的微服务

这种方法适用于已在使用的微服务。但是,如果我需要部署另一个需要与事件存储同步数据的微服务怎么办?显然,这个新的微服务错过了所有已发布的事件。

这个新的微服务是否应该自行从事件存储中提取事件?

architecture data-consistency event-sourcing microservices

5
推荐指数
1
解决办法
378
查看次数

MySQL:如何锁定表并启动事务?

TL; DR - MySQL不允许您锁定表并同时使用事务.有没有办法解决?

我有一个MySQL表,我用来缓存(慢)外部系统的一些数据.数据用于显示网页(用PHP编写).每隔一段时间,当缓存数据被认为太旧时,其中一个网络连接应该触发缓存数据的更新.

我必须处理三个问题:

  • 其他客户端将在我更新时尝试读取缓存数据
  • 多个客户端可能会认为缓存数据太旧并尝试同时更新缓存数据
  • 执行工作的PHP实例可能会在任何时候意外终止,并且数据不应该被破坏

我可以通过使用事务解决第一个和最后一个问题,因此客户端将能够读取旧数据,直到事务提交,他们将立即看到新数据.任何问题都只会导致事务回滚.

我可以通过锁定表来解决第二个问题,这样只有一个进程有机会执行更新.当任何其他进程获得锁定时,他们将意识到他们已被击败,无需更新任何内容.

这意味着我需要锁定表启动事务.根据MySQL手册,这是不可能的.启动事务会释放锁,并锁定表会提交任何活动事务.

有没有办法绕过这个,还是有另一种方式完全实现我的目标?

mysql locking transactions data-consistency

4
推荐指数
2
解决办法
3821
查看次数

InfluxDB:如何更新现有数据库的持续时间

我有一个默认创建的数据库,retention policy它是infinite.

# SHOW RETENTION POLICIES ON "my_database" name duration shardGroupDuration replicaN default ---- -------- ------------------ -------- ------- autogen 0s 168h0m0s 1 true

我如何修改实时数据库的保留策略,以便从现在开始只保留最近 10 天的数据?

sql data-consistency retention influxdb

4
推荐指数
1
解决办法
6544
查看次数

如何在这种并发情况下确保数据一致性?

问题是这样的:

  • 我有多个需要访问一个数据库表的竞争线程(100+)
  • 每个线程都将传递String name- 表中存在该名称,数据库应返回该行的id,该名称尚不存在,应插入名称并返回id.
  • name数据库中只能有一个实例- 即.名称必须是唯一的

如何确保线程1不会name1在线程2也尝试插入的同时插入name1?换句话说,我如何保证name并发环境的唯一性?这也需要尽可能高效 - 这有可能成为一个严重的瓶颈.

我正在使用MySQL和Java.

谢谢

java mysql concurrency data-consistency

2
推荐指数
1
解决办法
1270
查看次数

有哪些流行的框架可用于实现 CQRS、事件溯源和 Saga 以实现数据一致性和分布式事务?

我想知道一些流行的框架,可用于在应用程序中实现 CQRS、ES、Saga。

作为我研究的一部分,我必须比较这些框架并根据各种-ilities评估它们。

frameworks asynchronous data-consistency cqrs event-sourcing

1
推荐指数
1
解决办法
112
查看次数