高并发项目服务器分配 Java游戏服务器分布式架构如何设计?
Java游戏服务器分布式架构如何设计?
Web服务常见很容易先做成并发,但游戏服务器的并发彻底是依据游戏类型而定的。比如说棋牌游戏天生地会容易制作成并发的,而MMO的高并发设计就是服务器技术中的王冠了。
了解我:微博私信解除“666”某些往期Java低级架构资料、源码、笔记、视频Dubbo、Redis、Netty、zookeeper、Spring cloud、分布式、高并发等架构技术
分布式架构要注意从分流角度或者存储方面去判断。双向是可以在一个主服务器上面检测流量先分配到辅助器,区分双机热备的方法以保证安全性,不使用虚拟IP按照中间件自动监测跳转闲时服务器。
要是是存储方面的,那你不需要各个服务器之间按照数据沟通交流来通过日志分配,只不需要有一个主数据库服务器动态分配数据的存储。
如果没有我的回答促进身体血液循环您,我记得为我给你点个赞,多收藏,参与我哦!这是支持什么我一直能回答的动力!谢谢啊!
1秒1000并发,高并发需要什么样的服务器?
目前是得用MongoDB数据库,我用四台天互的奢华云主机才再次提升到三秒百并发。
硬件层面要依据什么数据量,业务奇怪度相互综合评估的,建议您先买两台云主机(4核8g内存)垒建集群环境就行。后继再参照求实际要扩展。
软件层面:
一、如果是读取你的操作的,应该要:
1.1建议使用消息队列来异步运行一次性处理(如activemq等),以免消息赌塞
1.2建议使用MongoDB的批量读取功能,诸如每1000条数据才读取一次
二、MongoDB部署为集群模式,这个可以聚集起来压力
三、要是是读取数据不能操作,也可以考虑到加入到redis,将热点数据接受一级缓存
1秒1000的并发不是太高,只要简单优化再看看就行了,现在一般的服务器应该要都都能够抵挡。简单的方法看下线程池分配,去看看linux系统的io数限制。
肯定不见意让数据库去抗正常的高并发,应该在整体架构上面作优化,在数据库上层是不是我是可以决定架构缓存服务器,有针对具体看业务做些优化系统。
读多肯定写多,索引建得怎么?慢sql有哪些?单次访问数据量如何?
从正常吗角度讲,远远的是没有到数据库的性能瓶颈,具体详细问题要详细分析。
硬件看起来够的,程序优化比较比较有用
正常了情况单机抗几千妥妥地绝对没问题,看你的情况问题很可能出在两方面:web服务的io或DB。
web服务的性能关键因素是io和线程模型,要是区分epoll系列的nio的web框架(netty,mina等)性能相比较bio会高太多了。
如果你是那是DB,索引,os的页缓存等等。
一千块的程序员都能写一秒钟一千单的服务器
电信宽带肯定是要万兆的,硬件这块总之不错,现在可以用很廉价的pc来做分布式的架构,况且内存和硬盘的大小比较多是参照数据量的大小和存储多少来改变的。我希望我的回答能帮到你!
版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。