mongodb 1000并发需要什么样的服务器配置

本文涉及的产品
云数据库 MongoDB,独享型 2核8GB
推荐场景:
构建全方位客户视图
简介: mongodb 1000并发需要什么样的服务器配置

并发是指一秒数据库收到的4K数据个数。需要什么样的硬件和带宽才能稳定达到1秒1000以上?


观点1


首先,服务器硬件条件要达到要求。网卡带宽是否够;是否有写磁盘,若有,读写速度是否超过磁盘IO带宽;是否有耗时计算,CPU是否会称为瓶颈。 其次,硬件都满足的情况下。你需要使你的软件系统充分利用硬件性能。这个时候就需要合理设计方案,实现。 然后,再你达到了预定的并发量后。再想想能否优化,在更少的资源下完成同样的事情,或者现有资源下完成更多的事情。最后,还有一个重中之重就是,是否易运维,易扩展。这个是很值得你投入精力去做的。


观点2


首先1秒1000并发并不高,题主没说几个关键点:数据量多大,单台机器还是分布式。
如果是分布式有架构的话应该也不会问这种问题。如果是单台机器没有架构 直接裸奔的话最简单做法就是分表分库分机器加缓存。
另外不要用云主机,目前的云主机io性能都不好,还是直接自己弄服务器靠谱
如果数据量小的话就全部加载到内存中。重点是要知道性能瓶颈在哪。


观点3


一般的提法是1000并发,指同时在线数,即1000个客户和服务器保持着连接。可能一整天都能保持这个状态,因此不带上具体多久。


从题主前后文看,题主其实想指的是qps,即每秒的请求数。


如果每秒1K个请求,每个请求都是写入操作,数据大小是4K,那么这是典型的数据库应用。每秒需要写入的数据量是1K*4K=4M。单机下普通配置的mongodb可以应付这样的压力。可否找一下那些地方成为瓶颈了。看看磁盘忙不忙,mongo的CPU高不高。


观点4


如果只是读请求就简单多了,MongoDB RS架构完全够用。我们目前的业务场景,业务用MongoDB只读,每分钟几百万的请求完全跟服务器数量是线形增长的。
至于写的话,假设你们很有钱,就买SSD吧,简单粗暴。
通用的做法是:缓存+数据库(redis+mongodb),自己实现缓存中的任务队列并用某个固定服务flush/merge这些队列。这个队列就复杂到业务逻辑了,缓存是永远避免不了的。
此外,可以从业务逻辑方面考虑优化。(是的,我又一次提到了业务逻辑)或许你们可以将业务分离,解藕数据之间的关联。
我们学到的一个教训是分离数据库,提高单台服务器的处理能力。


云服务器ECS地址:阿里云·云小站

