首先 本人在8号去订19号的票. 听说网站从6点开始登录,放票时间8点,10点.  然后5点起来在一家网吧守候着.当6点01分的时候,就登录.结果登不进去.

每隔1分钟登陆一下直到10点就彻底放弃了.

后来听说有10亿的PV量,嗨嗨

然后在公司登啊登, 同事用登录软件登了进去,下不了单被踢出来了. 还有订到了单,可付款超过45分钟就OVER了 可谓是步步惊心!

总得来讲该网站比较简单, 简单易懂! 或许真的碰到春运这个全球难题. 日均10亿PV峰值.

看后台使用JSP 估计采用JAVA代码编写的中间应用程序. JAVA WEB一向来都是低性能的代名词.

什么 STRUCTE  SPRING HIEBRTATE 只是用来OO意淫的对象. 无法满足高并发,高流量的网站需求.

它满足金融的安全需求和稳定需求.

好吧  我们用 JSP+JAVABEAN+ORACLE的数据库 做为开发基础.   用TOMCATE APACHE作为中间容器和应用服务器.

数据库做RAC集群

TOMCAT和APACHE也做集群和负载均衡.

如果觉得不够还可以加个NGIX服务器

来看看页面情况 大部分都是静态页面, 动态页面就是车次和车票量而已.

也就是说大部分页面可以内存缓存起来. 用IE涮新页面应该很迅速,无论是网通,铁通,联通,电信,3G都可以.

好我们来谈谈登录页面 登录语句很简单 一个查询用户信息表.  在数据我们做个简单的用户信息登录表 就记录些 注册号,密码两个字段. 然后把它缓冲到内存中.

13亿人口,13亿用户,2个字段 占内存不大. 秒杀出来.

如果登录后会占大量的SESSION 也就是网页连接对象. 其实进去后,大家干的就是查询工作.然后下订单,然后再支付.

这样可以采用漏斗法, 下订单可以采用拿号排队机制.让用户可以看到前面有几个人? 同时看到票的递减数. 其他人就玩查询

这样用户体验就不会那么差. 毕竟能打开网页,毕竟能登录,毕竟能修改信息增加购票人的信息.毕竟可以查询车次. 下单就可以排队等候.

就不会被骂如此狗血

比如一天就放几趟车,每车就2千票. 实在太简单了. 两三台机器就可以完成业务处理. 虽然有上万人抢,当都被挡在外面.

页面打开机器

登录机器

信息修改机器

车次查询机器,

拿号订单机器

订单交易机器,

支付机器.

剩下就是分流用户. 深圳,北京,上海 广州用户 按IP地址把他们分流到不同的机器集群上.

高铁,动车线 是高端客户. 不管在哪里把他们集中在另外个机器集群中.

补充些总体而言就是分流客户量
1 根据接入网 分 电信网络,联通网通,北方网络 三大网络
2 根据客服IP地址分,主要把热点客服流分开. 北京,上海,深圳,广州.反程客流城市.
3 可根据客服高端分,动车,普通客车,临时客车.
4 根据购票流程 分打开主页,登录页面,注册页面,信息修改页面,查询车次页面,订单预定页面,支付页面. 这几个功能可以分在不同的序列中. 每个序列都有页面响应服务器,中间业务服务器,和数据库服务器.
5 最后在各个服务器上增加MEMCACH缓冲
6 每个服务器都做负载均衡和集群.
7 支付时间应该是24小时. 并且可以网下支付.比如在售票窗口.
跟电话订票拿到订单号去窗口买票一样.

上面不是组合而是层层剥离  把全国客流分成三大网, 按IP地址 分成 4大城市和其他城市, 客户类型分成三大部分. 然后按购买流程分成8个服务器组.

全国客户分成 3*4*3=24部分  10亿PV除以24  每个服务器队列就压力小了.

像这样拆分法  用MYSQL +LINUX+普通PC机+PHP+APACHE 3-5百台普通PC机 摆平

