Java高并发的常见应对方案

一、关于并发我们说的高并发是什么?

在互联网时代,高并发,通常是指,在某个时间点,有很多个访问同时到来。

高并发,通常关心的系统指标与业务指标?

  • QPS:每秒钟查询量,广义的,通常指指每秒请求数

  • 响应时间:从请求发出到收到响应花费的时间,例如:系统处理一个HTTP请求需要100ms,这个100ms就是系统的响应时间

  • 带宽:计算带宽大小需关注两个指标,峰值流量和页面的平均大小

  • PV:综合浏览量(Page View),即页面浏览量或者点击量,通常关注在24小时内访问的页面数量,即“日PV”

  • UV:独立访问(UniQue Visitor),即去重后的访问用户数,通常关注在24小时内访问的用户,即“日UV”

二、关于三种应对大并发的常见优化方案

【数据库缓存】

为什么是要使用缓存?

缓存数据是为了让客户端很少甚至不访问数据库,减少磁盘IO,提高并发量,提高应用数据的响应速度。

【CDN加速】

什么是CDN?

CDN的全称是Content Delivery Network,CDN系统能够实时地根据网络流量和各节点的连接、负载状况以及到用户的距离等综合信息将用户的请求重新导向离用户最近的服务节点上。

使用CDN的优势?

CDN的本质是内存缓存,就近访问,它提高了企业站点(尤其含有大量图片和静态页面站点)的访问速度,跨运营商的网络加速,保证不同网络的用户都得到良好的访问质量。

同时,减少远程访问的带宽,分担网络流量,减轻原站点WEB服务器负载。

【服务器的集群化,以及负载均衡】

什么是七层负载均衡?

七层负载均衡,是基于http协议等应用信息的负载均衡,最常用的就是Nginx,它能够自动剔除工作不正常的后端服务器,上传文件使用异步模式,支持多种分配策略,可以分配权重,分配方式灵活。

内置策略:IP Hash、加权轮询

扩展策略:fair策略、通用hash、一致性hash

什么是加权轮询策略?

首先将请求都分给高权重的机器,直到该机器的权值降到了比其他机器低,才开始将请求分给下一个高权重的机器,即体现了加权权重,又体现了轮询。

三、新年礼物

2018年刚开始,送给各位热爱编程的小伙伴一个福利,免费在线知识分享,不定期JAVA、缓存redis、高并发解决方案、自研MVC框架、百万数据量索引优化等分享。

最新文章

  1. 使用技术手段限制DBA的危险操作—Oracle Database Vault
  2. 豪情-CSS解构系列之-新浪页面解构-02
  3. xpath使用
  4. [转]一种简单的js时间控件
  5. Lua面向对象
  6. apache域名本地映射
  7. 转:不再以讹传讹,GET和POST的真正区别
  8. 关于jvm的相关知识
  9. 说不尽的MVVM(5) - 消息满天飞
  10. 【TYVJ】1463 - 智商问题(二分/分块)
  11. XML详解:第一部分
  12. [转载] 高流量大并发Linux TCP 性能调优
  13. 主成分分析(PCA)原理及R语言实现
  14. Myeclipse搭建struts2环境
  15. 利用多核来加速Linux命令行
  16. uva 725 Division(除法)暴力法!
  17. React java.lang.UnsatisfiedLinkError: dlopen failed: "/data/data/com.edaixi.activity/lib-main/libgnustl_shared.so" is 32-bit instead of 64-bit
  18. 安装4.x版本的express开发框架
  19. NET框架SOA解决方案(集Windows服务、WinForm形式与IIS形式发布)-分布式应用
  20. php中const与define的区别

热门文章

  1. BZOJ 3668: [Noi2014]起床困难综合症【贪心】
  2. [bzoj1819] [JSOI]Word Query电子字典
  3. hdu_1033(我怎么找到的这么水的题,只为保存代码。。。)
  4. 2017ecjtu-summer training #4 CodeForces 731C
  5. oracle创建函数和调用存储过程和调用函数的例子(区别)
  6. ZOJ 1203 Swordfish
  7. Button重写onClick两种方式
  8. 小白的Python之路 day5 configparser模块的特点和用法
  9. phpstorm 怎么实现分屏展示
  10. vue 路由部署服务器子目录问题