当我们在服务器部署Java程序,特别是使用了 Spring Boot 生成单一 Jar 文件部署的时候,单一文件为我们开发单来的极大的便利性,保障程序的完整性.但同时对我们修改程序中的任何一处都带来重启服务的麻烦.如何解决这个问题呢? 测试用代码 github 下载 1 问题分析 为了能够解决这个问题,我们来分析下,为什么要重启服务,因为 Jar 中的内容发生了改变,大部分应用程式都加载了内存中,需要重新启动服务才能使用新的内容生效.实际上就是修改前访问的老版本的,修改后访问了新版本.我们使用…
[本文章是否对你有用以及是否有好的建议,请留言] spring-boot-actuator模块提供了一个监控和管理生产环境的模块,可以使用http.jmx.ssh.telnet等拉管理和监控应用.审计(Auditing). 健康(health).数据采集(metrics gathering)会自动加入到应用里面. 首先,写一个最基本的spring boot项目. 基于Maven的项目添加'starter'依赖: <dependency>     <groupId>org.sprin…
一.简介 提起Java不得不说的一个开发场景就是Web开发,也是Java最热门的开发场景之一,说到Web开发绕不开的一个技术就是JSP,因为目前市面上仍有很多的公司在使用JSP,所以本文就来介绍一下Spring Boot 怎么集成JSP开发,以及生产环境的详细部署方法. 二.集成JSP 开发环境 Spring Boot 2.0.4 RELEASE Tomcat 9.0.10 IDEA(Intellij IDEA简称,下文统一使用)2018.2 Windows 10 JSP集成步骤 创建JSP目录…
一,秒杀需要具备的功能: 秒杀通常是电商中用到的吸引流量的促销活动方式 搭建秒杀系统,需要具备以下几点: 1,限制每个用户购买的商品数量,(秒杀价格为吸引流量一般会订的很低,不能让一个用户全部抢购到手) 2,处理速度要快,避免在高并发的情况下发生堵塞 3,高并发情况下,不能出现库存超卖的情况 因为redis中对lua脚本执行的原子性,不会出现因高并发而导致数据查询的延迟 所以我们选择使用redis+lua来实现秒杀的功能 例子:如果同一个秒杀活动中有多件商品,而有人用软件刷接口的方式来下单, 这…
原本这个章节是要介绍<log4j多环境不同日志级别的控制的>但是没有这篇文章做基础的话,学习起来还是有点难度的,所以我们先一起了解下spring boot属性文件之多环境配置,当然文章中也会提到属性文件基本的一些知识,然后慢慢在升华到多环境配置. 相信很多人选择Spring Boot主要是考虑到它既能兼顾Spring的强大功能,还能实现快速开发的便捷.我们在Spring Boot使用过程中,最直观的感受就是没有了原来自己整合Spring应用时繁多的XML配置内容,替代它的是在pom.xml中引…
参考博客地址: 在线文档:http://blog.didispace.com/springbootswagger2/ 离线文档:http://www.jianshu.com/p/af7a6f29bf4f 用到的技术spring boot + maven + swagger2 + spring doc,swagger2生成整个文档,spring doc是测试一个个实例接口,首先是利用将swagger2在线文档的json数据得到 ,然后将json数据和spring doc得到的数据一起转化为asci…
转载地址: https://blog.csdn.net/gebitan505/article/details/58166055 VUE 利用 webpack 给生产环境和发布环境配置不同的接口地址 前言 我们在开发项目的时候,往往会在同一个局域网进行开发,前后端分离同时进行开发.我们前端调用后端给的接口也是在局域网内部的.但是,当项目推到线上的时候,我们会从真实服务器上获取接口,因此,我们可能在测试接口和真实接口之间频繁切换,让人十分恶心. 因此,我们有必要想办法解决这个问题. 本文是 Vue2…
1.1 一些重要概念 1.Web协议介绍 Web协议出现顺序: CGI -> FCGI -> WSGI -> uwsgi 1. CGI:  最早的协议 2. FCGI:  比CGI快 3. WSGI: Python专用的协议 4. uwsgi: 比FCGI和WSGI都快,是uWSGI项目自有的协议,主要特征是采用二进制来存储数据,             之前的协议都是使用字符串,所以在存储空间和解析速度上,都优于字符串型协议. 2.uWSGI 1. uWSGI是一个Web服务器,它实现…
目录 Django + Uwsgi + Nginx 的生产环境部署实战 安装Uwsgi 一.使用命令来启动django项目 二.使用配置文件来启动我们的Django项目 安装Nginx 配置Nginx 并发测试 Django + Uwsgi + Nginx 的生产环境部署实战 我们在本地环境开发好我们的Django项目,使用runserver很容易的就能在本地运行起来并访问,但是只能在本地局域网内访问,如果需要生产环境部署我们的web项目就需要多考虑一些问题: 网站的并发 静态文件的处理 网站的…
1.1 gunicorn介绍   1.Gunicorn 1. Gunicorn是使用Python实现的WSGI服务器, 直接提供了http服务, 并且在woker上提供了多种选择, gevent, eventlet这些都支持 2. 在多worker最大化里用CPU的同时, 还可以使用协程来提供并发支撑, 对于网络IO密集的服务比较有利. 说明: 1)同时Gunicorn也很容易就改造成一个TCP的服务, 比如doge重写worker类. 2)在针对长连接的服务时, 最好开启reuse_port,…