自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

牧小农

业精于勤,荒于嬉;行成于思,毁于随!公众号【牧小农】

  • 博客(127)
  • 资源 (8)
  • 收藏
  • 关注

原创 用RocketMQ这么久,才知道消息可以这样玩

消息这样玩,同事都直呼内行

2022-08-21 13:18:08 1074 1

原创 RocketMQ 详解系列

来瞅瞅吧

2022-08-08 22:24:23 1848

原创 分布式事务(Seata)原理 详解篇,建议收藏

Seata源码讲解,收藏起来慢慢看

2022-07-10 15:19:32 12693 4

原创 分布式事务(Seata) 四大模式详解

建议收藏起来,慢慢看

2022-07-03 14:02:46 2302 2

原创 别再说你不知道分布式事务了

分布式事务是指事务的参与者,支持事务的服务器,资源服务器分别位于分布式系统的不同节点之上,通常一个分布式事物中会涉及到对多个数据源或业务系统的操作。

2022-06-18 11:16:29 982

原创 SpringCloud GateWay 万字详解

GateWay万字详解,你确定不收藏一下吗?

2022-06-11 17:23:27 1055

原创 Sentinel与OpenFeign 服务熔断那些事

Sentinel与OpenFeign 服务熔断那些事

2022-06-05 13:47:45 1195 1

原创 SpringCloud Alibaba Sentinel限流详解 这一次别在错过

点赞再看,养成习惯,微信搜索【牧小农】关注我获取更多资讯,风里雨里,小农等你,很高兴能够成为你的朋友。项目源码地址:公众号回复 sentinel,即可免费获取源码熔断规则在上一篇文章中我们讲解了流控规则的使用和介绍Sentinel流控规则,今天我们给大家讲解sentinel更多样化的讲解以及流量控制。官方文档:https://sentinelguard.io/zh-cn/docs/circuit-breaking.html在面对调用链路中不稳定的资源如何保证高可用?在微服务中一个服务通常会调用.

2022-05-29 17:54:51 1036

原创 什么?Sentinel流控规则可以这样玩?

Sentinel流控规则是这样玩

2022-05-25 09:13:36 1422 2

原创 Sentinel介绍与使用 收藏起来

小勇看完表示很可以~

2022-05-21 21:35:20 904 2

原创 Nacos源码系列—订阅机制的前因后果(下)

在上一节中我们讲解了在NotifyCenter中维护了事件名称和事件发布者的关系,而默认的事件发布者为DefaultPublisher,今天我们就来讲一下DefaultPublisher的事件发布的具体逻辑

2022-05-19 08:58:31 999 2

原创 Nacos源码系列—订阅机制的前因后果(上)

关于Nacos订阅机制,你不来看看吗?

2022-05-14 22:34:48 732

原创 Nacos源码系列—服务端那些事儿

想要面试过得去,源码知识少不了

2022-05-08 17:35:20 1232 4

原创 Nacos源码系列—关于服务注册的那些事

阅读源码并没有我们想象中的那么难,道阻且长,行之将至,当你开始行动的时候,你就已经开始进步了,别管学多少

2022-05-05 22:49:29 1514 3

原创 Nacos在企业生产中如何使用集群环境?

点赞再看,养成习惯,微信搜索【牧小农】关注我获取更多资讯,风里雨里,小农等你,很高兴能够成为你的朋友。项目源码地址:公众号回复 nacos,即可免费获取源码前言由于在公司,注册中心和配置中心都是使用的Nacos,因为前一段时间比较忙(木有划水时间),没有精力仔细去研究,时间就像海绵里的水,挤一挤总会是有的,出于对技术的好奇心,今天挤了一点时间,终于到了我 牧汉三 出马的时候。今儿个就说一说Nacos集群架构是如何搭配,以及在企业中是如何使用的。Nacos集群架构在搭建Nacos集群之前,我们首.

2022-04-30 11:19:32 896 20

原创 【Nacos】这篇Nacos详解,我觉得可以看看

这一篇Nacos,看完你会没有收获?我不信

2022-04-23 15:21:23 4588 1

原创 这一篇 K8S(Kubernetes)集群部署 我觉得还可以

Kubernetes 的安装其实并不复杂,因为Kubernetes 属于Google 的产品,都是从Google的官方上进行下载,但是因为网络问题,在国内是没办法连接它的中央仓库进行下载安装包的,只能通过其他的途径进行安装,在国内有四种安装方式

2021-11-06 17:06:17 4734 10

原创 这一篇 K8S(Kubernetes)我觉得可以了解一下!!!

