所谓服务器大流量高并发指的是:在同时或极短时间内,有大量的请求到达服务端,每个请求都需要服务端耗费资源进行处理,并做出相应的反馈。
常用的高并发处理的思路与手段
从服务端视角看高并发
服务端处理请求需要耗费服务端的资源,比如能同时开启的进程数、能同时运行的线程数、网络连接数、cpu、I/O、内存等等,由于服务端资源是有限的,那么服务端能同时处理的请求也是有限的。高并发问题的本质就是:资源的有限性
需美国高防服务器的请咨询鸿网王兵 企业QQ:2885340632
高并发带来的问题
服务端的处理和响应会越来越慢,甚至会丢弃部分请求不予处理,更严重的会导致服务端崩溃。
高并发处理的基本思路
1)从客户端看
尽量减少请求数量,比如:依靠客户端自身的缓存或处理能力
尽量减少对服务端资源的不必要耗费,比如:重复使用某些资源,如连接池客户端处理的基本原则就是:能不访问服务端就不要访问
2)从服务端看
增加资源供给,比如:更大的网络带宽,使用更高配置的服务器,使用高性能的Web服务器,使用高性能的数据库
请求分流,比如:使用集群,分布式的系统架构
应用优化,比如:使用更高效的编程语言,优化处理业务逻辑的算法,优化访问数据库的SQL
基本原则:分而治之,并提高单个请求的处理速度
高并发处理的基本手段
1)客户端发出请求层面,常见的手段有:
尽量利用浏览器的缓存功能,减少访问服务端,比如:js、css、图片等
可以考虑使用压缩传输的功能,减少网络流量,也会提高传输速度
考虑使用异步请求,分批获取数据
2)前端接收客户端请求层面,常见的手段有:
动静分离,部分静态资源可以直接从Nginx返回
按请求的不同,分发到不同的后端进行处理,比如:负载均衡、业务拆分访问等
前面再加上一层来做多个Nginx的负载均衡,比如:LVS、F5等
还可以在更前面使用CDN服务
还可以对动态内容进行缓存,尽量减少访问后端服务
3)Web服务器层面,常见的手段有:
使用最新的JVM,并进行配置优化
对Web服务器进行配置优化,比如:调整内存数量、线程数量等
提供多个能提供相同服务的Web服务器,以实现负载均衡
仔细规划Web服务器上部署的应用规模
对Web服务器进行集群
4)Web应用层面,常见的手段有:
动态内容静态化
Java开发优化
优化处理业务逻辑的算法
合理高效的利用缓存
优化访问数据库的Sql,可以考虑利用存储过程等数据库的能力
合理使用多线程,加快业务处理
部分业务可以考虑内存数据库,或者是进行纯内存处理
尽量避免远程调用、大量I/O等耗时的操作
合理规划事务等较为耗资源的操作
合理使用异步处理
对部分业务考虑采用预处理或者预计算的方式,减少实时计算量
内部系统间的业务尽量直接调用、直接处理,减少WebService、工作流等
5)数据库层面,常见的手段有:
合理选择数据库的引擎,比如Mysql的InnoDB与MyISAM引擎
进行配置优化
可以考虑使用存储过程来处理复杂的数据逻辑
数据库集群,进行读写分离
合理设计数据库的表结构、索引等
分库、分表,降低单库、单表的数据量
精品IP展示:
23.252.169.1
23.252.169.2
23.252.169.3
23.252.169.4
23.252.169.5
23.252.169.6
23.252.169.7
23.252.169.8
23.252.169.9
23.252.169.10
23.252.169.11
23.252.169.12
23.252.169.13
23.252.169.14
23.252.169.15
23.252.169.16
23.252.169.17
23.252.169.18
23.252.169.19
23.252.169.20
23.252.169.21
23.252.169.22
23.252.169.23
23.252.169.24
23.252.169.25
23.252.169.26
23.252.169.27
23.252.169.28
23.252.169.29
23.252.169.30
23.252.169.31
23.252.169.32
23.252.169.33
23.252.169.34
23.252.169.35
23.252.169.36
23.252.169.37
23.252.169.38
23.252.169.39
23.252.169.40
23.252.169.41
23.252.169.42
23.252.169.43
23.252.169.44
23.252.169.45
23.252.169.46
23.252.169.47
23.252.169.48
23.252.169.49
23.252.169.50
23.252.169.51
23.252.169.52
23.252.169.53
23.252.169.54
23.252.169.55
23.252.169.56
23.252.169.57
23.252.169.58
23.252.169.59
23.252.169.60
23.252.169.61
23.252.169.62
23.252.169.63
23.252.169.64
23.252.169.65
23.252.169.66
23.252.169.67
23.252.169.68
23.252.169.69
23.252.169.70
23.252.169.71
23.252.169.72
23.252.169.73
23.252.169.74
23.252.169.75
23.252.169.76
23.252.169.77
23.252.169.78
23.252.169.79
23.252.169.80
23.252.169.81
23.252.169.82
23.252.169.83
23.252.169.84
23.252.169.85
23.252.169.86
23.252.169.87
23.252.169.88
23.252.169.89
23.252.169.90
23.252.169.91
23.252.169.92
23.252.169.93
23.252.169.94
23.252.169.95
23.252.169.96
23.252.169.97
23.252.169.98
23.252.169.99
23.252.169.100
23.252.169.101
23.252.169.102
23.252.169.103
23.252.169.104
23.252.169.105
23.252.169.106
23.252.169.107
23.252.169.108
23.252.169.109
23.252.169.110
23.252.169.111
23.252.169.112
23.252.169.113
23.252.169.114
23.252.169.115
23.252.169.116
23.252.169.117
23.252.169.118
23.252.169.119
23.252.169.120
23.252.169.121
23.252.169.122
23.252.169.123
23.252.169.124
23.252.169.125
23.252.169.126
23.252.169.127
23.252.169.128
23.252.169.129
23.252.169.130
23.252.169.131
23.252.169.132
23.252.169.133
23.252.169.134
23.252.169.135
23.252.169.136
23.252.169.137
23.252.169.138
23.252.169.139
23.252.169.140
23.252.169.141
23.252.169.142
23.252.169.143
23.252.169.144
23.252.169.145
23.252.169.146
23.252.169.147
23.252.169.148
23.252.169.149
23.252.169.150
23.252.169.151
23.252.169.152
23.252.169.153
23.252.169.154
23.252.169.155
23.252.169.156
23.252.169.157
23.252.169.158
23.252.169.159
23.252.169.160
23.252.169.161
23.252.169.162
23.252.169.163
23.252.169.164
23.252.169.165
23.252.169.166
23.252.169.167
23.252.169.168
23.252.169.169
23.252.169.170
23.252.169.171
23.252.169.172
23.252.169.173
23.252.169.174
23.252.169.175
23.252.169.176
23.252.169.177
23.252.169.178
23.252.169.179
23.252.169.180
23.252.169.181
23.252.169.182
23.252.169.183
23.252.169.184
23.252.169.185
23.252.169.186
23.252.169.187
23.252.169.188
23.252.169.189
23.252.169.190
23.252.169.191
23.252.169.192
23.252.169.193
23.252.169.194
23.252.169.195
23.252.169.196
23.252.169.197
23.252.169.198
23.252.169.199
23.252.169.200
23.252.169.201
23.252.169.202
23.252.169.203
23.252.169.204
23.252.169.205
23.252.169.206
23.252.169.207
23.252.169.208
23.252.169.209
23.252.169.210
23.252.169.211
23.252.169.212
23.252.169.213
23.252.169.214
23.252.169.215
23.252.169.216
23.252.169.217
23.252.169.218
23.252.169.219
23.252.169.220
23.252.169.221
23.252.169.222
23.252.169.223
23.252.169.224
23.252.169.225
23.252.169.226
23.252.169.227
23.252.169.228
23.252.169.229
23.252.169.230
23.252.169.231
23.252.169.232
23.252.169.233
23.252.169.234
23.252.169.235
23.252.169.236
23.252.169.237
23.252.169.238
23.252.169.239
23.252.169.240
23.252.169.241
23.252.169.242
23.252.169.243
23.252.169.244
23.252.169.245
23.252.169.246
23.252.169.247
23.252.169.248
23.252.169.249
23.252.169.250
23.252.169.251
23.252.169.252
23.252.169.253
23.252.169.254