Tomcat

基于 Jenkins 快速搭建持续集成环境

梦想与她 提交于 2020-08-08 10:08:36
基于 Jenkins 快速搭建持续集成环境 jenkins + maven + svn + tomcat 自动部署 Jenkins,之前叫做Hudson,是基于Java开发的一种 持续集成 工具,用于监控持续重复的工作,功能包括: 1、持续的软件版本发布/测试项目。 2、监控外部调用执行的工作。 1.环境准备 (1)JDk1.7 #用于提供java 程序的基本类库和运行环境 (2)Apache Maven 3.3.3 #用于提供Java web 项目依赖包的管理。 (3)SVN客户端(Subversion 1.6.11) #程序版本控制 (4)Tomcat1.7(apache-tomcat-7.0.75) #WEB容器 2.下载并安装配置程序 JDK的安装: 下载地址: http://download.oracle.com/otn/java/jdk/7u79-b15/jdk-7u79-linux-x64.tar.gz 检查本机是否预装jdk # java -version #检查版本 # rpm -qa | grep java #查看安装的jdk包 # rpm -e java-VERSION-openjdk -–nodeps #卸载jdk # rpm -e java-VERSION-openjdk -–nodeps # tar zxvf jdk-7u79-linux-x64 #

Nginx反向代理报504超时错误

生来就可爱ヽ(ⅴ<●) 提交于 2020-08-08 09:15:46
nginx+tomcat 后端为tomcat,nginx代理报504超时错误。 问题描述: #错误 1.198.17.123 - - [06/Jul/2018:01:48:57 +0000] "POST /mapbj3/getticket HTTP/1.1" 504 537 "https://XXXXXXXXXX.com/walkcode3/index.html?openId=oB6UW0cF3Z_dnYXnz4tG4OFt7Rt0" "Mozilla/5.0 (Linux; Android 8.1; PACM00 Build/O11019; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/53.0.2785.143 Crosswalk/24.53.595.0 XWEB/155 MMWEBSDK/19 Mobile Safari/537.36 MicroMessenger/6.6.6.1300(0x26060638) NetType/WIFI Language/zh_CN MicroMessenger/6.6.6.1300(0x26060638) NetType/WIFI Language/zh_CN miniProgram" "-" 2018/07/06 01:48:57 [error] 6#6:

网络请求专题博客导航(不断更新直至完成)

筅森魡賤 提交于 2020-08-08 08:03:23
1.网络协议 1.DNS 2.TCP/IP 2. SpringCloud 2.1 Eureka server client 2.2 SpringGateway 3.Redis 4.MySQL 4.1 select执行过程 1. select语句执行过程-网络通信 2 select语句执行过程-缓存& 语法解析/预处理 3. select语句执行过程-优化器 4.2 insert/update 执行过程 5.Tomcat 5.1 Connector ProtocolHandler EndPoint Adapter 5.2 Container Pipeline valve 6. Java-NIO 6.1 Channel 6.2 Selector 6.3 buffer 7.Java-并发 7.1 线程 7.2 锁 8. SpringMVC 2. DispatcherServlet是个什么 2.1 Dispatcher请求过程2-doDispatch 2.2 Dispatcher请求过程-获取HandlerAdapter 2.3 Dispatcher请求过程-执行Adapter 3. DispatcherServlet 初始化 3.1 DispatcherServlet 初始化-initHandlerMappings/initHandlerAdapters ps:更新顺序不按以上顺序更新

Kubernetes liveness - Reserve threads/memory for a specific endpoint with Spring Boot

那年仲夏 提交于 2020-08-08 06:08:53
问题 Do you know (if it is possible) how to reserve threads/memory for a specific endpoint in a spring boot microservice? I've one microservice that accepts HTTP Requests via Spring MVC , and those requests trigger http calls to 3rd system , which sometimes is partially degraded, and it responds very slow. I can't reduce the timeout time because there are some calls that are very slow by nature. I've the spring-boot-actuator /health endpoint enabled and I use it like a container livenessProbe in a

博客目录导航,让我们一起学起来吧

眉间皱痕 提交于 2020-08-08 06:03:22
DAO层框架 总览 Mybatis中多表关联时,怎么利用association优雅写resultMap来映射vo 懒要懒到底,能自动的就不要手动,Hibernate正向工程完成Oracle数据库到MySql数据库转换(含字段转换、注释) Hibernate 查询sql结果行数、查询列表的几种方法 jpa中时间戳格式应该用哪种类型 mybatis generator如何定制JavaTypeResolver,使smallint类型的数据库字段在po中的类型为Integer? tk mybatis通用mapper,复杂and or条件查询 Mybatis自动生成Xml文件,针对字段类型为text等会默认产生XXXXWithBlobs的方法问题 mybatis的generator中xml配置问题 mysql批量插入语句执行失败的话,是部分失败还是全部失败 mybatis配置多数据源(利用spring的AbstractRoutingDataSource) mybatis批量插入 Java基础 总览 threadlocal 内存泄露之我见 曹工谈并发:Synchronized升级为重量级锁后,靠什么 API 来阻塞自己 曹工杂谈:我们的应用,启动就要去其他服务拉数据,那其他服务挂了,我们就起不来了? 就因为加了Lombok的@Accessors(chain = true)

Dockerfile制作的分层构建概念

