摘要: 前言 当应用配置文件发生变化时,无需重启tomcat,可以使tomcat重新加载应用。 场景 假设存在一个J2EE应用A,对应war文件名称为A.war,部署在tomcat的webapps目录下,即:CATALINA_HOME/webapps/A.war。 tomcat启动之后会将A.war解压,并 阅读全文
posted @ 2017-09-26 19:05 nuccch 阅读(2020) 评论(0) 推荐(0) 编辑
摘要: 在谈到tomcat优化时,必然要说到apr库,这个库是C语言实现的,tomcat通过JNI方式使用该库可以大大提高性能。 tomcat在使用apr时需要安装apr,apr util和tomcat native。 1. 下载 apr和apr util需要单独下载:http://apr.apache.o 阅读全文
posted @ 2017-09-26 19:01 nuccch 阅读(1726) 评论(0) 推荐(0) 编辑
摘要: 起因 线上项目突然遭到大量的非法参数攻击,由于历史问题,之前的代码从未对请求参数进行校验。 导致大量请求落到了数据访问层,给应用服务器和数据库都带来了很大压力。 针对这个问题,只能对请求真正到Controller方法调用之前直接将非法参数请求拒绝掉,所以在Filter中对参数进行统一校验,非法参数直 阅读全文
posted @ 2017-09-08 20:06 nuccch 阅读(507) 评论(0) 推荐(0) 编辑
摘要: 起因 线上项目突然遭到大量的非法参数攻击,由于历史问题,之前的代码从未对请求参数进行校验。 导致大量请求落到了数据访问层,给应用服务器和数据库都带来了很大压力。 针对这个问题,只能对请求真正到Controller方法调用之前直接将非法参数请求拒绝掉,所以在Filter中对参数进行统一校验,非法参数直 阅读全文
posted @ 2017-09-08 20:06 nuccch 阅读(6605) 评论(0) 推荐(0) 编辑
摘要: WebSocket是在HTML5中引入的浏览器与服务端的通信协议,可以类比HTTP。 可以在支持HTML5的浏览器版本中使用WebSocket进行数据通信,常见的案例是使用WebSocket进行实时数据刷新。 关于WebSocket详细的功能性描述,详见:https://zh.wikipedia.o 阅读全文
posted @ 2017-09-08 20:04 nuccch 阅读(10034) 评论(0) 推荐(0) 编辑
摘要: 一.什么是CORS CORS是解决浏览器跨域限制的W3C标准,详见:https://www.w3.org/TR/cors/。 根据CORS标准的定义,在浏览器中访问跨域资源时,需要做如下实现: 服务端在响应消息头中包含消息头:Access-Control-Allow-Origin,值为服务端允许访问 阅读全文
posted @ 2017-09-02 20:52 nuccch 阅读(4909) 评论(0) 推荐(0) 编辑
摘要: 一.什么是JSONP JSONP即:JSON with Padding,是一种解决因浏览器跨域限制不允许访问跨域资源的方法。 JSONP是一个非官方的协议,它允许在服务器端返回javascript标签到浏览器,在浏览器端通过调用javascript函数的形式实现访问跨域资源或数据。 二.JSONP和 阅读全文
posted @ 2017-09-02 20:24 nuccch 阅读(545) 评论(0) 推荐(0) 编辑
摘要: 一.什么是跨域? 广义的跨域: (1) 资源跳转:A链接、重定向、表单提交 (2) 资源嵌入:<link>、<script>、<img>、<frame>等dom标签,还有样式中background:url()、@font-face()等文件外链 (3) 脚本请求:js发起的ajax请求、dom和js 阅读全文
posted @ 2017-09-02 14:48 nuccch 阅读(4539) 评论(0) 推荐(1) 编辑
摘要: 关于tomcat cluster的实现原理,详见:https://tomcat.apache.org/tomcat 7.0 doc/cluster howto.html How_it_Works。 在这里只是对在实际实际配置中遇到的问题做一个总结。 配置说明 通常,tomcat cluster配置都 阅读全文
posted @ 2017-08-29 14:43 nuccch 阅读(1232) 评论(0) 推荐(0) 编辑
摘要: ## 变量声明 在Go中使用关键字`var`声明变量,格式为`var 变量名 变量类型`,如下示例: ```golang var v1 int // 整型 var v2 string // 字符串 var v3 [10]int // 数组b var v4 []int // 数组切片 var v5 s 阅读全文
posted @ 2017-08-09 23:46 nuccch 阅读(221) 评论(0) 推荐(0) 编辑
摘要: 可能是不小心修改了xshell的某个配置,导致打开的会话中显示字间距和行间距都非常大,严重影响工作。参照官方手册也不能修改正常,详见:http://www.xshellcn.com/wenti/xiugai-ziti.html。于是就想到应该找到配置文件进行修改配置参数,果然,修改之后重启就生效啦。 阅读全文
posted @ 2017-08-04 18:42 nuccch 阅读(1200) 评论(0) 推荐(1) 编辑
摘要: 1. 下载https://golang.org/dl/ # Go语言官网地址,在国内下载太慢,甚至都无法访问。通过如下地址下载: https://golangtc.com/download 如果这个地址无法下载,可以换个地址:https://golang.google.cn/dl/ 2. 安装在wi 阅读全文
posted @ 2017-08-03 23:46 nuccch 阅读(493) 评论(0) 推荐(0) 编辑
摘要: windows平台在tomcat中启动cas报错: 解决办法:将jansi.dll文件放到C:\Windows\System32目录下即可。 注意:jansi.dll文件在使用gradle编译打包cas时会下载到C:\Users\${用户名}\.gradle\native\jansi\1.14\wi 阅读全文
posted @ 2017-08-02 22:51 nuccch 阅读(606) 评论(0) 推荐(0) 编辑
摘要: https://redis.io/topics/replication1. redis主从架构概述(1)一个master可以配置多个slave(2)slave与master之间使用异步复制进行数据同步。(3)redis主从数据同步是非阻塞的。 2. 配置主从master配置: slave配置: 阅读全文
posted @ 2017-08-02 21:38 nuccch 阅读(289) 评论(0) 推荐(0) 编辑
摘要: 1. 下载到redis下载页面https://redis.io/download下载对应版本的reids安装包,如:redis-${version}.tar.gz 。2. 安装redis的详细安装步骤在安装包中的README.md文件中有详细说明,请详细阅读。以安装redis-4.0.1.tar.g 阅读全文
posted @ 2017-07-30 22:21 nuccch 阅读(554) 评论(0) 推荐(0) 编辑
摘要: 1. 在密钥库文件 keystore.jks 中生成证书: 2. 将生成的证书导出到文件 server.cer(或 client.cer,如果您愿意): 3. 创建信任库文件cacerts.jks并将证书添加到信任库中 在windows下,双击生成的证书文件:server.cer,将证书添加到“受信 阅读全文
posted @ 2017-07-27 20:33 nuccch 阅读(764) 评论(0) 推荐(0) 编辑
摘要: 理论上讲,不存在牢不可破的漏洞,只是时间和成本问题。通常我们认为的不可破解,说的是破解需要难以接受的时间和成本。对于java程序来说,class文件很容易被反编译,所以理论上而言,对java程序做license限制,无法真正起到保护软件被盗窃的作用。但是,如果增加被反编译的成本,或者增加被反编译后能 阅读全文
posted @ 2017-07-27 20:23 nuccch 阅读(5533) 评论(0) 推荐(1) 编辑
摘要: JAVA编程中涉及的编码1.J2EE中涉及的编码(1) HttpServletResponse响应内容编码: (2)JSP文件编码: 2.JVM参数 3.Maven项目编码 在实际项目中遇到过如下问题:maven项目,java文件已经为utf-8编码,但是编译之后运行,输出中文时总是乱码,修改mav 阅读全文
posted @ 2017-07-26 20:43 nuccch 阅读(178) 评论(0) 推荐(0) 编辑
摘要: 业务场景:1. 后端服务为java web应用,使用tomcat容器,多实例集群化部署。2. 前端使用nginx作为后端应用的反向代理。业务需求:现在需要在java web应用端上传文件,同时还要能支持文件下载。设计方案:1. 文件应该专门使用文件服务器进行存储,在数据库中存储文件下载链接即可。2. 阅读全文
posted @ 2017-07-19 17:58 nuccch 阅读(3167) 评论(0) 推荐(0) 编辑
摘要: 在tomcat下,context元素有一个crossContext属性,如果配置为true,则可以实现在同一个tomcat下的多个web应用之间实现ServletContext对象访问。该属性主要用于跨应用访问数据。在实际项目中遇到一个奇葩需求:在同一个页面框架下嵌套了2套应用!!!app1和app 阅读全文
posted @ 2017-07-12 16:23 nuccch 阅读(10070) 评论(0) 推荐(0) 编辑