哎。。。。。。。。一句长叹,动手能力啊!
最近一个礼拜都在考虑我们这个SAAS平台的数据存储,如何能让它方便扩容,而不影响程序----不要像MIXI(www.mixi.jp)等大型网站,查询点数据,要先把数据库实例的tableName传递过去,在程序中传来传去。到时候不想不 改程序都难(也不是做不到,但是是非常麻烦;ebay比较聪明,自己做了个ORM机制);经过最近的研究发现国人也有人做了个东西(广州的一个小伙,具体sourceforge上有),但是这样的东西mysql-proxy早给我们做好了,只不过它还是个测试版,没有正式版本用,但是很稳定。结果我们的数据库架构很是简单,也很容易进行扩容 ...
扯淡一把:
可用性
可修改性
性能
安全性
可测试性
易用性
other:上市时间、成本/收益、系统生命周期、目标市场、推出计划、与老系统的集成
这些东西虽然不是系统的功能需求,如果可户的这些要求达不到,最终会要求退货的。下面我们来吹吹怎么实现这样的非功能需求。
上面的各个属性都是相互制约的,都会对系统产生消极的影响,甚至相互是矛盾的,就要求我们怎么去取舍,在构架的设计中去折中
处理。
(待续)
从现实的系统出发,处理系统的HA,业界的方法也就是集群,在下个逢值到来之前,弄几个机器放上去,或增加web容器,或增加DB;增加cache
修改性嘛,其实还是 ...
什么是软件构架:
业界有很多不同的声音,分为不同的派别
SEI给出的是(大意):该系统的一个或多个结构,他们由软件元素,这些元素的外部可见属性以及这些元素的关系组成。
内容有点绕,我个人的见解是,构架是由系统的元素以及元素的交互组成,什么是元素呢?它是对象 接口 函数 进程。也就是说构架就是他们的和他们的交互组成,
系统构架从不同的角度去审视,实施者---部署构架,DBA---数据库构架,开发者---静态/动态图 等等。。。。
在软件开发的过程中,由需求的核心需求决定构架,非核心来验证构架,但是非功能需求--质量属性也会决定构架,如客户要求并发,响应时间等。
3 ...
系统涉众影响架构,架构反作用于架构
活动周期:
1:为系统勾建一个按理
2:理解需求
3:创建或选择一个构架
4:将构架变成文档,并与有关方面交流
5:分析和评估你的构架---ATAM 和ABAM方法
6:根据构架实现系统
7:保证系统符合构架的需求
过程的建议:
1:构架的设计应由某个人或某个设计者领导的小组完成
2:设计者应完全了解需求,包括非功能需求的质量属性
3:构架文档要完备
4:对构架应认真分析和评估
5:有助于增量开发跌代
结构的建议:
1:定义良好的模块,各模块间耸偶合调用
2:质量属性的构架实现,应建立在众所周知的基础上
3:构架应杜绝倚赖某个特定的商业产品或工 ...
- 浏览: 16249 次
- 性别:

- 来自: 上海

- 详细资料
搜索本博客
最近加入圈子
最新评论
-
做了几年软件,我都做了什 ...
坚持上BBS灌水近10年了... 水木清华开始的...
-- by lordhong -
做了几年软件,我都做了什 ...
我这么多年,一直在用手指打键盘,我干了什么了?
-- by 庄表伟 -
做了几年软件,我都做了什 ...
有感想很正常,当年一个弟兄就坐在我边上,配合着点头压抑的喊 insert del ...
-- by zingers -
做了几年软件,我都做了什 ...
我只能说羡慕
-- by who_who -
做了几年软件,我都做了什 ...
lz最好有一个长远的目标:5年后你要做什么样的人?
-- by hideto






评论排行榜