关于12360网站的架构优化相关推荐

  1. 大型网站技术架构(3):WEB 前端性能优化

    上次说到了性能优化策略,根据网站的分层架构,可以大致的分为 web 前端性能优化,应用服务器性能优化,存储服务器性能优化三大类 这次来说一下 web 前端性能优化,一般来说,web 前端就是应用服务器 ...

  2. 网站(前端、后端)性能(架构)优化手段

    网站的性能测试   性能测试是性能优化的前提,也是性能优化结果的检查和度量标准.温馨提示:本文内容有点长,请耐心看完或者先收藏. 性能测试的常用指标: 响应时间 并发数目 吞吐量.常用的吞吐量指标: ...

  3. 小网站架构优化-提升抗并发能力:子应用程序分离方案

    关于现实网站的抗并发实情: 由于每个网站的性能点,最后都离不开抗并发这一话题. 也许,网站本身并没有那么多并发访问,但为何还要抗并发? 因为现实不是每个人都是善良的,商业竞争也很激烈,竞争对手间时不时 ...

  4. 大型网站数据库优化及浅析大型网站的架构

    千万人同时访问的网站,一般是有很多个数据库同时工作,说明白一点就是数据库集群和并发控制,这样的网站实时性也是相对的.这些网站都有一些共同的特点:数据量大,在线人数多,并发请求多,pageview高,响 ...

  5. 网站的架构与优化[价值十万块的课程]

    一般网站的架构 缓存 失败的结构: 优化方式一:动静分离 •根据数据有效期分别拉取数据 –商品常规数据为非及时数据 –现存库存因下单扣减为及时数据 •非及时性数据走CDN(各级缓存) •及时数据要注意 ...

  6. BAT架构师分享之:大型网站技术架构

    早期的网站为了节省成本一般会设计成集中式系统,应用程序.数据库等都部署在一台服务器上. 但随着业务的快速度发展,逐渐出现瓶颈,按一定原则**(应用拆分.服务拆分.数据拆分.应用解耦)**,向分布式系统 ...

  7. 《大型网站技术架构》《K8S进阶实战》等书籍!送45本!读完工资多个0!

    学习如逆水行舟,不进则退.所以又来给各位读者送书了,这次送45本技术书,内容涉及深度学习.Python.Dubbo.Flutter等. 感谢本次活动的赞助商『电子工业出版社博文视点』 另外!急于购书的 ...

  8. 小白入门:大型网站技术架构负载均衡技术介绍及学习资源推荐

    十年间,负载均衡的前沿技术层出不穷,令用户眼花缭乱.经常在技术网站.文档中出现的"四层负载均衡"."七层负载均衡"字眼有什么含义?有什么区别?对客户网络有哪些不 ...

  9. 企业级Nginx服务基础到架构优化详解--25条

    1.隐藏nginx header版本号 2.更改源码隐藏软件名称 3.更改nginx默认用户及用户组 4.配置nginx worker进程个数 5.根据CPU核数进行nginx进程优化 6.nginx ...

最新文章

  1. 个人支付宝账号也可以做付款后自动发货发卡系统,附:源码+demo
  2. 缓存处理类(MemoryCache结合文件缓存)
  3. 外部表如何导入mysql_如何利用Oracle外部表导入文本文件的数据
  4. 深入浅出讲解MSE Nacos 2.0新特性
  5. 向量时钟Vector Clock in Riak
  6. 【LeetCode笔记】406. 根据身高重建队列(Java、偏数学)
  7. AI “闯入”北极圈
  8. Linux_access the file or directory which start with -
  9. mid制作乐谱_CuteMIDI简谱打谱软件(midi音乐制作器)V8.5.1 安装版
  10. 微信小程序——云开发入门
  11. 你在用FastReport.Net报表工具做报表没
  12. 聊聊量子计算机那些事
  13. opencv学习笔记(八)-IplImage数据结构
  14. android 状态栏wifi,【技术贴】教你修改状态栏里的wifi、信号、电量图标(转自论坛)...
  15. 鸿蒙内核阅读笔记-任务管理(los_task.c)
  16. 字体颜色 * 博客 * 好看
  17. sql 处理数据字段为空 如果为空转换成别的值
  18. 雷柏8300无线鼠标就是个悲剧,占灰…
  19. FPGA学习altera 系列 第十七篇 自动售货机设计
  20. 四川华巨同诚:拼多多如何修改类目信息

热门文章

  1. 3.7 私信列表-私信详情
  2. 超详细exe4j使用说明
  3. PAT解题思路传送门(柳神)
  4. stm32使用红黑树
  5. 【路径规划】基于 D星算法求解栅格地图最短路径matlab源码含 GUI
  6. springboot 整合jasperReport 6.6.0 记录
  7. MT7628,MT7622
  8. 服务器支持的网上银行系统列表,银行信息发布系统
  9. 葛洲坝电力集团责任有限公司启动时代新领域核心
  10. 期货程序化交易之期货入门知识摘录整理