我有一个客户端,他已经在生产中使用了一些应用程序,因此已经对下一个项目的生产环境做出了一些决定:
他们也有一些网络应用的公司标准:
我还被告知,这个应用程序可能不需要完整的Java 5环境(可能只是一个web容器),但需要通过客户端EJB等与一个单独的weblogic实例上的一个应用程序进行通信,并执行对其他企业服务的各种web服务调用。
我的任务是对这个新团队的开发和测试环境做出一些决定(包括我在内,可能只有2到3个人,但在未来几个月内可能会有所增长)。我想要创建一个用户可以使用他们喜欢的IDE并在本地主机上有良好的开发经验,但仍然有一个在测试环境中部署的平滑路径,然后再到生产环境。我的想法是,在本地工作站上,http是可以的,但是集成测试服务器应该看起来与生产服务器完全一样,所有的流量都应该是https,以确保我们得到了prod的准确描述。
知道devs本地工作站将是非常不同的,可能在他们的本地工作站上运行MacOSX10.6(雪豹)或Windows 7,但是一个通用的测试服务器也需要被规范:什么样的技术堆栈将为我们提供一个从本地开发到生产的良好的平滑路径?
编辑:对不起,当我说技术栈时,我的意思是例如Ant + JBoss + Tomcat + Oracle与Maven + Geronimo + Derby。基本上,我们需要在每台开发机器和测试服务器上安装的具体规范实现列表,为我们提供了一个灵活的开发环境,以及向测试和生产环境的平稳过渡。
EDIT2:可能值得一提的是,这个应用程序,如果它需要持久化任何信息(我假设会是这样的),不管它是什么,肯定不会很复杂。在所有的可能性,它将类似于一个基本的产品数据库。
发布于 2009-12-16 16:58:41
我会去:
如果您要使用不同的IDE,那么Maven可能是个好主意,因为它允许从pom.xml配置每个IDE(在IntelliJ/NetBeans中非常有用)。但我能给你最好的建议就是这个。
快乐黑客
发布于 2009-12-16 15:11:05
当你说“技术堆栈”是指服务器,库,构建工具的时候,你到底在问什么还不清楚?总之,以下是一些轻率的建议:
发布于 2009-12-16 15:07:12
测试环境应该准确地复制生产。此外,在测试Environment.If硬件上进行性能测试也是一个问题,集群中的服务器数量需要受到限制,然后在测试上创建较少的服务器,但要复制与在prod上相同的env,例如iplanet (apache) + weblogic + oracle等等。
就本地环境而言,您可以使用Tomcat (因为您只需要web容器),对于ejb客户端,您可以捆绑jar并进行远程调用(如果您正在对某个远程应用程序进行远程调用).If,您将通过本地ejbs进行本地调用,然后您将不得不在本地框上使用weblogic进行开发。
尝试使用相同的IDE (尽管这主要是开发人员的选择问题),就操作系统而言,.As并不重要,因为如果您使用的是兼容的IDE,那么您将只从它构建代码。
还要确保IDE与tomcat (如果您使用它)或weblogic紧密耦合,以便在调试模式下运行代码。
一件非常重要的事情是,首先决定一个代码结构,然后在版本控制中签入它,这样用户在同一个structure.So中签入/签出相同的结构就可以在所有开发人员之间共享相同的结构。在每个版本中分支cvs或版本控制中的代码,然后从head.Also签出非常重要,使用单个构建文件并维护安装文档,在本地框上构建环境。另外,关于要使用的框架,选择您最熟悉的编码和maintenance.That方式,您将减少现在使用Spring/Hibernate组合的code.Mostly中的but数量,但这取决于它是否适合您的项目。希望这能有所帮助。
https://stackoverflow.com/questions/1915156
复制相似问题