既然题目中问的是提高【服务器】并发处理能力,那么先说说关于提高单机服务器性能的方法;一台服务器在单位时间里,能够处理的请求越多,就说明服务器并发处理能力越强。
内存:减少内存的分配和释放,这个本质上只为了内存分配和数据复制的时间;比如程序在启动的时候,就申请一块足够大的内存,不需要再次分配;另外可以考虑内存共享。
CPU:使用多线程,提高CPU的并发度;但是线程数不可以无限制地增加,因为进程切换也是需要花费时间的;减少使用不必要的锁,因为当一个资源被锁住的时候,其余的进程会等待锁的释放;改进I/O模型,使I/O和CPU计算尽量重叠进行,减少CPU空闲和调度的时间。
网络:根据应用的特点,合理地选择使用长链接还是短链接;因为建立连接是很耗时的,但是如果要使用长链接,依然要考虑超时的问题,因为如果连接时间过长并且没有使用,需要维持空闲连接,影响服务器性能。
提高硬件资源:说白了,就是花更多的钱,买更好的设备,比如带宽、更大的内存、更多的CPU、SSD等等。
还有很多手段,可以提高整个项目的并发处理能力:
负载均衡、集群:一台服务器再怎么优化,也不如十台服务器同时工作,通过负载均衡,把请求分发到多台服务器上进行处理;另外一个好处,当一台服务器发生故障的时候,并不会影响整个项目的运行;
缓存:其目的就是减少服务器的计算,把数据直接返回给用户;比如CDN、本地缓存、分布式缓存等等;
分布式:如果说集群是把相同的项目部署在多台服务器上,那么分布式相当于把一个项目拆分成多个项目,每个子项目都可以独立地集群化部署;分布式架构意味着可以利用更多的服务器,能过处理的并发访问会越大。
异步:调用方不需要等待被调用方处理完成,可以先做其它的事情,所有的事情可以并发处理;异步可以通过消息队列来实现异步;
冗余、弹性扩缩容:根据访问量,部署更多一些的服务器;当有突发流量的时候,弹性扩容机制可以保证快速地增加机器的数量,保证系统的稳定运行;
我将持续分享Java开发、架构设计、程序员职业发展等方面的见解,希望能得到你的关注。
联通公司关闭两g网络,导致联通卡片不能正常使用,应该怎么办? 假设你目前使用的非智能手机,用的是老年功能机,联通关闭两g网络,不再支持服务,假设自己不习惯智能手机,你可以在网上搜索使用,支持4G网络的...
可以通过电脑ip.txt文件来填写首选DNS服务器地址。 1、电脑在正常上网的情况下,点击桌面右下角开始菜单,找到运行选项点击进去,输入cmd打开命令行窗口。 2、在编辑框内输入ipconfig/al...
目前手机上还是可以买彩票的,不过安全性确实得不到保障,因为除了少数一两家有官方授权外,多数都是没有官方授权的,不出问题则已,出了问题,真不知道去找谁去? 令人遗憾的是,有官方授权的那一两家,客户体验...
第一次租服务器的很多都不知道要用哪里的服务器,哪的服务器更适合自己的应用,尤其是香港跟韩国的服务器,感觉都差不多。 我们从以下几点对比香港和韩国服务器选择: 1、备案:香港服务器和韩国服务器都是不需要...
需要在Windows Server 2008 R2中进行安装和配置,没法单独安装这个操作系统。最好学习一下相关服务器配置知识,知道中只能提供大概的思路和方法。Windows Media Service...
OnceOA是一个可以快速本地化部署的企业知识管理套件,支持多种格式文档直接在线编辑。Windows下解压即用。里面包含企业网盘,门户博客系统,知识管理,文档同步,同时还包含考勤,流程管理,组织架构管...
您好, 如果是给手机设置邮箱。 您使用手机邮箱客户端之前,请确保您是否开通了imap\smtp\pop3邮箱服务,如果没有请到网页版邮箱邮件设置账户选项中开启imap\smtp\pop3邮箱服务, 开...
小编给你几个找影视资源的方式。 首先小编先给你几个网站,你自己百度它的名称都可以出来,这些网站的地址。 第一个电影天堂。这是一个很老的网站了,基本上的话一般老电影都可以在这里面找到。你需要用迅雷下载进...