以图明志

软件架构技术

怎样架构网站才能顶得住巨大访量

谈谈部署架构与开发架构
一般情况下,架构分两种来讨论的,一种是开发架构,一种是部署架构。部署架构,就是开发完的程序在实际运行环境下,通过负载均衡,DNS轮询,SquID等等来减轻单台服务器负载,达到性能优化的目的。这里大家估计更想了解的是开发上的架构。我对这个的观点是,所有的架构都是死的,而性能优化策略是活的。

软件架构技术

如何理解并架构优秀的系统

学习这些经验能够有立杆见影的成果
你开发软件是为了供别人使用,没有人使用的软件只是没有意义的数据的集合而已。许多在软件方面很有成就的行家在他们事业的初期却表现平平,因为他们 那时侯将主要精力都集中在技术上。显然,构件(components),EJB(Enterprise Java Beans)和代理(agent)是很有趣的东西。

软件架构技术

如何对系统进行性能测试

性能测试浅谈
性能测试的目的,简单说其实就是为了获取待测系统的响应时间、吞吐量、稳定性、容量等信息。而发现一些具体的性能相关的缺陷(如内存溢出、并发处理等问题),我认为只是一种附加结果。从更高的层次来说,性能测试最想发现的,是瓶颈。

软件架构技术

深入浅出REST架构

REST架构概述
REST是英文Representational State Transfer的缩写,中文翻译为“表述性状态转移”,他是由Roy Thomas Fielding博士在他的论文 《Architectural Styles and the Design of Network-based Software Architectures》中提出的一个术语。Rest是设计基于命名资源而非消息的松耦合应用程序。

软件架构技术

百万级高性能网站的架构事项

大型网站的十项规则
在中国, 开源的LAMP栈是最流行的网络架构,它使用PHP开发,运行在Apache服务器上,以MySQL作为数据库,所有这些都运行在Linux上。它是个可靠的平台,运行良好,是现在全球最流行的Internet系统架构。然而,我们很难对其规模进行正确的扩展并保持安全性,因为每个应用层都有其自身的问题、缺陷和最佳实践。

软件架构技术

谈谈软件开发中的破窗效应

程序员都应该是完美主义者
"一个房子如果窗户破了,没有人去修补,隔不久,其它的窗户也会莫名其妙地被人打破;一面墙,如果出现一些涂鸦没有被清洗掉,很快 的,墙上就布满了乱七八糟、不堪入目的东西;一个很干净的地方,人们不好意思丢垃圾,但是一旦地上有垃圾出现之后,人就会毫不犹疑地抛,丝毫不觉羞愧。"

软件架构技术

五分钟弄清楚UML

图文并茂的讲解,让你迅速了解UML
最近一段时间做项目,需要做机能模块的设计。客户方指名要用UML图作设计资料。但是跟日本人打了这么多年交道,UML图是什么东西,我早就忘记光了,没办法,只好从头查资料。于是做出来了这样一个资料,把我学习UML的方法和结论告诉大家,让大家在5分钟之内都能学会UML。

软件架构技术

系统设计背后的基本思想与原则

重用、扩展、变化、分离、简约、一致、间接
从严格意义上讲,软件设计也可看做是架构的一部分。从marco-architecture到micro-architecture,再到nano-architecture,是一种设计粒度的自上而下。但在架构过程中,我们并非一定要从宏观到微观,再到更为具体的细节,这些架构其实是平等的。这几种粒度的架构,似乎存在某些玄奥的原则与设计精神,贯穿其中。

软件架构技术

勤于思考才能善于架构

多些时间能少写些代码
聪明的程序员使用50%-70%的时间用来思考,尝试和权衡各种设计和实现,而用30% – 50%的时间是在忙碌着编码,调试和测试。聪明的老板也会让团队这样做。而傻逼的老板,苦逼的程序员会拿出来100%-150%的时间来忙着赶进度,返工,重构,fix 大量的 bug… 所以, 越差的团队一般会越忙,而且还忙不完。

软件架构技术

什么是面向服务架构SOA

使 IT 业务系统变得更加灵活
SOA面向服务的体系结构(service-oriented architecture)是一个组件模型,它将应用程序的不同功能单元(称为服务)通过这些服务之间定义良好的接口和契约联系起来。接口是采用中立的方式进行定义的,它应该独立于实现服务的硬件平台、操作系统和编程语言。这使得构建在各种这样的系统中的服务可以以一种统一和通用的方式进行交互。

软件架构技术

REST风格中什么时候用HTTP PUT

HTTP PUT
REST(Representational State Transfer)是网络服务接口的一种风格,并不是一个标准,就web service而言,REST要比SOAP(SOAP是标准,不是风格)轻量得多,容易得多。我记得我最初开始接触web service的时候,所有的材料上来就是一大堆的名词,SOAP, WSDL,看得头都要大了,后来提出来的REST就容易理解得多,虽然目前SOAP在企业级的web service中还有一席之地,但是在公共的Internet上,不是REST的服务实在不好意思和人打招呼。

软件架构技术

软件的生命周期分为哪几个阶段

了解软件产品的开发流程
软件项目的来源一般有两个渠道,一是自主研发的“非订单软件”,二是为用户开发的“订单软件”。前者需要立项,后者需要签订合同。所以“立项”和“合同”是IT企业软件项目(或产品)的两个源头。一旦立项或者签订合同成功,企业领导或软件管理部门就要下达“任务书”。

软件架构技术

键值对在MVC架构设计中的应用

键值对是强大的数据结构
程序其实就是两个东西:代码+数据,写程序的时候也就是写代码操作数据的过程。做程序开发和做菜很像,数据就是食材,代码就是厨艺,做出的软件就是一道菜了,至于这个菜好不好吃,到底是看食材还是看厨艺了?呵呵,当我抛出这个问题的时候,我的第一反应是菜不好吃当然是手艺不好了,不知道其他童鞋是不是这么想的。认真想下,一道好菜一般都是二者必须兼备。

软件架构技术

浅谈系统架构中的MVC模式

MVC设计模式可以带来更好的软件结构和代码重用
大部分Web应用程序都是用像ASP,PHP,或者CFML这样的过程化语言来创建的。它们将像数据库查询语句这样的数据层代码和像HTML这样的表示层代码混在一起。经验比较丰富的开发者会将数据从表示层分离开来,但这通常不是很容易做到的,它需要精心的计划和不断的尝试。MVC从根本上强制性的将它们分开。

软件架构技术

探讨一下关于重构Refactoring的事情

重复建设只会导致效率的低效和资源的浪费
重构(Refactoring)就是在不改变软件现有功能的基础上,通过调整程序代码改善软件的质量、性能,使其程序的设计模式和架构更趋合理,提高软件的扩展性和维护性。也许有人会问,为什么不在项目开始时多花些时间把设计做好,而要以后花时间来重构呢?

软件架构技术

如何进行单元测试

单元测试可以有效提高代码质量保证
单元测试是开发人员对其所实现功能的代码进行的另外编写的测试,用于检测其代码功能的完整性、正确性和其运行效率,从而提高代码质量,并且在写单元测试时发现功能代码间的依赖等设计问题,从而提高产品的可扩展性。
2 / 3 首页 < Prev 1 2 3 Next > 尾页 页码: