博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

第一次放首页,如果不适合就请网官取下。

在博客园看到了颇多关于多层架构的文章,此前也颇多疑虑。最近在完成了一个大型项目后的终于领悟到了多层架构的真正价值!
多层架构的真正价值是---安全性。而我们以前纠缠于所谓开发效率的问题,其实是一个微妙的骗局!
这个骗局的名称就叫打字机骗局。
刚开始的时候打字机是机械的,然而打字机上的字符排列是一个很奇怪的方式,然后发明人宣称,
这种排列方式能打得最快,可是实际上,这种排列方式,只不过是让机械式打字机不卡壳而已。
也就是说这是一个有关安全的问题。
那么这个骗局怎么会出现在多层架构中呢?
原因很简单,程序员对什么最感兴趣呢?当然是对提高开发效率最感兴趣,于是,大师们就把一个用来解决安全性的方案戴上了提高效率的帽子。
所以说大家都没有错,有些有怀疑精神的人对大师们的小骗局提出了疑问,也是无可厚非的。
多层架构对于大型系统来说,是一个保证安全的问题,从某种程度上说,安全性是一个最低要求。
我们也就可以理解,为什么多层结构在网站中最流行,因为Web是一个最不安全的地方。
那么多层效率的开发效率如何呢?有人说,加一个字段就要改好多层,真没有看出好处来。
其实,这就对了。对你难了,对黑客也就难了。其实每一层就相当于一个天然的防火墙,保护着你的最宝贵的东西,数据库里面的数据。
试想,如果你不需要编译,就可以让一些超出你预想的数据直接抵达数据库,那不是很危险吗。
作为一个黑客,他无法通过构造一个非法数据结构来入侵你的系统,那么你的系统就安全了。
那么许多小系统,或者公司内部系统为什么可以不用3层结构呢?原因也很简单
1,用户行为可控
2,数据不重要
3,开发预算有限
多层结构不但让系统一开始就相对安全,而且还方便于今后打安全补丁,什么样的补丁,打在哪一层,让你不会顾此失彼都是多层结构的好处。
至此,已经很清楚了,多层架构是大型互联网系统的最低要求,不采用多层架构,那就完全是在等死。
如果是公司内部小项目,适用多层架构似乎没有必要,可是从提高技术的角度来说,可以练练手,不尝试哪里来经验。反正预算是老板出的。难道你想一辈子做小项目。

希望这篇文章对挣扎于多层架构里的人们有帮助。
结论,大师们总是对的,即使他对你没有说实话也是为了你好。