自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Ubuntu配置MongoDB

文章目录环境操作流程1. 下载MongoDB2. 解压,并保存到我们想要的目录中3. 准备日志和数据目录4. 准备配置文件5. 启动MongoDB6. 检查是否启动成功开启远程访问环境服务版本Ubuntu16.04MongoDB4.2.10 Community操作流程1. 下载MongoDB官网下载地址选择相应的操作系统、版本、格式即可。2. 解压,并保存到我们想要的目录中把这个tgz放到我们的Ubuntu中,解压:tar -xvf mongodb-l

2020-11-12 10:22:30 399

原创 idea springboot远程debug

文章目录Remote Debug 综述First Step 本地配置远程服务Second Step 服务器以远程监听方式启动Third Step 在本地调试Remote Debug 综述当我们的后台项目部署到服务器上时,由于环境和本地不同,有时候也会有一些奇奇怪怪的问题出现。只依赖服务器上的日志来诊断可能太不灵活,这时就需要我们进行远程调试。在开始我们的步骤前,先确认一点:我们现在是希望能够在本地远程调试服务器上的程序,也就是说:本地 = 调试者服务器 = 被调试者而且还有一点我们需要注意

2020-10-08 00:49:14 334

原创 Ubuntu 开启Redis远程访问

环境服务版本Ubuntu16.04Redis3.0.06操作流程修改/etc/redis/redis.conf把这一行注释掉:bind 127.0.0.1如果想要安全一点,顺便可以修改下密码:把# requirepass foobared注释去掉,然后把foobared替换为自己想设置的密码即可。重新启动redissudo service redis-server restart远程访问远程访问时,输入以下即可:redis-cli -h {ip} -

2020-08-01 23:38:15 1272

原创 你真的理解灰度发布了吗?

本篇中,我们来讨论一个重要概念:“灰度发布”,及其解决方案。文章目录基本概念理论与现实的冲突与思考怎么设计流量的分配怎么控制灰度的粒度实战解决方案一、准备外部配置源,实现热配置二、控制权交由业务方,实现粒度自由总结基本概念“灰度发布”的基本含义如下:灰度发布(又名金丝雀发布)是指在黑与白之间,能够平滑过渡的一种发布方式。在其上可以进行A/B testing,即让一部分用户继续用产品特性A,一部分用户开始用产品特性B,如果用户对B没有什么反对意见,那么逐步扩大范围,把所有用户都迁移到B上面来。灰度

2020-06-14 21:51:49 1259 1

原创 Spring Cloud Alibaba教程——基于Java配置Ribbon

教程仓库:github Spring-Cloud-Alibaba-Learning教程索引页:index Spring-Cloud-Alibaba-Learning文章目录源码地址目标前置知识流程测试补充源码地址本篇内容的项目地址为:基于Java配置Ribbon目标以java代码配置Ribbon的方式,把service-a调用service-b时调用的负载均衡算法修改为RandomRule(随机选择节点)前置知识了解Ribbon提供的几种负载均衡算法规则名称特点

2020-05-14 09:49:55 737

原创 Spring Cloud Alibaba教程——引入Ribbon

教程仓库:github Spring-Cloud-Alibaba-Learning教程索引页:index Spring-Cloud-Alibaba-Learning文章目录源码地址目标前置知识流程测试源码地址本篇内容的项目地址为:引入Ribbon目标使用Ribbon替换自定义的负载均衡器完成service-a对service-b的负载均衡调用前置知识熟悉使用RestTemplate进行远程调用(不熟悉请移步1.2 微服务调用)流程由于spring-cloud-aliba

2020-05-13 10:20:42 1428

原创 Spring Cloud Alibaba教程——手写负载均衡器

教程仓库:github Spring-Cloud-Alibaba-Learning教程索引页:index Spring-Cloud-Alibaba-Learning文章目录源码地址目标前置知识流程测试源码地址本篇内容的项目地址为:手写负载均衡器目标自定义一个简易版负载均衡器使用自定义的负载均衡器,完成service-a对service-b的远程调用前置知识对日志有所了解(本仓库中主要使用lombok slf4j)已学习完1.Nacos下的全部内容流程本节只涉及serv

2020-05-11 22:25:51 456

原创 Java知识总结——Spring AOP

框架是JAVA面试中比较重要的一个部分,而Spring是面试最爱问的框架之一。Spring中最重要的就是IOC和AOP这两大概念,本篇中对于AOP相关知识及面试题作一个总结。首发于github:github JavaLeaning Spring AOP文章目录AOP基本概念性质目的原理AspectJ静态代理SpringAOP动态代理AOP关键词动态代理的两种实现JDK动态代理CGLIB动态代理其他一些核心问题何时使用JDK还是CGLIB?JDK动态代理和CGLIB字节码生成的区别?CGlib比JDK快?

2020-05-11 22:21:02 441

原创 Spring Cloud Alibaba教程——Ribbon概述

