架构设计
yangjian15
工作7年了,学到了很多,却发现未知的更多。
展开
-
架构是一种平衡艺术
突然明白:架构是一种平衡。 架构师要做的只是平衡,平衡软件项目相关的所有因素。这些因素包含项目的需求(性能需求,扩展性需求)、项目资源(时间,金钱,人员,硬件)、技术等等。 举一例:你要为一项目选择要使用的语言,.net还是java。虽然大多数情况下很容易决定,但你要考虑的因素不少。如:项目组成员擅长语言、项目的时间、项目需求等等。你所要做的只是找出平衡点。 再一例:项目是原创 2009-08-26 15:15:00 · 936 阅读 · 0 评论 -
mongodb3.0 性能测试报告 三
多个场景对mongodb 3.0 的性能进行测试原创 2015-03-30 20:18:14 · 1919 阅读 · 1 评论 -
mongodb3.0 性能测试报告 二
对mongodb3.0 进行性能测试 这是混合模式(插入+查询)的测试。原创 2015-03-19 13:27:13 · 4016 阅读 · 1 评论 -
漫谈解耦
软件是变化的,这些变化包含需求变化,设计变化,Bug修改等等,为了避免牵一发而动全身,我们就需要降低系统的耦合。在不同的层面解耦的方法不一样,但主要思想还是一致的,都是通过接口将变化屏蔽到一定的范围内。这里的接口是一个广义的接口,它指一种规范。在面向接口的编程中,对象和对象之间通过接口来互相访问,只要接口不变,对象之间就不会相互影响。变化被屏蔽在对象的内部。在分层的系统中,我们通过接口原创 2010-04-07 14:24:00 · 1043 阅读 · 2 评论 -
测试驱动开发
在开发的过程中,总有种忧虑感,担心系统会出现这样或那样的Bug,修改Bug后,更要把所有的流程重测一遍。于是我们在完成代码后,编写测试程序,将所有的流程通过测试程序自动跑一遍。 测试驱动开发就在这种需求下诞生了。它将测试用例的开发提到了功能代码之前,这样功能代码是为满足测试用例能通过而开发,同时,测试用例也成为以后修改BUG后的测试方式。这样测试用例驱动了功能代码的开发。原创 2009-12-23 15:39:00 · 726 阅读 · 0 评论 -
读《Unix编程艺术》笔记
读《Unix编程艺术》笔记 http://blog.sina.com.cn/s/blog_4c451e0e0100d5be.html 读《Unix编程艺术》笔记 (一) 1)行为的最终逻辑被尽可能推后到使用端; 2)最终用户永远比操作系统设计人员更清楚他们究竟需要什么; 3)用错误的方式解决正确的问题 总比用正确的方法解决错误的问题好; 注:正确提出问题等于正转载 2009-11-23 09:38:00 · 849 阅读 · 1 评论 -
理解IOC
理解IOC概念IOC(Inversion of Control)控制反转,又称为“依赖注入”(DI =Dependence Injection)。这里的控制反转是指控制权由应用代码转到了外部容器。这样做可以消除应用和服务之间的耦合,将他们之间的依赖通过注入来完成,即实现了依赖注入。发展 我们通过编码的演变逐步来看IOC。 假设有这样一个例子:类LogT原创 2009-11-16 15:22:00 · 889 阅读 · 0 评论 -
接口、抽象类和面向接口的编程
接口、抽象类和面向接口的编程 接口本质接口是对象和行为的做过抽象。接口是一组规范,如果你拥有了这个接口,你就必须实现这些规范。从代码上说就是你继承了某个接口,你就必须实现这个接口的所有的方法。 接口作用接口的最大作用就是隔离变化。当然这是通过类的多态来实现的。例如:我们定义一个接口IRun如下:publicinterface IRun{原创 2009-11-15 17:39:00 · 766 阅读 · 1 评论 -
架构师的领导素质(读书笔记)
架构师的领导素质包含三个方面。一、 远见。只有拥有远见的架构师才能为软件项目制定一个清楚的、有远见的目标。有了目标团队才能有动力,有凝聚力。二、 诚信。有了诚信,才可以激励团队能够从整体出发来考虑各种问题。作为技术的领导者,必须站在技术原因提供最理想的解决方案。如果为了满足组织中某种政治需要而选择方案,就会失去团队的信任。三、原创 2009-11-09 14:11:00 · 679 阅读 · 0 评论 -
软件构架文档示例
http://ir.hit.edu.cn/~car/programming/rup/examples/course_reg/elaboration/ex_sadoc.htm#_Toc447085888转载 2009-11-02 10:21:00 · 665 阅读 · 0 评论 -
依赖注入性能测试(spring.net 和Enterprise Library)
想在项目中大量使用依赖注入,故对其性能做了一个测试。 测试使用spring.net和微软企业库(Enterprise Library 4.1)来做依赖注入。 测试场景: 简单构造函数 对同一个对象生成10000次。 单例模式下,取得对象10000次。 复杂构造函数 对同一个对象生成10000次。 单例模式下,取得对象1原创 2009-11-07 16:25:00 · 2524 阅读 · 1 评论 -
为应用程序设计一个合适的架构
为应用程序设计一个合适的架构 2009-05-13 作者:袁发明译 来源:IT168 目标学习如何为应用程序设计一个合适的架构了解对设计进行审查的各种方式概要本文将依次介绍应用设计的六个主要步骤并讨论与逻辑选择相关的各种问题。文中还包含了检查设计时可供参考的表单。输入转载 2009-10-21 11:24:00 · 1097 阅读 · 0 评论 -
做人、做事,做架构师——架构师能力模型解析
做人、做事,做架构师——架构师能力模型解析2008-10-16 作者:周爱民 来源:csdn 引子究竟是什么让你在同一个位置上——例如程序员或技术负责人——工作了三年、五年或者更久,而仍然得不到任何的发展空间?你觉得自己已成为技术圈中的大牛,并信心满满地去拿明天就要颁发的某某大奖转载 2009-10-21 11:38:00 · 658 阅读 · 0 评论 -
设计异常管理系统
设计异常管理系统 2009-06-30 作者:Jean-Pierre Norguet 来源:网络 在面向对象的应用程序中,由于代码重载、错误的问题处理方式,导致异常有越来越多的趋势。在这篇文章中,作者Jean-Pierre Norguet介绍了如何设计异常,来实现一个简单的、可读的、健壮的、转载 2009-10-21 11:39:00 · 704 阅读 · 0 评论 -
大型网站架构演变和知识体系
之前也有一些介绍大型网站架构演变的文章,例如LiveJournal的、ebay的,都是非常值得参考的,不过感觉他们讲的更多的是每次演变的结果,而没有很详细的讲为什么需要做这样的演变,再加上近来感觉有不少同学都很难明白为什么一个网站需要那么复杂的技术,于是有了写这篇文章的想法,在这篇文章中 将阐述一个普通的网站发展成大型网站过程中的一种较为典型的架构演变历程和所需掌握的知识体系,希望能给想从事转载 2009-10-16 11:44:00 · 466 阅读 · 0 评论 -
AOP 和WCF
AOP是OOP的延续,是Aspect Oriented Programming的缩写,意思是面向切面编程。可以通过预编译方式和运行期动态代理实现在不修改源代码的情况下给程序动态统一添加功能的一种技术。 WCF是Microsoft为构建面向服务的应用提供的分布式通信编程框架。使用该框架,开发人员可以构建跨平台、安全、可靠和支持事务处理的企业级互联应用解决方案。 一般在.net里加入拦截点原创 2009-09-03 13:05:00 · 4110 阅读 · 4 评论 -
mongodb3.0 性能测试报告 一
对刚刚发布的mongodb3.0 进行测试。分为单机单插入,单机混合操作,分片混合 三个场景的测试,这是第一个。原创 2015-03-13 14:10:26 · 2164 阅读 · 0 评论