我进公司已经大半年了,公司主要使用的两个cms平台是 ez publish(PHP)和opencms(java)
在使用的过程中不自觉地有了对比
1.优点比较
1)a.ezpublish是使用php的,源代码都是开放的,可以任意修改。
b.可以自己定义一些class扩展对象的属性,上传的文件都以md5编码的文件存放在硬盘上。
c.在后台修改任何东西都不需要重新启动apache。
d.在后台提供了很方便的插件机制,便于扩展。
e.cms管理界面非常人性化,使用可视化编辑器,不会编程的人也能使用。
f.各个对象的关联性很强。
g.可以很轻易产生各个语言版本的网站。
h.网站的模版和配置文件可以覆盖,对于一个主语言的模版,复制一份或者某一个模版文件修改后变为另一种语言,可以覆盖主语言的模版,而不影响主语言的访问。
i.有svn功能,可以恢复删除或者修改的文件
j.开发时,利用模版语言,遍历各个节点,读取相关属性
f.备份数据库比较简单,不是很多基本上就200MB
2)a.opencms是使用java的,后台类似于文件管理,
b.习惯使用ftp的客户比较方便,更适合程序员使用
c.可以自己定义结构化文档,编辑方式也非常好用,有的可以无限增加属性。
d.可以自己定义模版,但是没有模版覆盖功能
e.部署非常方便,可以把目录或者文件导出,上传到产品机,在导入,发布
f.有离线预览功能,
g.有svn功能,可以恢复删除或者修改的文件
h.开发时,利用模版语言把结构化文件进行遍历进行显示,可以控制显示导航,顺序,排序等等。
i.网站上线部署比较简单,把数据导出,把代码打包,放到产品机,把代码和数据库导入即可
f.有debug模式,可以方便调试
2.缺点比较
1)我公司用 ez publish是因为历史原因,一个大客户的原版就是 ez publish,而且已经用了5年时间了,这个平台经手的人很多。
a.ez publish的代码可以自由修改,这个既是优点又是缺点,因为经手的人太多了,今年客户说要升级ez publish的版本,我们发现太困难了,因为ez publish的好多文件都被修改过了,为了维持功能而升级,我们花了3个月时间进行升级。
b.另外ez publish的模版覆盖非常好用,网站的各个国家可以公用一个模版,这样就产生问题了,针对某个国家这个模版需要修改,我们发现在里面增加了很多国家的相关的判断,导致整个模版非常臃肿、凌乱。
c.系统太庞大了,从我接触到现在,有很多地方没有搞明白
d.多个国家都在一个网站里,偶尔出现语言乱。
e.多个国家在一起的话,某一天需要把某个国家拆出来,发现是非常困难的事情。
f.部署麻烦,在后台做的东西没法导出,在产品机上需要重新做一遍。
g.ez 把所有的文件名都变为md5,因此不知道那些文件有用,那些没有用。
h.ez里的节点关联太紧密,经常属性坏节点,原因是某个节点的依赖没有了,这样会导致这个节点无法删除也无法编辑,只能从数据库里删除。
i.由于引用的模版太多,debug时,只能一个个去找问题,花费时间很长
2)opencms虽然是开源的,但是我从来没有看过它的代码
a.opencms的最大问题是把网站的所有文件,代码都放在数据库里,导致一个普通的网站的数据库导出sql就有3GB,备份非常耗资源。
b.数据库有导入数据包大小限制,而opencms的包一般都超过2G,需要对数据库进行设置,后台上传也一样受到这个限制。
c.每次新加模版,都得重新启动tomcat,中断服务
d.每次修改class文件,都得重新启动tomcat,中断服务
e.占用内存很大,需要消耗3GB的空间,而且隔一段时间需要重新启动一些tomcat,否则无法正常工作。
f.存在一个问题是,隔一段时间在上传文件总是失败,目前没有解决。
这两个系统在开发方面也许都可以很快完成,但是在维护时,总是存在各自的问题
我目前想要的cms系统是
1.能够快速开发
2.后台功能人性化,不懂代码的人也能使用
3.系统不要太庞大,复杂,这样解决问题来会更简单
4.具有对象扩展功能,能够进行遍历。
5.版本历史控制
阅读(2176) | 评论(1) | 转发(0) |