相关概念
高并发
新浪的高级技术,会定期给我们做一些技术培训,他曾经跟谷歌的人员合作,写框架,还有一个写AngularJs的大牛,项目紧急,必须有人去,培训了一下午,就去葛洲坝了,那个项目从头到尾包括用户的绑定管理都是我写的,只不过有一个扫码,需要用到nodejs后台去写
场景
比如我们在竞拍商品、转发评论微博或者是秒杀商品等,同一时间访问量特别大,队列在此起到特别的作用,将 所有请求放入队列,以毫秒计时单位,有序的进行
解决方案
高并发的解决方法有俩种,一种是使用缓存、另一种是使用生成静态页面
nosql 与mysql优缺点比较
mysql
优点
1.事务处理—保持数据的一致性;
2.由于以标准化为前提,数据更新的开销很小(相同的字段基本上只有一处);
3.可以进行Join等复杂查询。
缺点
1. 扩展困难:由于存在类似Join这样多表查询机制,使得数据库在扩展方面很艰难;
2. 读写慢:这种情况主要发生在数据量达到一定规模时由于关系型数据库的系统逻辑非常复杂,使得其非常容易发生死锁等的并发问题,所以导致其读写速度下滑非常严重;
3. 成本高:企业级数据库的License价格很惊人,并且随着系统的规模,而不断上升;
4. 有限的支撑容量:现有关系型解决方案还无法支撑Google这样海量的数据存储;
nosql
现在主流的NoSQL数据库有MongoDB和Redis等
优点
1. 简单的扩展:典型例子是Cassandra,由于其架构是类似于经典的P2P,所以能通过轻松地添加新的节点来扩展这个集群;
2. 快速的读写:主要例子有Redis,由于其逻辑简单,而且纯内存操作,使得其性能非常出色,单节点每秒可以处理超过10万次读写操作;
3. 低廉的成本:这是大多数分布式数据库共有的特点,因为主要都是开源软件,没有昂贵的License成本;
web服务器与应用服务器
WEB服务器一般是通用的,而应用服务器一般是专用的
WEB服务器与客户端打交道,它要处理的主要信息有:session、request、response、html、JS、CS等。
如Tomcat只处理JAVA应用程序而不能处理ASPX或php。而Apache是一个WEB服 务器f(HTTP服务器),后来连接Tomcat应用服务器来支持java。
Web服务器专门处理HTTP请求(request),但是应用程序服务器是通过很多协议来为应用程序提供(serves)商业逻辑 (business logic)。
大的站点都是将Tomcat与Apache的结合,Apache负责接受所有来自客户端的HTTP请求,然后将Servlets和JSP的请求转发给Tomcat来处理。Tomcat完成处理后,将响应传回给Apache,最后Apache将响应返回给客户端。
而且为了提高性能,可以一台apache连接多台tomcat实现负载平衡。
电商
商品分类管理
搜索
秒杀频道
订单与支付
购物车
ActiveMQ
redis(chapter8)
redis是一款开源的Key-Value数据库,运行在内存中 Spring整合redis 需要提供redis运行的服务器地址 端口号 有一个RedisTemplate,连接到它统一的Operations接口 一般用Hash 这是个Map 跟据key找到Map,再在Map里面跟据id找到具体的订单等东西
网页静态化(chapter9)
ActiveMQ(chapter10)
Springmvc
数据库优化,SQL语句
OA项目
购物车
订单
Springboot 短信平台 发送网管 用户注册 阿里大于(chapter11)