50,639
社区成员
![](https://csdnimg.cn/release/cmsfe/public/img/topic.427195d5.png)
![](https://csdnimg.cn/release/cmsfe/public/img/me.40a70ab0.png)
![](https://csdnimg.cn/release/cmsfe/public/img/task.87b52881.png)
![](https://csdnimg.cn/release/cmsfe/public/img/share-circle.3e0b7822.png)
要求服务器尽快计算结果,通常要求是1s内。
如果数据库中生物特征数据量过大,需要比对的生物特征数据过多,就会减慢比对速度。
1、将数据库中生物特征分配到m个比对服务器中,服务器中所有数据比对耗时为500ms.
2、统计服务A,接收客户端发来的比对请求,并且把请求数据a放到比对队列中。
然后读取不断读取结果队列中的结果。
3、m个比对服务器,读取比对队列中的请求数据,进行比对,会在500ms内返回比对结果aa,
并将比对结果aa放到结果队列中。
4、统计服务器A,会在500ms内从结果队列中获取m个比对服务器的结果,进行统计处理,
返回给客户端。
这样设计,所有的数据比对完成只需要500ms。
大佬们帮忙看看这个问题。
可行性怎么样。
有什么优缺点。
20240103修改补充:
解决方法1中。
假设经过测试,当服务器中有1w个数据时,比对耗时是500ms。
如果我总共有10w个数据,我需要新建10个服务器,每个服务器分配1w个数据。
亿级数据,redis哈希槽了解一下,可以解决问题,你说的多个服务器什么的太扯淡。
最大的问题就是数据量大的时候,你所谓的测试结果都是浮云。