点赞再看,养成习惯,微信搜索【牧小农】关注我获取更多资讯,风里雨里,小农等你,很高兴能够成为你的朋友。什么是Kubernetes?Kubernetes 是Google开源的分布式容器管理平台,是为了更方便的在服务器中管理我们的容器化应用。Kubernetes 简称 K8S,为什么会有这个称号?因为K和S是 Kubernetes 首字母和尾字母,而K和S中间有八个字母,所以简称 K8S,加上 Kubernetes比较绕口,所以一般使用简称 K8S。Kubernetes 即是一款容器编排工具,也是一.

2021-10-28 13:10:54 1117 6

原创 ZK(ZooKeeper)分布式锁实现

点赞再看,养成习惯,微信搜索【牧小农】关注我获取更多资讯,风里雨里,小农等你。本文中案例都会在上传到git上,请放心浏览git地址:https://github.com/muxiaonong/ZooKeeper/tree/master/mxnzookeeper准备本文会使用到 三台 独立服务器,可以自行提前搭建好。不知道如何搭建的,可以看我之前 ZooKeeper集群 搭建:Zookeeper 集群部署的那些事儿关于ZooKeeper 一些基础命令可以看这篇:Zookeeper入门看这篇就够.

2021-10-24 17:53:43 1462 4

原创 ZooKeeper分布式配置——看这篇就够了

