自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(23)
  • 收藏
  • 关注

转载 JAVA 线上故障排查

线上故障主要会包括 CPU、磁盘、内存以及网络问题,而大多数故障可能会包含不止一个层面的问题,所以进行排查时候尽量四个方面依次排查一遍。同时例如 jstack、jmap 等工具也是不囿于一个方面的问题的,基本上出问题就是 df、free、top 三连,然后依次 jstack、jmap 伺候,具体问题具体分析即可。CPU一般来讲我们首先会排查 CPU 方面的问题。CPU 异常往往还是比较好定位的。原因包括业务逻辑问题(死循环)、频繁 gc 以及上下文切换过多。而最常见的往往是业务逻辑(或者框架逻辑)导致的

2020-06-26 18:51:28 128

转载 Redis性能指标监控

1 Redis性能指标监控参考来源:https://blog.51cto.com/yht1990/2503819监控指标•性能指标:Performance•内存指标: Memory•基本活动指标:Basic activity•持久性指标: Persistence•错误指标:Error性能指标:Performance监控方式•redis-benchmark•redis-stat•redis-faina•redislive•redis-cli•monitor•showl

2020-06-26 18:13:32 342

转载 SpringBoot 实现并发登录人数控制

1 SpringBoot 实现并发登录人数控制通常系统都会限制同一个账号的登录人数,多人登录要么限制后者登录,要么踢出前者,Spring Security 提供了这样的功能,本文讲解一下在没有使用Security的时候如何手动实现这个功能本文借鉴了https://jinnianshilongnian.iteye.com/blog/2039760如果你是使用 Shiro + Session 的模式,可以阅读此文demo 技术选型SpringBootJWTFilterRedis + Redis

2020-06-26 18:05:30 263

转载 Spring Boot+JWT+Shiro+MyBatisPlus实现Restful快速开发后端脚手架

1 Spring Boot+JWT+Shiro+MyBatisPlus实现Restful快速开发后端脚手架一、背景前后端分离已经成为互联网项目开发标准,它会为以后的大型分布式架构打下基础。SpringBoot 使编码配置部署都变得简单,越来越多的互联网公司已经选择 SpringBoot 作为微服务的入门级微框架。Mybatis-Plus 是一个 Mybatis 的增强工具,有代码生成器,并且提供了类似 hibernate 的单表 CRUD 操作,又保留了 mybatis 的特性支持定制化 SQL。A

2020-06-26 18:01:13 131

转载 Dubbo必知必会的知识点

1 Dubbo必知必会的知识点1.什么是Dubbo?Dubbo是基于Java的高性能轻量级的RPC分布式服务框架,现已成为 Apache 基金会孵化项目。官网:http://dubbo.apache.org/en-us/2.为什么要使用Dubbo?背景:随着互联网的快速发展,Web应用程序的规模不断扩大,最后我们发现传统的垂直体系结构(整体式)已无法解决。分布式服务体系结构和流计算体系结构势在必行,迫切需要一个治理系统来确保体系结构的有序发展。开源免费一些核心业务被提取并作为独立的服务提供服

2020-06-26 17:55:45 190

转载 SpringBoot实现快速导出Excel

1 SpringBoot实现快速导出Excel工作中经常遇到导出Ecxel功能,这里就给出完整示例代码,可以直接使用。1.引入依赖<dependency> <groupId>org.apache.poi</groupId> <artifactId>poi-ooxml</artifactId> <version>3.17</version></dependency>ExcelSheetSetti

2020-06-26 17:44:07 1947

转载 在线一键生成网页版 Nginx 配置文件

1 在线一键生成网页版 Nginx 配置文件介绍NginxWebUI是一款方便实用的 nginx 网页配置工具,可以使用 WebUI 配置 Nginx 的各项功能,包括端口转发,反向代理,ssl 证书配置,负载均衡等,最终生成「nginx.conf」配置文件并覆盖目标配置文件,完成 nginx 的功能配置。今后配置nginx再也不用上网各种搜索, 只需要在该项目中进行增删改查就可方便的配置nginx!功能说明该项目是基于springBoot的web系统,数据库使用sqlite,因此服务器上不需要安

2020-06-26 17:40:43 910

转载 Spring Boot之程序性能监控

1 Spring Boot之程序性能监控Spring Boot特别适合团队构建各种可快速迭代的微服务,同时为了减少程序本身监控系统的开发量,Spring Boot提供了actuator模块,可以很方便的对你的Spring Boot程序做监控。actuator接口说明Spring Boot应用中加入监控很简单,只需要在pom.xml文件中加入以下依赖<dependency> <groupId>org.springframework.boot</groupId&gt

