一、数据源迁移:

①数据源配置在web容器还是在项目本身?

根据开发与生产分离原则选择配置到web容器,以免开发泄露数据库密码。



②数据库密码加密

原先was的数据源直接在console控制,密码是密文,较安全。改为tomcat正常的话是以明文配置,需改为密文。方案有两个:一是继承连接池工厂类BasicDataSourceFactory并重写一些方法;二是直接修改BasicDataSourceFactory源码。选择第一种方式。

新增一个jar包datasource.jar,与uppapi.jar一起部署到%tomcat%/lib下。





二、程序迁移

①为保持项目目录结构不改变,直接把JavaSource指为源码目录替代src,web根目录使用WebContent替代WebRoot。

②删除引入的ibm相关jar包的类。

③编译器时jdk版本要与原来版本一致。

④使用到jmx的基本全部要重新开发,因为tomcat基于jmx的扩展与was完全不同。

⑤使用了ibm的jsse用于ssl/tls安全通信的应改为sun的jsse。

⑥使用了ibm的jce的某些加密算法的比较麻烦,例如des,因为sun与ibm中key生产不同导致最后解密失败,做接口系统的应该尽可能不让销售系统改动密钥及jar包升级,不然会被他们叼死,所以要做的是把sun的jce的provider改用ibm的provider;

(1)关键的两行程序:

java.security.Security.addProvider(new com.ibm.crypto.provider.IBMJCE());

KeyGenerator kg = KeyGenerator.getInstance("DES","IBMJCE");

(2)java.security文件:security.provider.1=com.ibm.crypto.provider.IBMJCE

(3)%java%\lib\ext导入ibmjceprovider.jar、ibmpkcs.jar包

(4)security出口限制:%java%\lib\security替换local_policy.jar、US_export_policy.jar

⑦修改的配置文件及目录,并且要让配置人员同步程序库。

⑧根据tomcat加载class优先级可通过在WEB-INF/classes新建类替代原先jar包的类,以保持不改动jar包,类加载器优先加载web-inf/classes下的类。





三、参数设置

根据was生产数据配置tomcat参数。包括https配置。





四、Apache

ihs换为Apache,tomcat集群采用mod_jk模式,session共享。





五、一些性能参数收集

对一些数据采样,方便后期性能优化,TPS、吞吐量、并发量、事务响应时间、请求响应时间、cpu、磁盘、Avg Rps、成功请求、失败请求、数据库连接数、数据库响应时间、请求排队队列、线程池数据、持久连接、JVM各种参数、流量统计、apache吞吐率、并发连接数。

喜欢研究java的同学可以交个朋友,下面是本人的微信号:

