- 博客(71)
- 收藏
- 关注
原创 prometheus +grafana 实现对各个资源的监控(包含监控SpringBoot项目)
prometheus +grafana 实现对各个资源的监控,包括:服务器cpu、内存、redis、mysql、kafka、nginx、zookeeper、mongodbspringboot项目等
2024-03-21 08:49:49 1183 1
原创 LocalDateTime常用方法总结,总有你会用到的
LocalDateTime转时间戳、获取当前时间、格式化时间、获取当天时间的0点、获取当前是星期几、获取年份、获取月份、获取天、获取上周周一、周日、获取本月第一天、获取当年第一天、获取下个月第一天
2022-09-25 13:50:40 3162 1
原创 springboot整合redisson(一)搭建Redisson环境
一、创建springboot项目1.通过idea创建springboot项目2.通过web网站创建springboot项目创建完之后的项目结构如下:二、引入redisson依赖由于我们是springboot整合redisson,所以我们只需引入springboot-redisson-starter就可以了,不过这里需要注意springboot与redisson的版本,因为官方推荐redisson版本与springboot版本配合使用。将 Redisson 与 Spring Boot 库集成
2021-06-14 13:43:10 11468 2
原创 springcloud整合gateway引入nacos报Parameter 0 of method loadBalancerWebClientBuilderBeanPostProcessor in o
Consider defining a bean of type 'org.springframework.cloud.client.loadbalancer.reactive.DeferringLoadBalancerExchangeFilterFunction' in your configuration.
2021-04-21 13:43:27 6172 6
原创 java实现一个简单的会回调函数
其实你找不到错误不代表错误不存在,同样你看不到技术比你牛的人并不代表世界上没有技术比你牛的人。什么是回调函数?回调函数就是一个通过函数指针调用的函数。如果你把函数的指针(地址)作为参数传递给另一个函数,当这个指针被用来调用其所指向的函数时,我们就说这是回调函数。回调函数不是由该函数的实现方直接调用,而是在特定的事件或条件发生时由另外的一方调用的,用于对该事件或条件进行响应。回调方法 是 任何一个 被 以该回调方法为其第一个参数 的 其它方法 调用 的方法。很多时候,回调是一个当某些事件发生时被调用.
2020-10-24 16:34:27 792 4
原创 【设计模式】代理模式:神奇的代理模式,节省了我80%开发时间
什么是代理模式?代理模式(英语:Proxy Pattern)是程序设计中的一种设计模式。所谓的代理者是指一个类别可以作为其它东西的接口。代理者可以作任何东西的接口:网上连接、存储器中的大对象、文件或其它昂贵或无法复制的资源。简单点来说,就是在不改变原类的情况下新增新的功能,比如日志、流量监控、请求耗时等等操作都可以通过代理模式来解决。概念说的比较抽象,举个例子大家可能就会明白了,spring的aop肯定都使用过吧,他是处理日志记录的好手,它就是通过代理模式实现的。需求生产环境中发现请求总是很慢
2020-08-30 14:00:45 1556 2
原创 【设计模式】职责链模式:如果第三方短信平台挂了怎么办?
任何傻瓜都能写出计算机可以理解的代码。好的程序员能写出人能读懂的代码”—— Martin Fowler
2020-07-13 22:27:55 1923 5
原创 【设计模式】门面模式:接口就像门面,一眼就能看出你的代码水平
什么是门面模式?门面模式,是指提供一个统一的接口去访问多个子系统的多个不同的接口,它为子系统中的一组接口提供一个统一的高层接口。使得子系统更容易使用。、举个栗子:现实生活中,我们去政府办事情的时候是不是需要很多的流程,比如:先去村委开证明,再去乡里办手续,最后再去城里办理业务?是不是一个人要跑三个地方,既费力又费时?难道就不能只去一个地方就能把这件事给办好?虽然政府现在还做不到,但是程序比较争气,它做到了!我们一起看看正常的接口请求这是一个非常正常的接口请求吧,你们觉得这样的设计有问题吗?应该是没
2020-06-20 20:58:58 669 4
原创 听说月入30k的大佬都在使用这些故障检查工具
面试三连面试官:了解JVM吗?小明:知道一点....面试官:那你说一下什么是JVM?小明:JVM是Java Virtual Machine(Java虚拟机)的缩写,JVM是一种用于计算设备的规范,它是一个虚构出来的计算机,是通过在实际的计算机上仿真模拟各种计算机功能来实现的。面试官:那如果现在服务器出现cpu飙升的情况,你该如何追踪问题呢?小明:查看日志。面试官:那如果日志没有展示呢?比如死锁、死循环等等这些只要不是内存溢出,日志是不会抛出异常的,你怎么追踪到是死锁或者死循环导致
2020-06-14 17:17:04 528 1
原创 【设计模式】观察者模式:一个注册功能也能使用到设计模式?
人生在世如身处荆棘之中,心不动,人不妄动,不动则不伤,如心动则人妄动,伤其身,痛其骨,于是体会到世间诸般痛苦由于受到疫情的影响,现在周末街上都没有以前那么热闹,虽然相比前几个月已经好了很多,但我还是喜欢宅在家里,第一是因为安全,第二是因为穷,一不小心又把心里话说出来了,既然是周末,像我这种屌丝肯定是看着动漫、玩着游戏、惬意的不行,人生得意需尽欢,那为什么我又会来写博客呢?那是因为我的同事小明今天加班,问了我一个既简单又不简单的问题,我觉得工作的你也可能会遇到,所以在这里就记录一下,showtime。..
2020-06-07 14:04:39 1990
原创 【设计模式】策略模式:我是一个有谋略的类
写代码的时候经常遇到一堆的if/else、switch,不知道怎么解决?让一个有谋略的军事帮你轻松搞定,让你再也不用为了判断而苦恼!
2020-05-23 23:46:24 1451
原创 还在使用kill -9 pid结束spring boot项目吗?不妨试试这几种优雅的方式!
服务器中的springboot还在使用kill -9 停止服务?太暴力了,不妨试试这几种方式,既优雅又高大上。
2020-04-24 14:28:14 2388 14
原创 带你搞明白什么是缓存穿透、缓存击穿、缓存雪崩
对缓存穿透和缓存击穿总是模棱两可?不明白什么是缓存雪崩?没关系,这篇文章将让你一次性搞明白什么是缓存穿透、什么是缓存击穿、什么是缓存雪崩,上万字总结,建议收藏。
2020-04-19 18:58:23 2573 49
转载 error: RPC failed; HTTP 401 curl 22 The requested URL returned error: 401
error: RPC failed; HTTP 401 curl 22 The requested URL returned error: 401
2020-04-18 17:01:38 6301 5
原创 单机服务到分布式架构的演变,有了它,面试再也不慌了!
都2020年了,还搞不明白分布式架构?还不快进来看看这篇超详细的分布式架构,搞懂他,加薪升职什么的都不是问题,确定不进来看看吗?
2020-04-13 08:55:41 4195 32
原创 【源码之下无秘密】ArrayList:在内存只有10M的空间中申请一块5M的数组空间,会导致OOM吗?
面试的时候经常被问到List访问速度快,添加、删除、修改速度慢,你知道为什么?如果不知道,这篇文章会让你看的明明白白,应付面试官绝对不是问题!
2020-04-05 16:00:21 2332 28
原创 【设计模式】原型模式:如何快速的克隆出一个对象?
当面试官问你:对象创建过程过于复杂的时候你会怎么办?你就把这篇文章扔给面试官就对了,绝对加分!
2020-04-03 17:20:45 1387 15
原创 【并发编程】ThreadLocal:如何优雅的解决SimpleDateFormat多线程安全问题
还在为SimpleDateFormat在多线程中存在的安全问题吗?这篇文章将会以最优雅的方式解决SimpleDateFormat在多线程中的问题,那就是:ThreadLocal(本地线程存储)
2020-03-31 18:06:19 3060 29
原创 docker部署springboot项目(详细教程)
目录docker介绍安装dockerUbuntu安装dockerCentOS安装docker通过脚本安装创建springboot项目docker介绍Docker 是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的镜像中,然后发布到任何流行的 Linux或Windows 机器上,也可以实现虚拟化。容器是完全使用沙箱机制,相互之间不会有任何接口。docker的核心思想是...
2020-03-26 21:34:00 28770 19
原创 【设计模式】建造者模式:你创建对象的方式有它丝滑吗?
设计模式之建造者模式;java实现建造者模式,什么是建造者模式建造者模式是设计模式的一种,将一个复杂对象的构建与它的表示分离,使得同样的构建过程可以创建不同的表示。其实建造者模式是被翻译过来的,他原名叫builder模式,也被称为生成器模式,这种模式的实现非常的简单,只是在使用方面可能会有点摸不着方向,我们一起来看看吧。...
2020-03-24 16:55:53 1263 3
原创 idea中tomcat乱码问题
解决方法1.进入tomcat的config目录,编辑:server.xml <Connector port="8080" protocol="HTTP/1.1" URIEncoding="UTF-8" connectionTimeout="20000" redirectPort="8443" />在Connect...
2020-03-22 13:37:57 760 3
原创 由@Value注解引发的一次对bean的思考,值得一看
springboot读取配置文件,静态变量读取配置文件目录读取配置文件属性@Value注解在配置文件中编写一些属性(application.yml)FileConfig类单元测试@ConfigurationPropertiesEnvironment对象读取配置文件属性前不久刚优化了一个关于文件上传这块的代码,这里面就涉及到图片的路径问题,我将某些属性配置到了配置文件,但是在优化过程中,让我对bean有了新的认识,我们先来看怎么获取配置文件的属性。...
2020-03-20 17:17:49 1345 3
原创 springboot实现国际化居然可以这么简单
springboot实现国际化(多语言)国际化(internationalization)是设计和制造容易适应不同区域要求的产品的一种方式。它要求从产品中抽离所有地域语言,国家/地区和文化相关的元素。换言之,应用程序的功能和代码设计考虑在不同地区运行的需要,其代码简化了不同本地版本的生产。开发这样的程序的过程,就称为国际化。不知道...
2020-03-15 13:54:09 6892 27
原创 springboot整合mybatis-plus看这篇文章就足够了
什么是mybatis-plusMyBatis-Plus(简称 MP)是一个MyBatis的增强工具,在 MyBatis 的基础上只做增强不做改变,为简化开发、提高效率而生。特点无侵入:只做增强不做改变,引入它不会对现有工程产生影响,如丝般顺滑 损耗小:启动即会自动注入基本 CURD,性能基本无损耗,直接面向对象操作 强大的 CRUD 操作:内置通用 Mapper、通用 Serv...
2020-03-11 11:05:55 1862 3
原创 【设计模式】工厂模式:你还在使用一堆的if/else创建对象吗?
java实现工厂模式,我们常见的工厂模式大致分为三种:简单工厂、工厂方法和抽象工厂,我们比较常用的是简单工厂与工厂方法,抽象工厂顾名思义,他比较抽象,在项目中使用场景也比较有限,他是为了解决简单工厂与工厂方法解决不了的更复杂的对象创建
2020-03-07 16:41:57 934 12
原创 springboot全局异常捕获
异常?什么是异常?程序在启动或者运行时没有按照预期的执行,在执行途中发生某种未知的错误,导致程序非正常停止或者报错。在我们的程序中,肯定会伴随着很多的异常,...
2020-03-02 14:04:05 1614 2
原创 【设计模式】单例模式
目录什么是单例模式为什么要使用单例模式如何实现一个单例模式第一种:饿汉式第二种:懒汉式第三种:双重检测第四种:静态内部类什么是单例模式单例模式,属于创建类型的一种常用的软件设计模式。通过单例模式的方法创建的类在当前进程中只有一个实例(根据需要,也有可能一个线程中属于单例,如:仅线程上下文内使用同一个实例)。简单点来说:一个类只能被创建一个实例对象,这样...
2020-02-16 15:08:20 423
原创 Mysql多版本并发控制
概念Mysql的绝大多数事务型存储引擎都不是简单的行级锁。他们实现了多版本的并发控制,也就是MVVC,当然,支持MVVC的数据库并不只有Mysql,Orcale、PostgreSql等都实现了MVVC,只不过他们实现的方式不同而已,因为MVVC没有一个统一的规范。其实MVVC可以理解为行级锁的一种变异,它会选择性加锁,避免的大部分情况下的枷锁操作,所以节省了cpu的开销,虽然每个数据库的实...
2020-02-12 16:20:01 357
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人