2020-06-26 17:36:41 295

转载 SpringBoot+Mybatis+ Druid+PageHelper 实现多数据源并分页

1 SpringBoot+Mybatis+ Druid+PageHelper 实现多数据源并分页前言本篇文章主要讲述的是SpringBoot整合Mybatis、Druid和PageHelper 并实现多数据源和分页。其中SpringBoot整合Mybatis这块,在之前的的一篇文章中已经讲述了,这里就不过多说明了。重点是讲述在多数据源下的如何配置使用Druid和PageHelper 。http://www.cnblogs.com/xuwujing/p/8260935.htmlDruid介绍和使用

2020-06-26 17:25:33 193

转载 Mybatis多数据源动态切换

1 Mybatis多数据源动态切换首先需要建立两个库进行测试,我这里使用的是master_test和slave_test两个库,两张库都有一张同样的表(偷懒),表名 t_user表中分别添加两条不同数据,方便测试 主数据库记录name为xiaobin,从库为xiaoliu。目录结构开始使用Springboot 整合mybatis,首先引入pom文件。 <?xml version="1.0" encoding="UTF-8"?><project xmlns="http://

2020-06-26 16:08:50 476

转载 Java 将 Word 文档转换为 PDF 的完美工具

1 Java 将 Word 文档转换为 PDF 的完美工具在日常工作中,PDF格式良好的视觉阅读性和稳定性使其使用越来越广泛。因此我们常会遇到需要将成型的Word文档转换为PDF格式的情况。本文就将通过使用Java程序来演示如何将Word文档转换成PDF格式。使用工具:https://www.e-iceblue.cn/Downloads/Free-Spire-Doc-JAVA.html(免费版)Jar文件获取及导入:方法1:通过[官网] https://www.e-iceblue.cn/Down

2020-06-26 15:56:17 1169 2

转载 更新线上的 Java 服务器代码

1 更新线上的 Java 服务器代码一、前言1、热更新代码的场景(1)当线上服务器出现问题时,有些时候现有的手段不足以发现问题所在,可能需要追加打印日志或者增加一些调试代码,如果我们去改代码重新部署,会破坏问题现场,可以通过热部署的手段来增加调试代码(2)线上出现紧急bug,通过Review代码找到问题,修改好后打包部署的流程可能比较久,可以通过热部署代码及时解决问题二、Arthas的使用使用阿里巴巴开源的Java诊断工具—Arthas,他可以附着在我们的Java服务器进程上面,查看服务器状态,

2020-06-26 15:47:56 152

转载 Vue 之实现小米商城购物车

实现步骤1、静态页面准备页面使用了元件的UI的Icon 图标, ,el-checkbox,el-input-number,el-popover,el-button所有在main.js需要引入元件的UI。import ElementUI from 'element-ui';import 'element-ui/lib/theme-chalk/index.css';Vue.use(ElementUI);页面代码如下:说明:为了方便,此处直接放最终的代码。<template>

2020-06-26 15:39:59 2188

转载 SpringBoot 整合SpringSecurity示例实现前后分离权限注解+JWT登录认证

1 说明SpringSecurity是一个用于Java 企业级应用程序的安全框架,主要包含用户认证和用户授权两个方面.相比较Shiro而言,Security功能更加的强大,它可以很容易地扩展以满足更多安全控制方面的需求,但也相对它的学习成本会更高,两种框架各有利弊.实际开发中还是要根据业务和项目的需求来决定使用哪一种。JWT是在Web应用中安全传递信息的规范,从本质上来说是Token的演变,是一种生成加密用户身份信息的Token,特别适用于分布式单点登陆的场景,无需在服务端保存用户的认证信息,而是直接对

2020-06-26 15:21:37 316

转载 Springboot项目的接口防刷的实例

1 Springboot项目的接口防刷的实例说明:使用了注解的方式进行对接口防刷的功能,非常高大上,本文章仅供参考。技术要点:springboot的基本知识,redis基本操作,首先是写一个注解类:import java.lang.annotation.Retention;import java.lang.annotation.Target;import static java.lang.annotation.ElementType.METHOD;import static java.lang

2020-06-26 15:02:11 153

转载 基于Spring Boot实现定时任务的动态增删启停

1 基于Spring Boot实现定时任务的动态增删启停在spring boot项目中,可以通过@EnableScheduling注解和@Scheduled注解实现定时任务,也可以通过SchedulingConfigurer接口来实现定时任务。但是这两种方式不能动态添加、删除、启动、停止任务。要实现动态增删启停定时任务功能,比较广泛的做法是集成Quartz框架。但是本人的开发原则是:在满足项目需求的情况下,尽量少的依赖其它框架,避免项目过于臃肿和复杂。查看spring-context这个jar包中or

