手机浏览 RSS 2.0 订阅 膘叔的简单人生 , 腾讯云RDS购买 | 超便宜的Vultr , 注册 | 登陆
浏览模式: 标准 | 列表2009年11月21日的文章

开发环境和生产环境布署的解决?

谈到这个问题,就不得不谈现时电子商务网站的现状了。
很多时候,在测试机上做开发的代码杂七杂八的功能都非常多,在没有使用UNIT等单元测试的时候,一些废弃功能也就永久的留在测试机上不会被删除。短时间内看不出啥问题,但时间长了,原有开发人员离职后,新的开发人员进入,如果再做上这些事情,那么时间长之后,哪些代码有效,哪些是测试代码就再也分不清了。

以下就是一位网友的经历:

首先,之所以把这个问题发到首页,一是我身边的朋友都有类似的问题,并且目前都没有最好的解决方案;二是有些朋友有好的解决方案,但是不一定是合理的方案,所以发到首页来相互学习,讨论。

我们进行WEB系统的电子商务系统开发,目前我有个问题不知道该怎么解决,想问问大家,看有什么好办法解决,情况如下:

1、我公司自己开发了一套电子商务系统,1.0的版本已经在运营。

2、现在开发人员要对该系统进行后续版本的功能增加,比如增加一些1.0中未实现的功能,甚至有时候还要改动1.0中的业务逻辑。

那么我的问题是:

在开发人员对后续功能进行增加的过程中,如果有一天发现1.0的版本中,有个严重的BUG,需要马上处理;

但是目前因为增加后续版本功能,代码已经修改了很多,这个时候,如果把1.0版本中的BUG修复,再布署到生产环境中的话,会出现很多两个版本中间不配套的问题,而出现程序错误;

然而,又不能全部布署最新的版本,因为当前的版本功能还没能完成。

这个时候,怎么办? 

 另外,我们开发环境中的数据库和生产环境中的数据库,数据同步的问题,比如1.0版本中的数据库已经有真实的用户数据和销售数据,但是我们后续的开 发工作可能增加了表,或修改了表的字段;本来是把后续的修改更新上去就可以了,但是我们在开发新功能的时候,开发环境中的数据库可能需要生产环境中的最新 数据才能进行。

 这个时候,怎么办?

 第一个问题,有朋友告诉我使用源码管理中的“分支”功能;

 第二个问题,有朋友告诉我,在有需要最新的生产环境数据的时候,直接手工把数据导过来;

 但是我总觉得应该还有更好的办法,或还有更细节的地方需要考虑和注意,特请有相关经验的人士一起讨论,谢谢。

  补充:

虽然程序会经过严格的质量测试,但是布署到生产环境中的时候,难免还会有错误,像支付宝、淘宝这样的系统,他们除了质量测试,还有其他的技术手段来保证新的程序版本布署到生产环境中出现错误,不知道他们是如何做的。

 关于程序的发布,另外还有两个朋友告诉我两种不同的解决方式:

1、是WEB程序的版本路径来区分,比如1.0的版本,上线发布的地址就定为:

 http://pay.baidu.com/v1.0/login

而1.1的版本上线地址则为:

  http://pay.baidu.com/v1.1/login

这样可以避免版本的冲突,但这个方法不适合我们的系统

 2、上线的时候采用两台服务器切换,一旦有问题,直接切换到另已台服务器(这个方式我想没有正面地解决问题) 

 2009-11-18 晚上22:03

回家在网上找了资料,看了微软的一本书《使用 Visual Studio Team Foundation Server 进行团队开发》,简称“使用TFS进行团队开发”,其中看到两幅图,如下:

大小: 91.86 K
尺寸: 500 x 270
浏览: 1168 次
点击打开新窗口浏览全图

大小: 106.96 K
尺寸: 500 x 301
浏览: 1162 次
点击打开新窗口浏览全图

再参考了一下相关的文字说明,我想,解决我面临的问题,最佳的办法应该还是使用版本控制是最好的,在此感谢园子里面所有给予建议和解决思路的朋友,谢谢你们。

-----EOF----

最后这位作者想到了使用版本控制,事实上版本控制是非常有必要的,有些时候我们还是需要为一段程序加上分支。要知道电子商务网站加减新功能可能是很频繁的。。

随便看看,好象自己没发表啥意见 。。。

chromeOS随想

虽然我不管是果粉,也不能算是强烈的G粉吧。chromeOS来势汹汹的。叫了大约一年,也就这么上市了。

上市那天,所有的网站会议视频、文字、评测文章、心得等乱七八槽的文件铺天盖地。
CB上特别明显,几乎平均每5篇新闻中就有一篇在讲chromeOS,这只是显示出来的,如果算上那些被CB编辑枪毙的文章,估计要每三篇就有一篇了吧?

云概念,从ChromeOS中又见云概念。存储都在服务端。方便了,也让人感到恐怖了。毕竟东西都存在云端,谁来保证数据的安全?会不会有第二个艳照门?(或许这不会发生了,毕竟修电脑的时候,再也不用担心硬盘数据被别人看了)

纯WEB浏览器的操作不是每个人都能习惯的吧?或许又会是一些极端主义者的爱好的理由 。。。

至少,在国内,网络还不是特别健全的情况下,恐怕不能被推行了吧?
而且根据那天的会议中也可以略微看出,google对这个操作系统是软件不要钱,但硬件要钱。所以我估计他以后最大的应用应该是SAAS吧?

一个小型机上也可以装上这个系统,比如收银机?仓储管理员的机器等。低配置就可以跑起来了。也不用担心他们安装其他程序。。。。以前的那种所谓的终端机也可以不用了。。。

乱想想而己

Tags: google, chrome