当前搜索:

一个大型网站图片服务器架构的演进

本文将以一个真实垂直门户网站的发展历程,向大家娓娓道来。构建在Windows平台之上的网站,往往会被业内众多技术认为很“保守”,甚至会有点。很大部分原因,是由于微软技术体系的封闭和部分技术人员的短视造成的(当然,主要还是人的问题)。由于长期缺乏开源支持,所以很多人只能“闭门造车”,这样很容易形成思维局限性和短板。以图片服务器为例子,如果前期没有容量规划和可扩展的设计,那么随着图片文件的不断增多和访...
阅读(1061) 评论(1)

浅谈CSRF攻击方式

一.CSRF是什么?   CSRF(Cross-site request forgery),中文名称:跨站请求伪造,也被称为:one click attack/session riding,缩写为:CSRF/XSRF。 二.CSRF可以做什么?   你这可以这么理解CSRF攻击:攻击者盗用了你的身份,以你的名义发送恶意请求。CSRF能够做的事情包括:以你名义发送邮件,发消息,盗取...
阅读(894) 评论(0)

JAVA网站高并发解决方案

一个小型的网站,比如个人网站,可以使用最简单的html静态页面就实现了,配合一些图片达到美化效果,所有的页面均存放在一个目录下,这样的网站对系统架构、性能的要求都很简单,随着互联网业务的不断丰富,网站相关的技术经过这些年的发展,已经细分到很细的方方面面,尤其对于大型网站来说,所采用的技术更是涉及面非常广,从硬件到软件、编程语言、数据库、WebServer、防火墙等各个领域都有了很高的要求,已经不是...
阅读(1085) 评论(0)

计算机网络

目录[-] OSI参考模型 TCP/IP的5层模型 TCP/IP通信的三次握手、四次挥手 戏说TCP/IP状态转化图 MAC地址的概念及其作用 ARP协议的用途及其工作原理 了解交换机、路由器、网关的概念,并知道各自的用途 初识路由表 MTU RIP、OSPF、BGP认识 DNS TCP、UDP和HTTP区别于联系 在浏览器中输入一个网站后,都发生了什么 ...
阅读(1516) 评论(0)

Nginx负载均衡配置实例详解

[导读] 负载均衡是我们大流量网站要做的一个东西,下面我来给大家介绍在Nginx服务器上进行负载均衡配置方法,希望对有需要的同学有所帮助哦。 负载均衡先来简单了解一下什么是负载均衡,单从字面上的意思来理解就可以解 负载均衡是我们大流量网站要做的一个东西,下面我来给大家介绍在Nginx服务器上进行负载均衡配置方法,希望对有需要的同学有所帮助哦。 负载均衡 先来简单了解一下什么是负载...
阅读(1302) 评论(0)

架构师必看-架构之美第15章伸缩性架构设计

3.1 简介       在设计系统架构时,一个比较有趣的问题就是确保系统在伸缩时的弹性。随着越来越多的系统运行在网络上或在互联网上提供访问,伸缩性正变得越来越重要。对于这样的系统,如果你希望误差的范围在几个数量级以内,那么容量规划的想法显然是荒谬的。如 果你架起一个网站,然后它火了,你可能会突然发现有几百万的用户访问你的站点。同样容易出现的情况是,你架起了一个网站,却发现没有人感兴趣,你投入...
阅读(802) 评论(0)

架构师必看-架构之美第14章-两个系统的故事:设计之城(一)

形式永远服从功能。                                                       —Louis Henry Sullivan                    “设计之城”软件项目表面上与“混乱大都市”非常相似。它也是用C++写的消费音频产品,运行在Linux操作系统上。但是,它的构建方式有很大不同,所以内部结构也非 常不同。    ...
阅读(936) 评论(0)

架构师必看-架构之美第14章-两个系统的故事:混乱大都市(一)

你们修筑、修筑,预备道路,将绊脚石从我百姓的路中除掉。                                        —《以赛亚书》第57章14节                  我们要看的第一个软件系统名为“混乱大都市”。它是我喜欢回顾的一个系统—既不是因为它很好,也不是因为它让参与开发的人感到舒服,而是因为当我第一次参与它的 开发时,它教给了我有价值的软件开发经验。 ...
阅读(788) 评论(0)

架构师必看-架构之美第14章-两个系统的故事:现代软件神话(一)

架构是一种很浪费空间的艺术。                        —Philip Johnson             软件系统就像一座由建筑和后面的路构成的城市—由公路和旅馆构成的错综复杂的网络。在繁忙的城市里发生着许多事情,控制流不断产生,它们的生命在城市中交织在一 起,然后死亡。丰富的数据积聚在一起、存储起来,然后销毁。有各式各样的建筑:有的高大美丽,有的低矮实用,还...
阅读(828) 评论(0)

架构之美第十三章-美丽的架构