目录
相关文章
|
9天前
|
网络协议
端口最多只有65535个,为什么服务器能承受百万并发
服务器通过四元组(源IP、源端口、目标IP、目标端口)识别不同TCP连接,每条连接对应独立socket。数据包携带四元组信息,服务端据此查找对应socket进行通信。只要四元组任一元素不同,即视为新连接,可创建独立socket。资源充足时,单进程可支持百万级并发连接,socket与端口非一一对应。
48 10
端口最多只有65535个,为什么服务器能承受百万并发
|
弹性计算
阿里云3M带宽云服务器并发多大?阿里云3M带宽云服务器测评参考
在探讨云服务器3M带宽能支持多大并发这一问题时,我们首先要明白一个关键点:并发量并非仅由带宽决定,还与网站本身的大小密切相关。一般来说,一个优化良好的普通网站页面大小可能只有几K,为便于计算,我们可以暂且假定每个页面大小为50K。
1542 1
|
开发框架 缓存 .NET
并发请求太多,服务器崩溃了?试试使用 ASP.NET Core Web API 操作筛选器对请求进行限流
并发请求太多,服务器崩溃了?试试使用 ASP.NET Core Web API 操作筛选器对请求进行限流
447 0
|
算法 Java
并发垃圾回收算法对于大规模服务器应用的优势
并发垃圾回收算法对于大规模服务器应用的优势
|
Oracle NoSQL 关系型数据库
实时计算 Flink版产品使用合集之MongoDB CDC connector的全量快照功能可以并发读取吗
实时计算Flink版作为一种强大的流处理和批处理统一的计算框架,广泛应用于各种需要实时数据处理和分析的场景。实时计算Flink版通常结合SQL接口、DataStream API、以及与上下游数据源和存储系统的丰富连接器,提供了一套全面的解决方案,以应对各种实时计算需求。其低延迟、高吞吐、容错性强的特点,使其成为众多企业和组织实时数据处理首选的技术平台。以下是实时计算Flink版的一些典型使用合集。
195 2
|
Java
Java Socket编程与多线程:提升客户端-服务器通信的并发性能
【6月更文挑战第21天】Java网络编程中,Socket结合多线程提升并发性能,服务器对每个客户端连接启动新线程处理,如示例所示,实现每个客户端的独立操作。多线程利用多核处理器能力,避免串行等待,提升响应速度。防止死锁需减少共享资源,统一锁定顺序,使用超时和重试策略。使用synchronized、ReentrantLock等维持数据一致性。多线程带来性能提升的同时,也伴随复杂性和挑战。
300 0
|
10月前
|
NoSQL 容灾 MongoDB
MongoDB主备副本集方案:两台服务器使用非对称部署的方式实现高可用与容灾备份
在资源受限的情况下,为了实现MongoDB的高可用性,本文探讨了两种在两台服务器上部署MongoDB的方案。方案一是通过主备身份轮换,即一台服务器作为主节点,另一台同时部署备节点和仲裁节点;方案二是利用`priority`设置实现自动主备切换。两者相比,方案二自动化程度更高,适合追求快速故障恢复的场景,而方案一则提供了更多的手动控制选项。文章最后对比了这两种方案与标准三节点副本集的优缺点,指出三节点方案在高可用性和数据一致性方面表现更佳。
801 5
|
11月前
|
SQL NoSQL Java
springboot操作nosql的mongodb,或者是如何在mongodb官网创建服务器并进行操作
本文介绍了如何在Spring Boot中操作NoSQL数据库MongoDB,包括在MongoDB官网创建服务器、配置Spring Boot项目、创建实体类、仓库类、服务类和控制器类,以及如何进行测试。
160 1
springboot操作nosql的mongodb,或者是如何在mongodb官网创建服务器并进行操作
|
缓存 弹性计算 数据库
阿里云2核4G服务器支持多少人在线?程序效率、并发数、内存CPU性能、公网带宽多因素
2核4G云服务器支持的在线人数取决于多种因素:应用效率、并发数、内存、CPU、带宽、数据库性能、缓存策略、CDN和OSS使用,以及用户行为和系统优化。阿里云的ECS u1实例2核4G配置,适合轻量级应用,实际并发量需结合具体业务测试。
315 0
阿里云2核4G服务器支持多少人在线?程序效率、并发数、内存CPU性能、公网带宽多因素
|
NoSQL MongoDB 数据库
【MongoDB 专栏】MongoDB 的并发控制与锁机制
【5月更文挑战第11天】MongoDB的并发控制和锁机制保证数据一致性和性能。全局锁用于特殊情况如数据库初始化,限制并发性能;文档级锁提供更高的并发性,针对单个文档锁定。乐观并发控制利用版本号检查减少锁竞争。在分布式环境下,需协调多节点锁,优化包括合理设计数据模型、调整锁配置和利用分布式事务。未来,MongoDB将持续改进这些机制以应对复杂需求。了解并发控制原理对于数据库开发者至关重要。
559 2
【MongoDB 专栏】MongoDB 的并发控制与锁机制

推荐镜像

更多