2020-06-26 14:55:57 119

转载 Spring Boot 异步请求和异步调用

1 Spring Boot中异步请求的使用1、异步请求与同步请求特点:可以先释放容器分配给请求的线程与相关资源,减轻系统负担,释放了容器所分配线程的请求,其响应将被延后,可以在耗时处理完成(例如长时间的运算)时再对客户端进行响应。一句话:增加了服务器对客户端请求的吞吐量(实际生产上我们用的比较少,如果并发请求量很大的情况下,我们会通过nginx把请求负载到集群服务的各个节点上来分摊请求压力,当然还可以通过消息队列来做请求的缓冲)。2、异步请求的实现方式一:Servlet方式实现异步请求@Re

2020-06-26 14:45:40 90

转载 SpringBoot使用AOP实现REST接口简易灵活的安全认证实践

1 Authorized实现本文将通过AOP的方式实现一个相对更加简易灵活的API安全认证服务。我们先看实现,然后介绍和分析AOP基本原理和常用术语。1、定义注解package com.power.demo.common;import java.lang.annotation.*;/* * 安全认证 * */@Target({ElementType.TYPE, ElementType.METHOD})@Retention(RetentionPolicy.RUNTIME)@Docum

2020-06-26 14:10:21 169

转载 Java 多线程面试题的总结

1、多线程有什么用?一个可能在很多人看来很扯淡的一个问题:我会用多线程就好了,还管它有什么用?在我看来,这个回答更扯淡。所谓"知其然知其所以然",“会用"只是"知其然”,“为什么用"才是"知其所以然”,只有达到"知其然知其所以然"的程度才可以说是把一个知识点运用自如。OK,下面说说我对这个问题的看法:1)发挥多核CPU的优势随着工业的进步,现在的笔记本、台式机乃至商用的应用服务器至少也都是双核的,4核、8核甚至16核的也都不少见,如果是单线程的程序,那么在双核CPU上就浪费了50%,在4核CPU上就浪

2020-06-26 13:08:53 144

转载 必须掌握的 Spring MVC 顶级技巧

1 Spring MVC 顶级技巧通常,在Spring MVC中,我们编写一个控制器类来处理来自客户端的请求。然后,控制器调用业务类来处理与业务相关的任务,然后将客户端重定向到逻辑视图名称,该名称由Spring的调度程序Servlet解析,以呈现结果或输出。这样就完成了典型的请求-响应周期的往返。今天整理了一下编写Spring MVC控制器的14个技巧,你今天get到了吗?1.使用@Controller构造型这是创建可以处理一个或多个请求的控制器类的最简单方法。仅通过用构造型注释一个类@Contr

2020-06-26 13:00:03 99

转载 基于Spring Boot的API、RESTful API 项目骨架

1 基于Spring Boot的API、RESTful API 项目骨架最近使用Spring Boot 配合 MyBatis 、通用Mapper插件、PageHelper分页插件 连做了几个中小型API项目,做下来觉得这套框架、工具搭配起来开发这种项目确实非常舒服,团队的反响也不错。在项目搭建和开发的过程中也总结了一些小经验,与大家分享一下。在开发一个API项目之前,搭建项目、引入依赖、配置框架这些基础活自然不用多说,通常为了加快项目的开发进度(早点回家)还需要封装一些常用的类和工具,比如统一的响应结果

2020-06-26 11:02:00 118

转载 Java代码优化常用方法

1 尽量指定类、方法的final修饰符带有final修饰符的类是不可派生的。在Java核心API中,有许多应用final的例子,例如java.lang.String,整个类都是final的。为类指定final修饰符可以让类不可以被继承,为方法指定final修饰符可以让方法不可以被重写。如果指定了一个类为final,则该类所有的方法都是final的。Java编译器会寻找机会内联所有的final方法,内联对于提升Java运行效率作用重大,具体参见Java运行期优化。 此举能够使性能平均提高50%2 尽量重用

2020-06-26 09:42:26 303

转载 SpringCloud 常见面试题

1 什么是Spring Cloud?Spring cloud流应用程序启动器是基于Spring Boot的Spring集成应用程序,提供与外部系统的集成。Spring cloud Task,一个生命周期短暂的微服务框架,用于快速构建执行有限数据处理的应用程序。2 使用Spring Cloud有什么优势?使用Spring Boot开发分布式微服务时,我们面临以下问题:与分布式系统相关的复杂性-这种开销包括网络问题,延迟开销,带宽问题,安全问题。服务发现-服务发现工具管理群集中的流程和服务如何查找和互

2020-06-25 19:01:46 175

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除