ZooKeeper 的由来PS:这一段不重要,不感兴趣的小伙伴可以跳过ZooKeeper 最早起源于雅虎研究院的一个研究小组,在当时,研究人员发现,在雅虎内部有很多的大型系统基本上都需要依赖一个类似的系统来进行分布式协调,但是这些系统往往都存在分布式单点的问题,所有雅虎的开发人员就尝试开发了一个通用的无单点问题的分布式协调框架,以便让开发人员将精力集中在处理业务逻辑上。关于"ZooKeeper"这个项目的名字。也有一个故事,在项目开始初期,因为考虑到内部的很多项目都是用动物的名字来命名的(例如:Pig项

2021-10-21 17:15:18 1448 2

原创 Zookeeper 集群部署的那些事儿

ZooKeeper集群技巧知多少,今天带你了解~

2021-10-13 14:24:22 1164 2

原创 Zookeeper入门看这篇就够了

ookeeper 是一个分布式应用程序的分布式开源协调服务。Zookeeper入门看这篇就够了!

2021-09-29 15:46:01 1778 9

原创 做一个有温度的程序员

相信大家应该对我不太熟悉,我叫牧小农,是一位智慧才华美貌都达到登峰造极。。。。。。。。

2021-09-25 11:35:51 1003 3

原创 Apollo 配置中心详细教程

一、简介Apollo(阿波罗)是携程框架部门研发的分布式配置中心,能够集中化管理应用不同环境、不同集群的配置,配置修改后能够实时推送到应用端,并且具备规范的权限、流程治理等特性,适用于微服务配置管理场景。服务端基于Spring Boot和Spring Cloud开发,打包后可以直接运行,不需要额外安装Tomcat等应用容器。Java客户端 不依赖任何框架,能够运行于所有Java运行时环境,同时对Spring/Spring Boot环境也有较好的支持。.Net客户端 不依赖任何框架,能够运行于所有.N

2021-09-17 13:07:58 8364 8

原创 浅析 DDD 领域驱动设计

前言最近公司一场有关于领域驱动设计的技术分享会,引起了我的注意,主要讲解了服务的划分,Restful API的设计,如何将抽象具有统一业务的范畴的Model,使其模块化,同时能够提炼组合多个模块,使得业务能够独立服务化,在软件开发中如何降低系统的复杂度是一个永恒的挑战,在之前都是通过一系列的设计模式或者范例来降低一些比较常见的复杂度,这些都是通过技术手段来解决技术问题,没有从根本上解决业务上的问题,但是在03年 Eric Evans 的《Domain Driven Design》 中,才是真正的从业务的

2021-09-07 15:10:13 3449 8

原创 如果父母依旧辛苦,那我们的成长又有什么意义?

一、前言最近听到了一句比较有感触的话——“如果父母依旧辛苦,那我们的成长又有什么意义?”人生就是一边拥有,一边失去,一边选择,一边放弃,一边后悔;只有失去才知道有多不舍,不管是对于亲情还是爱情,或者其他的东西。不知不觉中,我们已经从当初那个懵懵懂懂的小男孩,长成了一个大人了,是一个意气风发的少年郎了,有句话说的特别好,愿你阳光下像个孩子,风雨里像个大人 ,但是在父母眼中不管我们多大,你永远都是个孩子,他们可以给你洗衣服、做饭、嘘寒问暖,因为你是他们的儿子。 但是我们又是从什么时候,发现父母也在不知不

2021-06-06 11:02:03 8351 67

原创 【玩转PDF】贼稳,产品要做一个三方合同签署,我方了!

一、前言事情是这个样子的,小农的公司,之前有个功能需要签署来进行一系列的操作,于是我们引入了一个三方平台的签署——上上签,但是有一个比较尴尬的点就是,它不支持合同在浏览器上和附件一起预览的,我们想要的是需要将附件拼接在合同主文件中一起展示,但是它不支持,于是我们就开了一个需求会。。。产品说,我们要做一个线上合同签署的功能,不依靠第三方来完成,可以浏览器上预览和下载合同,小农,你这边能做吗?我一听,这个啊,这个有点难度啊(我需要时间),不太好做,之前我们接入的第三方就没有完全完成浏览器预览的功能,相

2021-05-26 16:15:43 1322 10

原创 关于SpringCloud的那些知识点

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

2021-05-15 11:10:36 2266 13

原创 关于Mysql面试需要掌握的知识点

一张表,里面有 ID 自增主键,当 insert 了 17 条记录之后,删除了第 15,16,17 条记录,再把 Mysql 重启,再 insert 一条记录,这条记录的 ID 是 18 还是 15 ?如果表的类型是 MyISAM,那么是 18 ,因为 MyISAM 表会把自增主键的最大 ID 记录到数据文件里,重启 MySQL 自增主键的最大ID 也不会丢失 。如果表的类型是 InnoDB,那么是 15 ,InnoDB 表只是把自增主键的最大 ID 记录到内存中,所以重启数据库或者是对表进行O

2021-05-09 14:03:55 2450 12

原创 【多线程与高并发】从一则招聘信息进入多线程的世界

多线程的学习方法多线程作为面试的重灾区,如果我们能够进行深入的了解和使用,对我们而言是非常有有益的,尤其是在面试的时候,如果多线程回答的好,是非常能够加分的。这样才能够经受住面试官的夺命连环问!不管学什么,我们都需要有一个整体的认知,俯瞰其全貌,了解其细节,如果可以的话,最好是画一个思维导图,将其中的分支和一个个的小的知识点,记录上去,方便我们学习的时候,逐步有条理的分解性学习,从而达到从点到面,从面到体的过程。多于多线程的学习,比较推荐的自然还是自己动手做小实验和了解理论基础,我们在时间充裕的情况下

2021-05-05 15:07:30 3344 19

原创 【多线程与高并发】这可能是最全的多线程面试题了

1. 如何预防死锁?首先需要将死锁发生的是个必要条件讲出来:互斥条件 同一时间只能有一个线程获取资源。不可剥夺条件 一个线程已经占有的资源,在释放之前不会被其它线程抢占请求和保持条件 线程等待过程中不会释放已占有的资源循环等待条件 多个线程互相等待对方释放资源死锁预防,那么就是需要破坏这四个必要条件:由于资源互斥是资源使用的固有特性,无法改变,我们不讨论破坏不可剥夺条件一个进程不能获得所需要的全部资源时便处于等待状态,等待期间他占有的资源将被隐式的释放重新加入到系统的资源列表中

2021-04-28 23:16:56 8336 12

原创 【死磕JVM】这可能是最全的JVM面试题了

1. 描述一下jvm内存模型,以及这些空间的存放的内容 ?2.堆内存划分的空间,如何回收这些内存对象,有哪些回收算法?垃圾回收算法: 标记清除、复制(多为新生代垃圾回收使用)、标记整理3.如何解决线上gc频繁的问题?查看监控,以了解出现问题的时间点以及当前FGC的频率(可对比正常情况看频率是否正常)了解该时间点之前有没有程序上线、基础组件升级等情况。了解JVM的参数设置,包括:堆空间各个区域的大小设置,新生代和老年代分别采用了哪些垃 圾收集器,然后分析JVM参数设置是否合理。

2021-04-25 20:52:49 11497 35

原创 【死磕JVM】用Arthas排查JVM内存 真爽!我从小用到大

Arthas是啥当我们系统遇到JVM或者内存溢出等问题的时候,如何对我们的程序进行有效的监控和排查,就发现了几个比较常用的工具,比如JDK自带的 jconsole、jvisualvm还有一个最好用的工具——jprofiler,但是这个是收费的,或者除了很有钱的公司,一般很少人会用这个,还有一个就是我们今天的主角——Arthas ,为什么今天会重点讲这个呢?官网地址:http://arthas.gitee.io/GitHub地址:https://github.com/alibaba/arthas/.

2021-04-21 22:40:08 21739 11

原创 【死磕JVM】看完这篇我也会排查JVM内存过高了 就是玩儿!

前言CPU 是时分的,操作系统里面有很多线程,每个线程的运行时间由CPU决定,CPU会分给每一个线程一个时间片,时间片是一个很短的时间长度,如果在时间片内,线程一直占有,就是100%,我们应该意识到,CPU运行速度很快(主频非常高),除非是密集型耗费CPU的运算,其他类型的任务都会在小于时间片的时间内结束。内存过高一般有两种情况:内存溢出和内存泄露内存溢出: 程序分配的内存超过物理机的内存大小,导致无法继续分配内存,出现OOM报错内存泄露: 不再使用的对象一直占据着内存不释放,导致这块内存浪费掉,

2021-04-17 16:29:38 11400 25

原创 【死磕JVM】什么是JVM调优?

想要学习JVM调优,我们必须提前知道他们的一些参数,这样才方便我们更好的去使用他们JVM常用命令行参数JVM的命令行参数参考: https://docs.oracle.com/javase/8/docs/technotes/tools/unix/java.html1. 查看参数列表虚拟机参数分为基本和扩展两类,在命令行中输入 JAVA_HOME\bin\java就可得到基本参数列表。在命令行输入 JAVA_HOME\bin\java –X就可得到扩展参数列表。2. 基本参数说明:-clien

2021-04-13 22:54:53 6259 15

原创 【死磕JVM】给同事讲了一遍GC后,他要去面试,年轻人,就是容易冲动!

事情是这个样子的,有一天正在和同事聊公司的哪个小姐姐好看,怎么去约别人出来,走着走着同事看到了一个垃圾桶,发出来自灵魂的提问说,小农你知道什么是垃圾吗?这个弯属实有点没想到,好在经历过大风大浪的人,这点算什么,垃圾是啥,垃圾就是没有引用的对象就是垃圾啊,这你都不知道?...

2021-04-02 17:14:53 2660 4

原创 【死磕JVM】一道面试题引发的“栈帧”!!!

前言最近在小农的朋友——小勇在找工作,开年来金三银四,都想跳一跳,找个踏(gao)实(xin)一点的工作

2021-03-14 18:44:53 4566 18

原创 【死磕JVM】五年 整整五年了 该知道JVM加载机制了!

类加载Java虚拟机类加载过程是把Class类文件加载到内存,并对Class文件中的数据进行校验、转换解析和初始化,最终形成可以被虚拟机直接使用的java类型的过程和那些编译时需要连接工作的语言不同,在Java语言里,类型的加载,连接和初始化过程都是在程序 运行期间完成的,这种策略虽然会令类加载时稍微增加一些性能开销,但是会为java应用程序提供比较高的灵活性。当我们使用到某个类的时候,如果这个类还未从磁盘上加载到内存中,JVM就会通过三步走策略(加载、连接、初始化)来对这个类进行初始化,JVM完

2021-02-27 17:29:52 9292 40

原创 【死磕JVM】JVM快速入门之前戏篇

简介Java是一门可以跨平台的语言,但是Java本身是不可以实现跨平台的,需要JVM实现跨平台。javac编译好后的class文件,在Windows、Linux、Mac等系统上,只要该系统安装对应的Java虚拟机,class文件都可以运行。达到 ”一次编译,到处运行” 的效果。什么是JVMJVM是可以运行在Java代码的虚拟的计算机,既然是虚拟的计算机,当然也包含自己的CPU、字节码指令集、寄存器、栈、垃圾回收、堆和存储方法域,我们可以理解成JVM自己就是一套操作系统。Java从编译到执行Virt

2021-02-24 15:51:42 3043 25

原创 运维:生产日志重复打印了,赶紧来看看~

一、前言在一次生产环境发布后,运维对我说,你这个日志打印了两遍,你看一下,我很好奇,打印了两遍,本地和测试都没有这个问题啊,然后运维就发了下面两个文件给我,一看还真是,日志怎么打印了两遍启动也是日志会打印两遍二、解决方案刚开始是看资料说设置:配置文件中logger的additivity属性为 false但是还是会重复打印两遍日志,并没有什么特别的效果但是后来一想,本地和测试都可以,只有生产不行,是不是文件日志文件设置的有问题,于是重新写了日志类:logback-spring.xml&lt

2021-02-04 11:07:10 4480 4

jquery easyui api

2016-08-08

java 发送邮件

java 发送邮件

2016-08-04

自定义注解案例

自定义注解案例

2016-06-03

socket tcp/udp 总结案例

socket tcp/udp 总结案例

2016-05-22

CXF+Spring+自定义拦截器 WebService实例源码下载

这里少了一个类,是根据实体类生成xml的文件下载地址为:http://download.csdn.net/detail/qq_14996421/9495688

2016-04-19

根据实体类生成xml文件方法

根据实体类生成xml文件

2016-04-19

CXF+Spring+自定义拦截器 webservice源码下载

CXF+Spring+自定义拦截器 webservice源码下载

2016-04-19

C#操作数据库

C#操作数据库,实现增删改查,实现连接字符串的功能

2014-04-29

空空如也

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

TA关注的人

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