何谓大规模并发,不同层面有不同的理解
企业应用(Intranet):千级强并发,万级弱并发(在线用户),十万级用户
互联网应用(Internet):百万级强并发,千万级弱并发(在线用户),亿级用户/
-
门户网站(新浪、腾讯)
-
平台级电子商务(阿里巴巴、淘宝网、拍拍网)
-
搜索引擎(百度)
电子商务企业应用(Intranet + Internet):十万级强并发,百万级弱并发(在线用户),千万级用户
-
B2C电子商务(京东、凡客、一号店)
-
垂直型电子商务(金银岛、携程)
不同系统间的并发特点
企业系统
大量事务性、实时性访问
-
大量的事务、锁检测导致数据库访问瓶颈
-
需要数据操作的实时更新
大量有状态性访问
清晰的业务逻辑进行并发划分
互联网系统
海量非事务性访问
模糊的并发区分
-
并发访问的用户中很难通过内容进行有效分发
-
并发访问一般具有地域性
数据访问效率的高敏感
电子商务系统
数据实时性的高敏感
价格、信息同步的一致性等
受制于企业级系统的约束
海量非事务性访问+一定规模事务性访问
信息访问具有互联网系统特点、信息操作具有企业系统特点
-
如数据的搜索查询、展现具有互联网系统特点
-
如数据的操作(支付、结算)具有企业系统事务性特点
什么是性能问题
-
在可识别的压力下,系统无法提供服务 (最差的性能问题)
-
在可识别的压力下,系统无法按服务质量标准提供服务 (满足性能标准,但是健壮性不足)
-
在可识别的压力下,系统无法持续按服务质量标准提供服务 (系统的可靠性和健壮性)
-
在超过识别的压力下,系统无法尽快恢复
-
能否有故障转移、故障恢复、冗余热备等机制
-
在超过识别的压力下,系统无法柔性伸缩 (系统的可伸缩性)
什么不是性能问题
性能测量
服务质量
服务端设备状态
系统可靠性、健壮性
-
单节点处理的访问量
-
故障恢复时间
-
节点复制和节点扩展的难易
系统可能的性能瓶颈
网络
服务器
磁盘IO
-
频繁访问数据库,导致数据交换IO操作频繁
-
频繁访问IO文件,导致磁盘IO成为瓶颈
企业级系统架构及技术特点
架构设计
基于SOA和MDA的架构
中央集中式部署架构
关注流程
-
工作流技术,尤其是分布式节点间流程整合
-
企业系统间的无缝转移
门户
技术运用
以商业性产品为主
-
追求单节点稳定性
-
较少需要7*24小时支持
-
以商业性关系数据库为主要存储
比较严格的事务性访问
较为复杂并且功能丰富的用户界面
-
用户具有相对统一的客户端(比如使用IE浏览器)
-
用户可以接受适当的响应和延迟
互联网系统架构及技术特点
架构设计
以界面展现和用户体验为主要设计
以轻量级、伸缩性为架构主要考虑
高性能缓存机制
非事务、非关系型数据库
技术运用
大量使用开源技术产品
简单界面开发技术
-
脚本语言,如PHP, Python, Ruby等
-
对多种浏览器的支持
底层高性能处理优化
电子商务系统架构及技术特点
架构设计
关注数据的糅合(Mashup)
关系数据库与高性能NoSQL数据库结合
不固定的架构设计思路
-
可能偏互联网方向,也可能偏企业系统方向
-
分布式部署
事务缓存机制
较为严格的安全机制
与企业系统的对接交互
-
与银行、支付平台的对接
-
与企业订单系统、进销存系统、物流系统的对接
技术运用
有时效的缓存机制
大量数据挖掘和分析运用
部分运用商业中间件技术产品
大量的开源技术运用
本文转自 www19 51CTO博客,原文链接:http://blog.51cto.com/doujh/1812497,如需转载请自行联系原作者