我有一个遗留系统,后端是mysql,主要编程语言是python。
最近我们有一个场景,需要显示一个 Jmeter 板,其中包含mysql数据库中的信息。表中的数据每秒都会更改。
这可以被认为是类似于投标申请,其中人们不断出价。每次用户出价时,一条记录就会进入数据库。当用户更新其出价时,它会更新以前的值。
我也有一些客户谁监测这个 Jmeter 板更新的统计数字。
我需要订购这个数据在实时的人出价实时。
我不喜欢对mysql运行查询,因为在任何时候我都可能有很少1000个客户机查询数据库。这将在数据库上创建负载。
请给我建议。
1条答案
按热度按时间rqenqsqc1#
如果您需要实时收集和排序数据,您应该查看aerospike中的原子有序Map和有序列表操作。
我有在rbotzer/aerospike cdt示例中使用kv有序Map的示例。
您可以使用类似的方法,其中用户id是键,bid是一个具有结构的列表
[1343, { foo: bar, ts: 1234, this: that} ]
. 以美分(整数)表示的出价金额是列表的第一个元素,所有其他信息都在第二个元素位置的Map中。这将允许你用一个单一的Map操作更新一个用户出价,用一个单一的操作取回用户的出价,按等级排序(根据出价金额)获得最高的出价,获得特定范围内的所有出价,等等。你将有一个记录每个项目,所有出价在这个Map上。