`

关于程序开发工作中,开发环境和生产环境布署的解决办法

阅读更多

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


 

我们进行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进行团队开发”,其中看到两幅图,如下:

 

[点击查看大图]

[点击查看大图]

 

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

 

 

 

分享到:
评论

相关推荐

    ASPNETAJAXVS2008解决VS2008环境下使用.net2.0AJAX控件的问题

    目前使用.net3及以上环境开发的程序还是有一些不能通用的特点,很多服务器布署不了,而在VS2008环境下开发.net2.0的应用时,却不能使用基于VS2005的AJAX控件,而这个工具包就是解决这个问题的。 其中包括三个文件:...

    基于teamtalk项目二次开发,群集布置效果优化,业务模块与底层分离,快速与自已现有系统对接支持全平台布署的互联网即时通讯系统

    专注于 企业云布署(SaaS) 的即时通讯IM系统,群集布置效果优化,业务模块与底层分离,能快速与自已现有系统对接,可用于企业OA,内部办公IM,App聊天沟通等业务场景。支持音,视频通话 支持 andoird ios mac windows h5/...

    毕业设计:网上图书预约系统的设计(源代码)

    它简化了在高度分布式Internet环境中的应用程序开发,使程序员可以在原有技术的基础上轻易地创建和布署具有安全性、高稳定性、高扩展性的Web应用程序。.NET提供了一个一致的面向对象的编程环境,而无论对象代码是在...

    GreenDotNet0.1.1_Simple.rar

    ^^……),虚拟机初始化后将直接通过GreenDotNet.exe在Windows中布署最简.Net环境,故对程序运行效率无影响。 3、虚拟机压缩包中仅删除了System.Web(如果要用编码之类的功能自己实现就好,不然这堆东西也5MB左右呢...

    XML课程设计报告,杨剑,电子科技大学成都学院

    1)系统集成及布署方案[采用的布署方案:包括打包和安装文件的制作,布署进对生产环境的要求,安装方法的详细说明,后期更新方案] 2)提交给银行的文件[指项目完成后提交给老师的文件,包括:源文件、安装文件、...

    ferry:Ferry 允许您使用 Docker 在 AWS、OpenStack 和本地机器上定义、运行和部署大数据应用程序

    Ferry:使用 Docker 的大数据开发环境Ferry 可让您在 AWS、OpenStack 和本地机器上启动、运行和管理大数据集群。 它通过利用诸如类的技术来做到这一点。 渡轮目前支持: Hadoop/YARN(版本 2.5.1) 卡桑德拉(2.1.0 ...

    Writing Portable Programs

    在软件工程中,可移植性(英语:Portability),又译为移植性、可携性,是指使用高阶语言写成的软件,在不同环境下,是否具备可以被重复使用的性质。一般来说,软件是否具备可移植性的衡量标准,在于进行软件移植时...

    杰创关机助手(C#源码)

    开发环境: windows 2003 server vs.net2003(可以转换到VS.NET2005上去) <br>更多软件可访问:http://soft.hiw.cn<br><br>杰创关机助手是绿色安装软件,软件运行后会在系统托盘区(桌面右下角显示时间的区域)...

    对Java和EJB应用程序进行单元测试

    火龙果软件工程技术中心 此篇文章是以JUnit...最后,我们阐述了如何在应用软件服务器环境中布署和执行单元测试。JUnit测试框架JUnit现在是基于Java应用软件单元测试的非官方标准。尽管Junit.orgWeb网站提供了更多有压

    论代码级性能优化变迁之路(二)

    程序开发的过程中,考虑不全面,容错很差,经常因为一个小bug而导致服务不可用。程序中没有打印关键日志,或者打印了日志,信息却是无用信息没有任何参考价值。配置信息和变动不大的信息依然会从数据库中频繁读取,...

    将深度神经网络部署到嵌入式GPU:如何为嵌入式GPU创建,训练和部署深度神经网络-matlab开发

    由于嵌入式设备固有的资源限制,在嵌入式GPU平台上设计和部署深度学习和计算机视觉应用程序具有挑战性,该演示演示了如何创建和训练用于图像分类的深度神经网络,以及如何使用GPU Coder部署经过训练的网络。...

    UECMS 5.2.rar

    UECMS是定位于中高端市场的CMS内容管理系统,基于.net开发,能够以最低的成本,最少的人力投入在最短的时间内架设一个环境安全,功能齐全,性能优异,规模庞大并易于维护的网站平台。 UECMS 5.2 更新内容: 1 升级再...

    YIXUNCMS中秋专版 v2.0.4

    系统介绍:YIXUNCMS中专专版是易迅软件工作室在中秋节来临之即推出的专题模板建站系统,使用...运行环境:Apache+PHP+MySql+PhpMyadmin,本机测试建议安装集成环境前端架构:HTML+CSS+DIV+JQUERY程序架构:PHP+Mysql

    超级有影响力霸气的Java面试题大全文档

    多态性语言具有灵活、抽象、行为共享、代码共享的优势,很好的解决了应用程序函数同名问题。 5、String是最基本的数据类型吗?  基本数据类型包括byte、int、char、long、float、double、boolean和short。  java....

    java 面试题 总结

    多态性语言具有灵活、抽象、行为共享、代码共享的优势,很好的解决了应用程序函数同名问题。 2、String是最基本的数据类型吗? 基本数据类型包括byte、int、char、long、float、double、boolean和short。 java.lang....

    YIXUNCMS企业网站建设系统 v2.0.4.1.rar

    2、您可以在遵守本协议规定和约束的基础上,对软件进行程序修改、页面美化,以适合您网站的需求。 3、您拥有使用本软件构建的网站中收集到的全部会员资料、文章、下载、图片、留言及相关信息的所有权,并独立承担与...

    YIXUNCMS中秋节专版.rar

    YIXUNCMS中秋节专版是易迅软件工作室在中秋节来临之即推出的专题模板建站系统,使用增强版后台管控系统,板板设计符合节日特点。易迅软件工作室恭祝全国人民中秋快乐。 特别提示: 由于网站页面的不同设计,部分...

    YIXUNCMS企业网站建设系统SD中英双语版 v2.0.4.9.zip

    2、您可以在遵守本协议规定和约束的基础上,对软件进行程序修改、页面美化,以适合您网站的需求。 3、您拥有使用本软件构建的网站中收集到的全部会员资料、文章、下载、图片、留言及相关信息的所有权,并独立承担与...

    Firebird数据库中文版

    Firebird可以工作最常见的硬件环境中,甚至非常差的硬件中,也能很好的工作,当然,硬件的要求依赖于你想做什么,例如 ,你有多少个并发用户等等。 有效的平台支持: Firebrid在常见的平台上都可运行,如Linux和...

Global site tag (gtag.js) - Google Analytics