我的梦境 提交于 2020-08-07 21:02:30
公司中的所有镜像都是要上传到harbor仓库上,一层一层的打镜像,在打的同时将镜像上传到harbor上 #第一层原始系统层(ubantu/debain/centos): 这个目录结构一定要提前设计好,我先将官方的原始系统镜像pull下来,在这层的基础之上我们会加一些常用命令 #第二层常用命令层: 否则后期还要在镜像中安装命令太过于麻烦,我们将这个安装常用命令的镜像称为公司的基础镜像叫做baseimgae,后期我们在打镜像的时候就不再调用官方的了,而是直接调用baseimgae。我们会在baseimgae这个镜像中不仅要安装命令,而且还要将我们的常用用户创建好,这个镜像创建好了之后再往下就会分叉了, #第三层业务层(nginx、PHP、JDK、tomcat、mysql等业务): 因为公司有很多业务,这一层就包括了各种服务镜像如jdk(java环境使用的镜像)、安装PHP的镜像、安装NGINX的镜像等等服务。然后这一层再提交为一层业务镜像,并在JDK的镜像层往下再打一层tomcat的业务层,在tomcet这层之后再打一层代码层。用来存放代码的APP1、APP2这一层只是编译安装了各个服务而已他们上面是没有任何代码和web页面数据的。 第四层代码层(静态服务前端代码和tomcat的jsp代码等): 然后再将这一层打出来的镜像就可以往公司的 Harbor 仓库进行上传了。 #宿主机:

十万级并发:阿里资深架构师常用的四种性能优化方式!

痞子三分冷 提交于 2020-08-07 20:56:52
一个很重要的知识环节。可能有些人觉得没用,一些细小的地方有什么好修改的,改与不改对于系统的运行效率有什么影响呢?这个问题我是这么考虑的,就像大海里面的鲸鱼一样,它吃一条小虾米有用吗?没用,但是,吃的小虾米一多之后,鲸鱼就被喂饱了。 性能优化也是一样,如果项目着眼于尽快无BUG上线,那么此时可以抓大放小,代码的细节可以不精打细磨;但是如果有足够的时间开发、维护代码,这时候就必须考虑每个可以优化的细节了,一个一个细小的优化点累积起来,对于运行的效率绝对是有提升的。 Java性能问题一直困扰着广大程序员,由于平台复杂性,要定位问题,找出其根源确实很难。随着10多年Java平台的改进以及新出现的多核多处理器,Java软件的性能和扩展性已经今非昔比了。现代JVM持续演进,内建了更为成熟的优化技术、运行时技术和垃圾收集器。与此同时,底层的硬件平台和操作系统也在演化。本文会结合实际中接触到的一些面试题,重点了解一下Java架构性能优化中的一些相关知识。 JVM性能优化相关问题 Java 类加载过程? 描述一下 JVM 加载 Class 文件的原理机制? Java 内存分配。 Java 堆的结构是什么样子的?什么是堆中的永久代(Perm Gen space)? GC 是什么? 为什么要有 GC? 简述 Java 垃圾回收机制。 如何判断一个对象是否存活?(或者 GC 对象的判定方法)

Nginx 负载均衡策略

旧城冷巷雨未停 提交于 2020-08-07 13:07:19
Nginx 服务器的 upstream 模块支持6种负载均衡策略的实现方式,其中除了轮询和轮询权重外,都是Nginx根据不同的算法实现的。在实际运用中,需要根据不同的场景选择性运用,大都是多种策略结合使用以达到实际需求。 负载均衡策略 参数 策略名称 介绍 应用场景 示例 轮询 默认方式 缺省配置就是轮询策略。 每个请求会按时间顺序逐一分配到不同的后端服务器。 在轮询中,如果服务器down掉了,会自动剔除该服务器。 适合服务器配置相当,无状态且短平快的服务使用 weight 权重方式 在轮询策略的基础上指定轮询的几率。 权重越高分配到需要处理的请求越多。 此策略可以与least_conn和ip_hash结合使用。 比较适合服务器的硬件配置差别比较大的情况。 #动态服务器组 upstream dynamic_zuoyu { server localhost:8080 weight=2; server localhost:8081; server localhost:8082 backup; server localhost:8083 max_fails=3 fail_timeout=20s; } ip_hash 依据ip分配方式 least_conn 最少连接方式 fair 响应时间方式 第三方 url_hash 依据URL分配方式 第三方 轮询 upstream 模块有如下参数:

【tomcat】04 Servlet规范

不羁岁月 提交于 2020-08-07 12:04:21
一、介绍 百度百科 二、Servlet 接口 1、Servlet规范的核心接口即是Servlet接口,它是所有Servlet类必须实现的接口。 2、Java Servelt API中已经提供了两个抽象类方便开发者实现Servlet类,分别是GenericServlet和HttpServlet。 GenericServlet定义了一个通用的、协议无关的Servlet HttpServlet则定义了HTTP的Servlet 两个抽象类可以使Servlet类复用很多共性功能 3、service方法:是处理客户端请求的方法,客户端发起的请求会被路由到对应的Servlet对象上。前面说到的 HttpServlet类的service方法把对HTTP协议的GET、POST、PUT、DELETE、HEAD、OPTIONS、TRACE等请求转发到各自的处理方法中,即doGet、doPost、doPut、doDelete、doHead、doOptions、doTrace等方法。HttpServlet提供了这些共性的处理逻辑,其他继承它的类就不用再各自实现,只需要在对应的方法中做具体的处理逻辑即可。 例如我们做Web开发时常常会自己定义一个Servlet,并在doGet和doPost方法中做业务逻辑处理。 4、在Servlet容器中,每个Servlet类只能对应一个Servlet对象