web中间件切换(was切tomcat)的更多相关文章

  1. 常见web中间件漏洞(四)Tomcat漏洞

    这部分好久没写了,继续更新web中间件漏洞思路整理(不复现) ,争取...整理完 前几篇指路链接: nginx: https://www.cnblogs.com/lcxblogs/p/13596239 ...

  2. 监控分析——Web中间件

    发现 中间件监控看是否有性能瓶颈 核心:主要看中间件的线性池进程池有没有排队情况,请求是否处理及时就OK Apache 以前php都是用apache,现在基本用nginx了. 首先自己启动apache ...

  3. JSP之WEB服务器:Apache与Tomcat的区别 ,几种常见的web/应用服务器

    注意:此为2009年的blog,注意时效性(针对常见服务器)     APACHE是一个web服务器环境程序 启用他可以作为web服务器使用 不过只支持静态网页 如(asp,php,cgi,jsp)等 ...

  4. web中间件

    0x00 Web中间件概述 通俗来说,中间件是提供系统软件和应用软件之间连接的软件,以便于软件各部件之间的沟通.Apache的Tomcat.IBM公司的WebSphere.BEA公司的WebLogic ...

  5. web服务器、Web中间件和Web容器的区别

    web服务器>web中间件>web容器 Tomcat(servlet容器)  是  Tomcat中间件  也是  Tomcat服务器 看了谢公子的csdn文章,让我彻底分清了这三者的区别. ...

  6. web中间件之nginx

    web中间件之nginx https://www.jianshu.com/p/d8bd75c0fb1b   对nginx正向代理和反向代理理解特别好的一篇文章. 一.nginx nginx缺点,负载均 ...

  7. Web中间件 - 常见漏洞总结

    *文章来源:https://blog.egsec.cn/archives/472 *本文将主要说明:Web中间件常见漏洞的产生原因以及修复方案 什么是Web中间件? 百度百科是这样解释的:中间件是介于 ...

  8. Java Web中间件

    目录 中间件 常见的web中间件有哪些 Tomcat Weblogic Jboss Jetty Webshere Glasshfish 中间件 我们经常会看到中间件,但是,一直好奇的是,中间件到底是什 ...

  9. 如何设置eclipse开发的web工程自动发布到tomcat的webapps下?

    使用eclipse开发web工程,在配置好服务器(tomcat)之后运行该web工程,发现能正常运行.但是问题在于,当你打开tomcat路径\webapps时,会发现没有该web应用(你的web工程名 ...

随机推荐

  1. 【vijos1943】上学路上

    题目戳这里 描述 小雪与小可可吵架了,他们决定以后互相再也不理对方了.尤其是,他们希望以后上学的路上不会再相遇. 我们将他们所在城市的道路网视作无限大的正交网格图,每一个整数点 (x,y) 对应了一个 ...

  2. SSD:TensorFlow中的单次多重检测器

    SSD:TensorFlow中的单次多重检测器 SSD Notebook 包含 SSD TensorFlow 的最小示例. 很快,就检测出了两个主要步骤:在图像上运行SSD网络,并使用通用算法(top ...

  3. 【TensorFlow 官网 可以直接访问】让中国开发者更容易地使用TensorFlow打造人工智能应用

    人工智能的神奇之处,在于它能被应用在医疗保健.交通运输和环境保护等方方面面,为复杂的社会问题探寻解决方案.如今,在人工智能的协助下,人们得以探索全新的研究领域,开发创新的产品,让数以百万计的用户从中获 ...

  4. 触发事件trigger

    触发事件,在本例中,文档加载好之后,就触发dblclick双击事件,而不是通过去手动双击. <script src="http://how2j.cn/study/jquery.min. ...

  5. 移动端web开发中对点透的处理,以及理解fastclick如何做到去除300ms延迟

     一.点透问题以及处理办法 开发中遇到一个问题,就是点击layer弹出框的取消按钮之后,按钮下方的click事件就直接触发了.直接看代码: $('.swiper-slide').on('click', ...

  6. C++笔记--1

    一.namespace 命名空间 //定义一个命名空间 namespace spaceA { ; } int main(void) { //调用方式一 using namespace spaceA; ...

  7. js密码64加密

    可以在客户端对密码进行简单的64位加密,服务端对应使用64位解密即可. /** * * Base64 encode / decode * * @author * @date * @email */ f ...

  8. win10安装配置vs community 2015+opencv3.1.0

    下载并安装Visual Studio Community 2015.具体安装步骤自行解决.下载地址: https://www.visualstudio.com/ 下载opencv3.1.0,并解压.地 ...

  9. 【图文详解】Hadoop集群搭建(CentOs6.3)

    本文主要详细地描述了hadoop集群的搭建以及一些配置文件的说明,用于自己复习以及供新人学习,若有错误之处还请指出. 前期准备 先给出我的集群架构: 到hadoop官网下载好hadoop安装包http ...

  10. (二)ROS系统架构及概念 ROS Architecture and Concepts 以Kinetic为主更新 附课件PPT

    第2章 ROS系统架构及概念 ROS Architecture and Concepts PPT说明: 正文用白色,命令或代码用黄色,右下角为对应中文译著页码. 这一章需要掌握ROS文件系统,运行图级 ...