Archive for December, 2008

基于SaaS模式下的数据库架构设计策略

Wednesday, December 24th, 2008

原以为基于SaaS架构的数据库数据隔离的设计,无外乎就是3种设计模式:
(1)独立数据库
(2)Share数据库,独立Schema
(3)Share数据库.Share Schema,每个表均加以个 tenentid(租户ID),这3种模式的优缺点大家都提了很多了,SaaS架构设计的前辈/我/阿里软件最新出的那本书,也都是这么讲的,包括2年前微软推出的SaaS架构设计指南,也都是这么说的。最近一直在思索这个问题,难道真的就没别的出路了?

这3种模式中,第一种做SaaS架构的,相信都不会采纳了,但是第2种与第3种设计的架构之争,常常是谁也说服不了谁。这两种架构,各有优缺点,而且都还很鲜明。

第2种架构设计,Share数据库,独立Schema,比较适用于复杂MIS的应用,数据库关联比较多;而第3种架构设计,适合简单的网站应用,比如网上书店,Performance显然第3种架构比较好,但是数据隔离权限太复杂,对程序员要求比较高,第2种由于Performance问题比较大,对软件系统架构师要求很高。而且第2种,在对B2B网站和供应链/进销存系统整合的应用中,如果综合查询所有租户(供应商/客户)的统计数据,则几乎是不可能的,每个租户之间的数据很难综合共享,每个之间都是数据孤岛。

难道真的就没有更好的设计了吗?后来,在每天不断的苦苦求索当中,终于看到了一缕曙光,利用数据库的特性,也许可以把第2类和第3类设计的优点整合起来,就可以解决这个难题了,只是牺牲了跨数据库的优点,但是对应用程序架构的设计,改动是不大的,而且综合了设计2和设计3的优点,个人认为,这种牺牲,在具体应用中,还是值得的。

花开在眼前

Monday, December 22nd, 2008

昨天,在看 上海东方台 《改革开放激荡30年》,里面的主题歌真得很好听,《花开在眼前》,很有意境的一首歌,很能代表现在的心情。经济危机了,来得更猛烈些吧?

已经开了很多很多遍
每次我总是泪流满面
像一个不解风情的少年

花开在眼前
我们一起走过了从前
每次我总是写下诗篇
让大风唱出莫名的思念

不知道爱你在哪一点
不知道爱你从哪一年
不知道爱你是谁的诺言
不知道爱你有没有变

只知道花开在眼前
只知道年年岁岁岁岁年年
我痴恋着你被岁月追逐的容颜

花开在眼前
已经等了很多很多年
生命中如果还有永远
就是你绽放的那一瞬间

花开在眼前
我们一起牵手向明天
每次我总是临风轻哼
更好的季节在下一个春天

不知道爱你在哪一点
不知道爱你从哪一年
不知道爱你是谁的诺言
不知道爱你有没有变

只知道花开在眼前
只知道年年岁岁岁岁年年
我痴恋着你被岁月追逐的容颜

不知道爱你在哪一点
不知道爱你从哪一年
不知道爱你是谁的诺言
不知道爱你有没有变

只知道花开在眼前
只知道年年岁岁岁岁年年
我痴恋着你被岁月追逐的容颜

利用Discuz新建了一个SaaS技术交流论坛,希望大家能有机会多交流和沟通

Sunday, December 21st, 2008

利用Discuz新建了一个SaaS技术交流论坛,希望大家能有机会多交流和沟通。

http://www.spluss.cn/forum

Project Zero, IBM的SaaS阳谋(wordPress的Bug,不得不分开写)

Wednesday, December 17th, 2008

听着也很美好,是吧,不过Project Zero的开发环境IBM虽然免费了,但是其工业运行环境IBM WebSphere sMash却是收钱的,并且很贵。说到底,利用Project Zero,IBM还是在卖它的商业Container,不过却换了一种方式,我挣钱,也让你挣,不象微软,什么都是我的。

Project Zero, IBM的SaaS阳谋

Wednesday, December 17th, 2008

在12月4日由CSDN和《程序员》杂志举办的软件开发2.0技术大会(SD2C)上,最热的三个关键词分别是云计算、SOA和SaaS这3个名词。

SaaS虽然讨论得火热,国内的一些软件公司也推出了基于SaaS的平台和产品,但是从底层平台上真正理解SaaS架构含义的,恐怕依然不多,大多只是实现了SaaS的数据隔离而已。

有意思的是,IBM适时地推出了基于SaaS架构解决方案Project Zero, 但却并没有大张旗鼓的宣传,也许Project Zero现在还依然是一个Incubation(孵化项目),并没有完善吧,关注SaaS的同事不妨关注IBM的这个项目。

其实Project Zero是IBM Web 2.0一个项目,基于PHP和Groovy,并采用REST这种架构的风格。大家都知道,基于Groovy,还有一个类似于Rails风格的Web开发框架Grails,Project Zero 与Grails的区别就是Grails只是一个 MVC框架,它本身并不去考虑端到端的故事,从设计到开发,然后怎么部署,怎么去运行,怎么运营这么一系列的事情,但是对Project Zero来讲,它着眼点并不是某一种类型结构的应用,它着眼的是一个非常通用的平台,你可以在上面搭建各种各样的应用。而且Project Zero还考虑到hosting environment,我们怎么去支持Multi-Tenancy(多重租赁),我们怎么去支持大型系统的可扩展性,我们怎么去很好的支持安全性等等,这些都不是Rails和Grails关心的事情,但是它是Project Zero需要去面对和解决的问题,这是最大的区别。

看到这里,关心SaaS的同事也许会说,呀, IBM真好啊,我们就跟着大公司走吧。不过,Project Zero是以Open Commercial Software的方式而不是Open Source的方式去开发的,Open Commercial Software代表了这样一种理念,我们能够让软件的开发既可以非常好的奉献给社区,同时又可以让公司有利润,有钱可以赚。

在经济危机的紧要关头,咬紧牙根,买了台Dell R200专用服务器

Wednesday, December 17th, 2008

在经济危机的紧要关头,咬紧牙根,买了台Dell R200专用服务器。也算是响应国家号召,扩大消费吧。不知道国家会不会发给我一个积极消费奖。自己编译安装了MySQL,弄了一个新版本的WordPress2.7 , 新版本WordPress速度还蛮快,缺省后台录入风格也改变了。

不过,录入窗口还是有Bug,而且不小。加一个Rich Edit这样的编辑器,有这么难吗?也许是自己不做,不知道吧。

周末就把这台专用服务器放到网通去,又要花一笔钱了,唉。