当前位置: 首页 > news >正文

石家庄网站优化公司免费的行情软件网站下载

石家庄网站优化公司,免费的行情软件网站下载,工程公司起名大全免费,科讯cms 3g 网站设置tomcat不停机部署亲爱的大家#xff0c; 如果您认为Tomcat不能再进步#xff0c;那您就错了。 Tomcat 7引入了所谓的并行部署 。 这是由SpringSource / VMWare贡献的。 简而言之#xff0c;并行部署是指能够并行部署一个以上版本的Web应用程序#xff0c;从而使所有版本都… tomcat不停机部署 亲爱的大家 如果您认为Tomcat不能再进步那您就错了。 Tomcat 7引入了所谓的并行部署 。 这是由SpringSource / VMWare贡献的。 简而言之并行部署是指能够并行部署一个以上版本的Web应用程序从而使所有版本都可以在完全相同的URL下使用。 考虑一下。 如果您有新版本的应用程序则可以将其放到运行旧版本的Tomcat中 它将运行。 实际上它们都将起作用。 Tomcat处理应用程序版本之间的所有会话管理和流量路由。 无需重新启动Tomcat 。 无需停止处理请求。 无需与您的老板谈论停机时间。 您的老板无需与任何客户谈论停机时间。 让我们看看实际情况对吧 使用下面的命令您可以启动一个最小的Web应用程序来演示此功能。 $ mkdir WEB-INF $ echo WEB-INF/web.xml $ echo old version index.jsp $ jar cf foo##001.war WEB-INF index.jsp $ echo NEW version index.jsp $ jar cf foo##002.war WEB-INF index.jsp 现在您有两个名为foo ## 001.war和foo ## 002.war的 Web应用程序。 ## 001和## 002指定WAR文件的版本号。 每个都有自己的索引页面该页面显示当前时间以及它是旧的还是新的Web应用程序。 创建此功能的人员选择了一个非常简单的解决方案用于告诉Tomcat什么是替代版本。 您要做的就是在WAR的文件名上加上## version 。 简单有效如果看起来有些古怪。 现在部署Web应用程序的“旧”版本。 $ cp foo##001.war apache-tomcat-7.0.12/webapps/ 打开浏览器输入WAR文件的URL例如http// localhost8080 / foo 并注意时间。 请注意您在URL上看不到版本号。 页面每秒自动刷新。 在表面之下 Tomcat将与您的浏览器建立会话。 以后再说。 现在部署Web应用程序的“新”版本。 $ cp foo##002.war apache-tomcat-7.0.12/webapps/ 请注意在已经打开的浏览器窗口中时间仍在滴答作响并且仍显示旧版本。 打开第二个浏览器在该浏览器中也打开http// localhost8080 / foo 。 为了获得最佳结果请使用完全不同的浏览器以避免任何会话异常。 我使用Safari和Opera进行了测试。 您应该看到第二个浏览器选择了新的Web应用程序而旧的Web应用程序仍在为第一个浏览器提供服务。 很整洁吧 好的您是否破坏了部署并想回滚 很简单只需删除新版本 Tomcat就会自动退回到使用旧版本。 辛苦了 现在就试试 $ rm apache-tomcat-7.0.12/webapps/foo##002.war 您会注意到网页会自动切换为使用旧版本的应用程序。 您将必须制定自己的部署策略。 您可能选择让旧版本耗尽。 在旧应用程序上的所有会话都到期后您可以从Tomcat中删除旧部署。 另一方面您可以只保留旧代码。 它不会造成任何伤害。 当您想开始在Tomcat服务器上使用版本化的WAR文件时需要考虑一些事项。 因此在您离开并更改公司的部署策略之前请检查以下列表。 内部缓存应该是直写的并且很快过期 您需要启用会话 日志去哪儿了 磁盘文件和目录需要共享 没有TCP套接字监听器 您的应用必须能够取消部署 我将按顺序解释每个。 大多数是主题的变体 考虑一下您的代码对机器资源所做的假设。 内部缓存应该是直写的并且很快过期 同一Web应用程序的不同版本各自具有自己的类上下文。 这意味着您需要检查Web应用程序中具有的所有本地缓存​​。 如果您主动缓存并长时间保留缓存的信息则该Web应用程序的一个版本可能看不到另一个版本所做的更改。 设想一个情况其中两个版本的Web应用程序都使用相同的数据库并且都具有本地缓存​​以避免访问该数据库。 如果该Web应用程序的一个版本更改了数据库中的记录则其他版本将看不到该更改直到该信息自己的缓存版本过期为止。 如果您在Web应用程序中执行任何内存中缓存请在确定缓存不会提供不可接受的过时信息之前不要使用并行部署。 您需要启用会话 Tomcat使用自己的会话管理来确定应由哪个版本的Web应用程序处理哪些请求。 如果您打算自己实施会话处理或者在Tomcat中关闭会话处理则并行部署将对您不起作用。 日志去哪儿了 您可能指定将日志记录写入某个地方的日志文件。 如果未在日志文件名中使用应用程序的完整上下文名称则可能会遇到两种情况Web应用程序的两个版本都写入同一日志文件。 这样做的问题是您可能不知道应用程序的哪个版本生成了在该文件中找到的输出。 磁盘文件和目录需要共享 Java EE设计人员的意图始终是使Web应用程序独立于底层机器和文件系统。 如果您的应用程序使用数据文件请花点时间考虑一下当您的Web应用程序的两个版本开始读写它们时会发生什么。 特别是请考虑将Java的监视器和锁限制在单个上下文中。 因此如果您使用某种类型的锁来保护对文件的访问则拥有该Web应用程序的两个版本意味着您在JVM中具有两个锁从而可能允许两个线程对其进行访问。 没有TCP套接字监听器 一些应用程序不仅仅服务于HTTP请求。 他们有自己的TCP套接字处理程序为客户端提供服务。 通过部署一个以上版本的Web应用程序您可以获得多个侦听器。 显然这是行不通的。 只有一个侦听器可以在任何给定端口上侦听。 您的应用必须能够取消部署 如果您希望能够回退已损坏的发行版或者希望清理Web应用程序的旧的未使用的版本则需要彻底取消部署Web应用程序。 幸运的是 Tomcat也可以帮助您。 我希望这些警告不会使您停止使用Tomcat中的零停机时间部署。 您可能需要解决一些问题才能使其正常运行。 但是让我们面对现实吧通过使您的应用程序对资源的假设更少无论如何您将获得一个更强大的应用程序。 PS。 我喜欢将SVN修订号用作WAR版本命名方案。 因此我的WAR文件名为foo ## svn版本””。war 。 唯一要注意的是将版本作为字符串进行比较以确定版本顺序。 因此您可能必须对版本号进行零填充以确保正确订购。 参考 Tomcat中的零停机部署和回滚 JCG合作伙伴 Kees Jan在Java Monitor论坛上 的演练和清单 快乐编码 拜伦 相关文章 每个程序员都应该知道的事情 正确记录应用程序的10个技巧 软件设计法则 Java最佳实践系列 生存在荒野西部开发过程中的9条提示 翻译自: https://www.javacodegeeks.com/2011/06/zero-downtime-deployment-and-rollback.htmltomcat不停机部署
http://www.sadfv.cn/news/41754/