所有前面的方法都有助于我们判断一个架构是否“足够好”—也就是说,是否有可能指导开发者和测试者构建一个系统,并满足系统的利益相关人的功能和质量关注点。在我们每天使用的系统中存在着许多好的架构。        但是,超越足够好的架构是怎样的呢?如果有一个“软件架构名人堂”,那会怎样?哪些架构会陈列在这个艺术馆的墙上?这个想法可能没有你想象的那么遥远—在软件产品线领域,这样的“名人堂”的确存在。(...
阅读(737) 评论(0)

架构之美第十二章-好的架构

我们曾提到,架构师玩的是折中的游戏。对于一组给定的功能需求和品质需求,没有唯一的正确架构和唯一的“正确答案”。我们从经验中得知,应该对架构进行评估,确定它是否满足其需求,然后再投入资金来构建、测试和部署这个系统。评估试图回答前面小节中讨论的一个或多个一般关注点问题,或回答特定系统的具体关注问题。        架构评估有两种常见的方式(Clements、Kazman和Klein 2002...
阅读(610) 评论(0)

架构之美第十一章-架构结构

那么,好的架构师如何来处理这些关注点?我们曾经提到过,需要将系统组织成一些结构,每种结构都定义了特定类型的组件之间的具体关系。架构师的主要关注点就是对系统进行组织,让每种结构有助于解答一个关注点所定义的问题。关键的结构决定将产品划分为组件,并定义了这些组件之间的关系(Bass、Clements和Kazman 2003; Booch、Rumbaugh和Jacobson 1999; IEEE 2000...
阅读(634) 评论(0)

架构之美第十章-创建软件架构

到目前为止,我们已经讨论了一般意义上的架构,并分析了软件架构与其他领域的架构之间有何相似与差异。接下来我们将注意力转到“如何”设计软件架构。当架构师创建 软件系统的架构时,她应该关注什么?         软件架构师的首要关注点不是系统的功能。         这是正确的—软件架构师的首要关注点不是系统的功能。         例如,如果我们请你来设计一个“基于Web的应用...
阅读(628) 评论(0)

架构之美第九章-架构与设计

架构是系统设计的一部分,它突出了某些细节,并通过抽象省略掉另一些细节。所以,架构是设计的一个子集。关注实现系统组件的开发者可能不会特别关心所有组件如何装 配在一起,而是主要关注少数组件的设计和开发,包括他们必须遵守的架构约束和可以应用的规则。因此,开发者和架构师面对的是系统设计的不同方面。         如果说架构关注的是组件之间的关系和系统组件外部可见的属性,那么设计还要关注这些组...
阅读(614) 评论(0)

架构之美第八章-软件架构的含义

如果认为“架构”是一个简单的实体,能够用一份文档或一张图纸来描述,那就错了。架构师必须做出许多设计决定。要想有用,这些决定必须用文档记录下来,这样就能够 进行复审、讨论、修改和批准,然后作为后续决定和构建时的约束。对于软件系统,这些设计决定包括行为上的和结构上的。         外部行为描述展示了产品如何与它的用户、其他系统和外部设备进行交互,这应该表现为需求。结构描述展示了产品如何划分为多...
阅读(681) 评论(0)

架构之美第七章-软件架构师的角色

软件开发项目需要一些人在软件构建时扮演架构师的角色,就像构建或修复建筑时传统的建筑师的角色一样。但是,对于软件系统来说,从来就弄不清楚哪些决定属于架构师 的职责范围,哪些决定要留给实现者。定义架构师在软件项目中做什么,比建筑师的类似定义更困难, 原因有3 个因素: 缺少传统、产品无形性和系统复杂性。( 参见 Grinter[1999],其中描述了软件架构师如何在一个大型软件开发组织中实现她的职...
阅读(708) 评论(0)

架构之美第六章-建筑师的角色

在设计、构建和修复建筑时,我们指定关键的设计师为“建筑师(architects)”,并赋予他们广泛的职责。建筑师准备建筑最初的草图,展示外观和内部布局,与客户讨论这些草图,直至所有相关方都达成一致意见,认为展示的就是他们想要的。这些草图是抽象:它们关注建筑中某些方面的适当细节,而忽略其他的内容。          当客户和建筑师在这些抽象上达成一致意见之后,建筑师会准备或监督准备更为详细的图纸,...
阅读(833) 评论(0)

架构之美第五章-架构概述

建筑师、音乐家、作家、计算机设计师、网络设计师和软件开发者都在使用“架构”这个术语,其他人也用(你有没有听说过“食物架构”?),然而不同的用法其结果也不同。建筑与交响乐完全不同,但都有架构。而且,所有的架构师都在谈论他们工作中的美,以及因此而导致的结果。建筑师可能会说,一座建筑应该提供适合工作或生活的环境,而且它应该看起来很美。音乐家可能会说,音乐应该能演奏,包含能够辨明的主题,而且它应该听起来很...
阅读(647) 评论(0)

架构之美第四章-架构与美

人们在生活和工作中发现美并创造美,软件开发和架构设计也不例外。         架构之美体现了关注点的分离与结合。在软件设计中,设计师需要考虑多方面的关注点。漂亮的架构设计让这些关注点尽可能分离,然后以最简单的机制结合在一起,从而得到高内聚、低耦合的系统。例如在Darkstar项目中,架构师们考虑的重点就是如何将多人在线游戏的游戏逻辑与系统的可伸缩性分离开来,让游戏的开发者只要遵守少量的规则,就...
阅读(710) 评论(0)

架构之美第三章-美丽架构之道

我无法给架构下一个简单的定义,因为任何定义都会束缚你对架构的无限想象。不可否认,架构师早已出现在人类几千年前的各项生产活动中,比如建筑、音乐。而在计算机软件及Web领域,架构的设计直接影响着系统的生产,比如开发过程和效率、代码和组 件复用性等,同时也影响着系统的可用性、可伸缩性、性能、容量可预测性等。        关注架构之美。美丽的架构同样无法定义,可它却一定是自然的、简单的、可复...
阅读(725) 评论(0)
22条 共2页1 2 下一页 尾页
    编程技术学习交流群 :154514123
    微信
    个人资料
    • 访问:566911次
    • 积分:8097
    • 等级:
    • 排名:第2860名
    • 原创:310篇
    • 转载:34篇
    • 译文:2篇
    • 评论:107条
    最新评论