【发布时间】:2012-07-22 04:46:05
【问题描述】:
我有一个网站,用户在该网站上选择特定标准以在该网站上寻找另一个用户,然后该网站将您与同样在寻找具有相同标准的人的其他人配对。有一个“未配对”用户集合(尚未配对),每次有人提出配对请求时,程序都会根据匹配条件检查集合中的下一个可用用户,并删除该用户如果匹配,则从“未配对”集合中提取,如果没有,则将用户添加到“未配对”集合中。
我的问题是,根据以下标准处理此类集合的最佳方法是什么?
- 匹配过程是实时的,所以我使用类似的东西 SignalR 处理实时配对
- 如果系统关闭,集合不需要保留 因为不会有用户“搜索”未配对的用户 因为系统已关闭
- 如果我横向扩展服务器并拥有多个实例,它们都有 能够从同一个集合中提取出来
- 如果有 2 个用户在 同时
当我思考这个问题时出现的一些标准问题是:
我什至需要一个数据库,因为正在添加用户 并不断删除
如果我确实需要某种存储,像 mongodb 这样的存储 好的选择?为什么?
如果我将集合存储在内存中,那将无法正常工作 如果我横向扩展不同的实例,对吗?
【问题讨论】:
标签: c# asp.net architecture scalability