教程仓库:github Spring-Cloud-Alibaba-Learning教程索引页:index Spring-Cloud-Alibaba-Learning文章目录Ribbon什么是Ribbon什么叫客户端侧?使用方式Ribbon什么是Ribbon简单来说,Ribbon是Netflix开源的客户端侧负载均衡器。什么叫客户端侧?负载均衡分为服务端负载均衡和客户端侧负载均衡。服务端负载均衡由服务端来完成负载均衡。例如使用nginx做反向代理,由nginx完成负载均衡,并转发

2020-05-10 20:33:21 586

原创 Java知识总结——Spring IOC

框架是JAVA面试中比较重要的一个部分,而Spring是面试最爱问的框架之一。Spring中最重要的就是IOC和AOP这两大概念,本篇中对于IOC相关知识及面试题作一个总结。主要涵盖:基本概念,常见面试题,核心源码逻辑梳理。

2020-05-10 18:35:37 753 1

原创 Spring Cloud Alibaba教程——Nacos微服务调用

教程仓库:github Spring-Cloud-Alibaba-Learning教程索引页:index Spring-Cloud-Alibaba-Learning文章目录源码地址目标准备工作流程一、根据服务名获取节点列表二、根据服务名获取节点列表三、完成跨服务的远程调用源码地址本篇内容的项目地址为:微服务调用目标可以根据服务名获取到该服务的节点列表可以获取到在服务注册中心注册成功的所有服务名完成跨服务的远程调用准备工作保证Nacos在启动状态,且确保两个服务(servic

2020-05-09 12:43:09 1177

原创 Spring Cloud Alibaba教程——集成Nacos

教程仓库:github Spring-Cloud-Alibaba-Learning教程索引页:index Spring-Cloud-Alibaba-Learning文章目录目标准备工作流程目标将微服务service-a和service-b注册到nacos,以供服务发现。准备工作下载1.01版本Nacos:windows版本linux版本流程启动Nacos...

2020-05-07 20:03:25 1126

原创 Spring Cloud Alibaba入门教程——索引

教程仓库:github Spring-Cloud-Alibaba-Learning综述学习提纲一、NacosNacos概述

2020-05-04 11:13:02 1131

原创 Spring Cloud Alibaba教程——Nacos概述

教程仓库:github Spring-Cloud-Alibaba-Learning教程索引页:文章目录Nacos什么是Nacos官方文档下载地址使用方式Nacos什么是Nacos简单来说,Nacos是一款服务发现组件,主要解决两个问题:服务A如何发现服务B管理微服务的配置官方文档Nacos官方文档下载地址各发行版的下载地址:下载地址本代码仓库中使用的版本是1....

2020-05-04 11:09:08 1243

原创 Spring Cloud Alibaba入门教程

教程仓库:github Spring-Cloud-Alibaba-Learning教程索引页:本章为教程的概述部分文章目录学习提纲1-Nacos2-Ribbon3-Feign前置知识Spring-Cloud-Alibaba是什么Spring-CloudSpring-Cloud-AlibabaSpring-Cloud-Alibaba主要组件本教程中主要使用的组件开发环境/生产环境学...

2020-05-02 19:48:59 1789

原创 JVM经典问题排查系列

对JVM进行简单的性能调优和问题排查是一名Java程序员必备的技能,也是Java工程师面试中经常考到的知识模块。本系列中会针对一些常见的JVM问题排查进行总结,帮助大家进行初步入门。在学习经典案例之前,我们首先要熟悉一些常见的JVM调优和监控工具,至少知道它们要做什么:传送门:JVM——命令行工具在了解了一些基本的工具之后,我们就可以来看一些基本的案例了:(不定时更新)直通车:JVM问...

2020-03-21 18:00:26 857

原创 JVM问题排查——CPU过高

文章目录环境准备工作排查总结环境JDK8 准备工作先准备好一个自旋程序,模拟CPU过高:public class CPUTest { public static void main(String[] args) { while(true){ System.out.println("true"); } ...

2020-03-21 17:50:04 1082

原创 JVM问题排查——OOM

文章目录环境准备工作排查姿势一:使用JVisualVM排查姿势二:使用Jps+Jstack环境JDK8 准备工作先准备好一个OOM程序:(程序是网上随便找的)public class DeadLock { public static String obj1 = "obj1"; public static String obj2 = "obj2"; p...

2020-03-21 15:01:34 4243

转载 OOM异常会导致JVM退出吗?

文章目录一、问题来源二、一次实践三、异常与线程四、OOM与JVM退出的关联 一、问题来源一次生产事故,由于一次性从数据库查询过多数据导致***线程*** OOM:Java heap space 异常(千万级表,JVM堆内存2G),但是在线程OOM发生时,java进程却没有立即挂掉。不符合所谓发生OOM,程序就会挂的“预期”,因此进行深入了解。 二、一次实践java...

2020-03-20 19:35:05 506

原创 JVM问题排查——死锁

文章目录环境准备工作排查姿势一:使用JVisualVM排查姿势二:使用Jps+Jstack环境JDK8 准备工作先准备好一个死锁程序:(程序是网上随便找的)public class DeadLock { public static String obj1 = "obj1"; public static String obj2 = "obj2"; pu...

2020-03-19 17:09:56 2101

原创 linux修改mysql编码格式

部署环境:Ubuntu16.04 腾讯云                  Mysql 5.7.25部署工具:Xshell 6文章目录修改Mysql编码格式为UTF81. 查看当前编码2. 修改mysqld.c...

2020-03-19 16:34:21 819

原创 linux部署mysql

部署环境:Ubuntu16.04 腾讯云部署工具:Xshell 6文章目录mysql安装与开启远程访问一、安装mysql二、开启mysql远程访问1. 编辑文件mysqld.cnf2. 进入数据库3. 执行授权指令开启远程访问4. 刷新配置信息5. 退出数据库6. 重启数据库mysql安装与开启远程访问一、安装mysql依次输入三条指令:sudo apt-get install ...

2020-03-19 16:32:18 747

原创 引入spring-cloud-stream报Failed to introspect annotated methods on class BinderFactoryConfiguration

 文章目录环境问题背景解决方案  环境服务版本jdk8SpringBoot2.2.1RELEASESpringCloudGreenwich.SR1问题背景使用SpringCloud项目引入rocketMQ和stream启动时报错如下:org.springframework.beans.factory.BeanD...

2020-02-21 12:43:20 2279

原创 启动RocketMQ报找不到或无法加载主类

 文章目录环境问题背景解决方案  环境服务版本RocketMQ4.5.1jdk8windows10 64位win10问题背景使用常规的start mqnamesrv.cmd启动时报错如下:解决方案把Rocket换到一个路径没有空格的文件夹下,例如:C:\ProgramFiles\rocketmq&nbsp...

2020-02-19 12:41:10 2917

原创 启动RocketMQ报Unrecognized VM option 'UseCMSCompactAtFullCollection'

 文章目录环境问题背景解决方案  环境服务版本RocketMQ4.5.1jdk9+windows10 64位win10问题背景使用常规的start mqnamesrv.cmd启动时报错如下:解决方案更改jdk版本至8u241。9及以上版本废弃了CMSCompactAtFullCollection,无法支持。...

2020-02-19 12:36:43 10906 3

原创 引入Feign报PathVariable annotation was empty on param 0

 文章目录环境问题背景解决方案  环境依赖版本spring-cloud-alibaba-dependencies0.9.0spring-cloud-dependenciesGreenwich.SR1spring-cloud-openfeign2.1.1.RELEASE问题背景写一个常规的FeignClient,然...

2020-02-15 15:09:51 744

原创 解决注入mapper报红的问题

在spring系列集成mybatis时,我们经常遇到这样的问题:明明注入没有问题,但是intellij idea会报红。这是因为我们没有手动在代码里把mapper接口注入spring容器中,而@Autowired注入方式默认要求注入的对象必须是在spring容器中存在的。所以idea认为这里的userMapper不存在,而用户(我们)选择注入,是一种错误操作,就报红。那么怎么解决这个问题...

2020-02-14 12:46:23 5263 1

原创 ThreadLocal深入解析

文章目录ThreadLocal是什么应用场景使用示例ThreadLocal在JDK8中的实现静态内部类Entry读取实例设置初始值设置实例防止内存泄漏ThreadLocal是什么ThreadLocal 提供了线程私有的实例。它与普通变量的区别在于,每个使用该变量的线程都会初始化一个完全独立的实例副本。当一个线程结束时,所有 ThreadLocal 中标记为该线程所拥有的实例副本都会被回收。&...

2020-02-12 16:56:37 744

原创 JVM运行时数据区

参考资料:《深入理解Java虚拟机(第2版)》文章目录概述程序计数器虚拟机栈本地方法栈堆方法区运行时常量池Class文件常量池直接内存JVM创建对象的过程对象的内存布局对象的访问定位方式 概述Java虚拟机在执行Java程序的过程中会把它所管理的内存划分为若干个不同的数据区域,这些区域都有各自的用途。根据Java虚拟机规范(JavaSE 7版),Java虚拟机所管理的内存将会包括...

2020-02-12 13:03:52 638

原创 什么是OOM?

OOM:OutofMemoryError 当无法申请到足够的内存时,抛出此异常。官方解释为:Thrown when the Java Virtual Machine cannot allocate an object becauseit is out of memory, and no more memory could be made available by thegarbage c...

2020-02-12 00:33:10 796

原创 一文读懂Java四种引用类型

Java中支持四种引用类型。平时我们可能只用到其中一种,但对各种引用类型都有一定了解是有必要的。本文针对四种引用类型的含义特征、使用方式、应用场景进行分析。 强引用含义特征强引用(Strong Reference)当我们使用new创建对象时,被创建的对象就是强引用。例如Object object = new Object(),其中的object就是一个强引用了。如果一个对...

2020-02-11 21:16:17 687

空空如也

空空如也

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

TA关注的人

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