![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
大型网站架构
Vashon@plus
鄙人禀性淳朴,内外兼修,大方无隅,性豁达,不善言辞,平家子也,偶尔小酌,但不胜酒力;虽无仲尼墨翟之贤,无管仲伯夷之能,无王勃曹植之才,然吾有坚毅之心,青云之志,醇厚之情,亦有敢于创新之意识,不求宏达于天下,但愿不枉此生。
展开
-
大型网站技术架构(八)--网站的安全架构
大型网站技术架构(八)--网站的安全架构 从互联网诞生起,安全威胁就一直伴随着网站的发展,各种Web攻击和信息泄露也从未停止。常见的攻击手段有XSS攻击、SQL注入、CSRF、Session劫持等。1、XSS攻击 XSS攻击即跨站点脚本攻击(Cross Site Script),指黑客通过篡改网页,注入恶意HTML脚本,在用户访转载 2017-08-20 17:09:31 · 562 阅读 · 0 评论 -
Spring自定义缓存管理及配置Ehcache缓存
Spring自定义缓存管理及配置Ehcache缓存spring自带缓存、自建缓存管理器等都可解决项目部分性能问题。结合Ehcache后性能更优,使用也比较简单。在进行Ehcache学习之前,最好对Spring自带的缓存管理有一个总体的认识。这篇文章不错:https://www.ibm.com/developerworks/cn/opensource/os-c转载 2017-12-15 11:31:50 · 523 阅读 · 0 评论 -
分布式ID生成方法
分布式ID生成方法一、需求缘起几乎所有的业务系统,都有生成一个记录标识的需求,例如:(1)消息标识:message-id(2)订单标识:order-id(3)帖子标识:tiezi-id这个记录标识往往就是数据库中的唯一主键,数据库上会建立聚集索引(cluster index),即在物理存储上以这个字段排序。 这个记录标转载 2017-11-13 20:43:46 · 369 阅读 · 0 评论 -
秒杀系统架构优化思路
本文曾在“架构师之路”上发布过,近期支援Qcon-AS大会,在微信群里分享了该话题,故对原文进行重新整理与发布。一、秒杀业务为什么难做1)im系统,例如qq或者微博,每个人都读自己的数据(好友列表、群列表、个人信息);2)微博系统,每个人读你关注的人的数据,一个人读多个人的数据;3)秒杀系统,库存只有一份,所有人会在集中的时间读和写这些数据,多个人读转载 2017-11-13 20:31:55 · 360 阅读 · 0 评论 -
秒杀系统架构分析与实战
秒杀系统架构分析与实战1 秒杀业务分析正常电子商务流程(1)查询商品;(2)创建订单;(3)扣减库存;(4)更新订单;(5)付款;(6)卖家发货秒杀业务的特性(1)低廉价格;(2)大幅推广;(3)瞬时售空;(4)一般是定时上架;(5)时间短、瞬时并发量高;2 秒杀技术挑战假设某网站秒杀活动只推出一件商品,预计会吸引1万人参加活动,也就说最转载 2017-11-13 20:34:59 · 321 阅读 · 0 评论 -
单KEY业务,数据库水平切分架构实践
本文将以“好友中心”为例,介绍“多对多”类业务,随着数据量的逐步增大,数据库性能显著降低,数据库水平切分相关的架构实践。 一、什么是多对多关系所谓的“多对多”,来自数据库设计中的“实体-关系”ER模型,用来描述实体之间的关联关系,一个学生可以选修多个课程,一个课程可以被多个学生选修,这里学生与课程时间的关系,就是多对多关系。 二、好友中心业务分析好友转载 2017-09-04 10:27:29 · 508 阅读 · 1 评论 -
大型网站技术架构(一)--大型网站架构演化
大型网站技术架构(一)--大型网站架构演化 看完了有一本书,就应该有所收获,有所总结,最近把《大型网站技术架构》一书给看完了,给人的印象实在深刻,再加上之前也搞过书本上讲的反向代理和负载均衡以及session独立存储和缓存,因此书本看起来还是挺通俗易懂的,而且作者李智慧给人的印象(书本)也挺深刻的,我从这本书中也学到了许多,了解的许多,但是理解还是比较抽转载 2017-08-20 16:48:50 · 429 阅读 · 0 评论 -
大型网站技术架构(二)--架构模式
大型网站技术架构(二)--架构模式 每一个模式描述了一个在我们周围不断重复发生的问题及该问题解决方案的核心。这样,你就能一次又一次地使用该方案而不必做重复工作。 所谓网站架构模式即为了解决大型网站面临的高并发访问、海量数据、高可靠运行灯一系列问题与挑战。为此,在实践中提出了许多解决方案,以实现网站高性能、高可靠性、易伸缩、可扩展转载 2017-08-20 16:57:27 · 386 阅读 · 0 评论 -
大型网站技术架构(三)--架构核心要素
大型网站技术架构(三)--架构核心要素 所谓架构,一种通俗的说法就是“最高层次的规划,难以改变的决定”,这些规划和决定奠定了事物未来发展的方向和最终的蓝图。 而软件架构即“有关软件整体结构与组件的抽象描述,用于指导大型软件系统各方面的设计”。一般来说软件架构需要关注性能、可用性、伸缩性、扩展性和安全性这5个架构要素。1、性能转载 2017-08-20 17:00:52 · 460 阅读 · 0 评论 -
大型网站技术架构(四)--网站的高性能架构
大型网站技术架构(四)--网站的高性能架构 网站性能是客观的指标,可以具体体现到响应时间、吞吐量、并发数、性能计数器等技术指标。1、性能测试指标1.1 响应时间 指应用执行一个操作需要的时间,指从发出请求到最后收到响应数据所需要的时间。如下列出了系统常用的操作响应时间表.操作响应时间转载 2017-08-20 17:04:16 · 544 阅读 · 0 评论 -
大型网站技术架构(五)--网站高可用架构
大型网站技术架构(五)--网站高可用架构 网站的可用性(Avaliability)描述网站可有效访问的特性。1、网站可用性的度量与考核 网站不可用时间(故障时间)=故障修复时间点-故障发现(报告)时间点 网站年度不可用时间=(1-网站不可用时间/年度时间)× 100% 可用性转载 2017-08-20 17:06:13 · 405 阅读 · 0 评论 -
大型网站技术架构(六)--网站的伸缩性架构
大型网站技术架构(六)--网站的伸缩性架构 网站系统的伸缩性架构最重要的技术手段就是使用服务器集群功能,通过不断地向集群中添加服务器来增强整个集群的处理能力。“伸”即网站的规模和服务器的规模总是在不断扩大。1、网站架构的伸缩性设计网站的伸缩性设计可以分成两类,一类是根据功能进行物理分离实现伸缩,一类是单一功能通过集群实现伸缩。前者是不同的服转载 2017-08-20 17:07:28 · 397 阅读 · 0 评论 -
大型网站技术架构(七)--网站的可扩展性架构
大型网站技术架构(七)--网站的可扩展性架构 扩展性是指对现有系统影响最小的情况下,系统功能可持续扩展或提升的能力。 设计网站可扩展架构的核心思想是模块化,并在此基础上,降低模块间的耦合性,提供模块的复用性。模块通过分布式部署,独立的模块部署在独立的服务器上(集群)从物理上分离模块之间的耦合关系。转载 2017-08-20 17:08:29 · 403 阅读 · 0 评论 -
状态同步:是推或是拉情景分析
状态同步:是推或是拉情景分析任何脱离业务的架构设计都是耍流氓。 状态同步,有好友状态的同步,有群友状态的同步,有的需要实时同步,有的能够容忍延时。结合具体场景来看下,状态同步,究竟是推还是拉。用户的在线状态,分为客户端状态(端),服务端状态(云)两种形态。 什么是服务端状态?服务端状态,主要分为在线online和离线offline,不同的...转载 2018-05-18 19:32:30 · 310 阅读 · 0 评论