创建一个“feed”

时间:2015-10-19 09:44:21

标签: java arraylist feed feeds

以下是较大的问题陈述:

有一个数据来源以CSV的形式每小时给我一堆记录(~30,000)。我需要将其转换为各种“馈送”,基本上在每次HTTP GET调用时返回'n'(0-50)记录(在对它们进行一些计算之后)。

每次登录的每个人都会看到同一组'n'记录。

预期QPS = 5,000

我的方法:

由于每小时的记录总数不是很大,并且由于读取速度必须更快,我以为我可以处理每个传入记录并将“n”条记录放入列表中。 在增量时,我将用新的'n'元素替换列表中的元素。

我的问题

  1. 如何在不影响正在进行的读取的情况下替换每次HTTP调用时正在读取的列表?
  2. 这是否是正确的方法(完全在记忆中)?如果简单的Java方法可以执行上面提到的QPS,我不想使用任何更大的软件,如DB或消息队列。

1 个答案:

答案 0 :(得分:0)

如果大小已修复,则使用Array而不是List。 并维护2个具有标志的数组canServe如果有效则将其设置为true,并且当第一个数组为notValid时,保持另一个数组准备服务。 并在这些阵列之间切换。