相关文章:

  • 网站设计优化龙岩市官网
  • 如何做网站seo排名优化全国物流平台货找车
  • 撤销网站备案表填写后设计公司室内设计
  • wordpress建站教程交友福田住房和建设局网站官网
  • 建设事业单位网站多少钱百度总部
  • 如何建立一个网站共享网站被黑能查到是谁做的吗
  • 做物流网站多少钱天津做网站的公
  • 免费网站开发软件8090在线观看免费观看
  • 做网站没有做退钱济南迅翔网站建设
  • 高质量的常州网站建设北京建设注册中心网站
  • 忻府网站建设排名点击图片跳转到网站怎么做链接
  • 购物网站建设开题报告中国航发网上商城官网
  • 新建门户网站的建设自查做兼职网站
  • 免费的查企业的网站在线域名注册
  • 建设企业网站成本多少钱网站建设布局
  • 游戏资讯网站怎么做安徽徐州网站建设公司
  • 在线网站优化中国风网站配色方案
  • 江苏盐城有做淘宝网站的吗discuz wordpress主题
  • 网站建设项目分析报告做床上用品网站
  • 保定建站服务网站想做个链接怎么做的
  • 网站建网站建设企业电话wordpress dome.php
  • 万网怎么创建网站吗外国做家具的网站
  • 盐城网站建设制作方案锡林郭勒盟建设厅官方网站
  • 网站建设投标书怎么制作北京网站备案负责人变更
  • 深圳安嘉建设有限公司网站做网站收获了什么
  • 中国网站建设市场规模开发工具包
  • 网站搜索引擎优化报告唐山微网站建设价格
  • 江西宜春市建设局网站开发平台英文
  • 一个logo设计要多少钱搜索引擎快速优化排名
  • 网站改版的方式查询网站建设时间