自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Spring 接口重试机制之listeners参数

上篇文章中我们简单介绍了的功能及简单用法,但是注解@Retryable还有一个参数listeners我们没有进行说明,那么本篇文章我们详细介绍一个这个参数的用法。

2023-10-08 16:04:42 155

原创 Spring 接口重试机制

大家在做项目的时候,往往会遇到一些接口由于网络抖动等问题导致接口响应超时等,这时候我们会希望能够按照一定的规则进行接口请求重试。

2023-10-08 16:03:42 168

原创 Spring 事件机制

大家在做项目的时候,往往会遇到一些不是主流程的功能,但是需要在主流程中触发的功能,比如在保险领域的签单流程中需要给用户发送短信或者邮件的功能。

2023-10-08 16:01:25 103

原创 Java整合MinIO实现文件管理

MinIoMinIO基于Apache License 2.0开源协议的对象存储服务。它兼容Amazon S3云存储接口。适合存储非结构化数据,如图片,音频,视频,日志等。MinIo。

2023-06-17 22:17:54 4385

原创 同步非阻塞IO模型

同步非阻塞IO模型有上上篇IO模型中的,同步非阻塞IO模型,我们能够知道,用户线程一直发送请求,内核一直都能都够返回,直到内核完成准备数据、数据拷贝的工作。并且返回成功的指示。在此过程中用户线程不是阻塞的状态实现使用java来实现同步非阻塞IO模型,即我们所说的NIO的模型客户端实现/** * @author:triumphxx * @Date:2021/11/12 * @Time:11:03 下午 * @

2021-12-09 22:25:43 413

原创 同步阻塞IO模型

同步阻塞IO模型有上篇IO模型中的,同步阻塞IO模型,我们能够知道,用户线程发起请求后就一直阻塞的等待内核完成准备数据、数据拷贝的工作。并且返回成功的指示。实现使用java来实现同步阻塞IO模型,即我们所说的BIO的模型客户端实现/** * @author:triumphxx * @Date:2021/10/12 * @Time:10:29 下午 * @微信公众号:北漂码农有话说 * @

2021-12-08 21:06:23 143

原创 网络编程相关概念

网络编程相关概念最近在看Tomcat源码,涉及到网络编程模型,所以将这块的知识点进行一个归纳整理。网络网络是由若干节点(计算机)和连接这些节点的链路构成,表示诸多对象及其相互联系。网络特性1、资源共享网络的主要功能就是资源共享。共享的资源包括软件资源、硬件资源以及存储在公共数据库中的各类数据资源。网上用户能部分或全部地共享这些资源,使网络中的资源能够互通有无、分工协作,从而大大提高系统资源的利用率。2、快速传输信息分布在不同地区的计算机系统,可以通过网络及时、高速地传递各种信息,交

2021-11-24 20:18:54 1705

原创 个人博客网站升级

个人博客网站升级由于本人学习的一些知识点需要要个地方进行记录,所有之前搞了个静态网站,但是最近看着特别的别扭,所以想想着给它搞得好看一点,所以说干就干,将网站来个升级。看这篇文章之前,建议大家,先看这个几篇1、是时候来一个个人博客网站了2、什么?你还没有自己的域名?3、你的个人博客网站该上线了!4、PV与UV你的网站也可以升级前后对比升级前升级后大家看着升级后的效果还是不错的哈。选择主题首先我们选择自己喜欢的主题,看过我前面文章的小伙伴都知道,我的网站是基于VuePress

2021-11-21 22:59:00 4160

原创 TX-LCN分布式事务之TCC模式

什么是TCC模式TCC模式是TX-LCN分布式事务模式的一种,T-try-尝试执行业务、C-confirm-确认执行业务、C-cancel-取消执行业务原理TCC事务机制相对于传统事务机制(X/Open XA Two-Phase-Commit),其特征在于它不依赖资源管理器(RM)对XA的支持,而是通过对(由业务系统提供的)业务逻辑的调度来实现分布式事务。主要由三步操作,Try: 尝试执行业务、 Confirm:确认执行业务、 Cancel: 取消执行业务。模式特点该模式对代码的嵌入性高,要

2021-10-26 21:13:00 403

原创 TX-LCN分布式事务之LCN模式

什么是LCN模式LCN模式是TX-LCN分布式事务模式的一种,L-lock-锁定事务单元、C-confirm-确认事务模块状态、notify-通知事务单元原理LCN模式是通过Spring AOP的方式代理Connection的方式实现对本地事务的操作,然后在由TxManager统一协调控制事务。当本地事务提交回滚或者关闭连接时将会执行假操作,该代理的连接将由LCN连接池管理。模式特点该模式对代码的嵌入性为低。该模式仅限于本地存在连接对象且可通过连接对象控制事务的模块。该模式下的事务提交与回滚

2021-10-26 19:57:16 492

原创 分布式事务之TX-LCN

什么是TX-LCNTX-LCN定位于一款事务协调性框架,框架其本身并不操作事务,而是基于对事务的协调从而达到事务一致性的效果。TX-LCN 主要有两个模块,Tx-Client(TC) Tx-Manager™. TC作为微服务下的依赖,TM是独立的服务。TX-LCN原理核心步骤:创建事务组:是指在事务发起方开始执行业务代码之前先调用TxManager创建事务组对象,然后拿到事务标示GroupId的过程。加入事务组:添加事务组是指参与方在执行完业务方法以后,将该模块的事务信息通知给Tx

2021-10-24 21:58:09 275

原创 Elasticsearch之文档操作

Elasticsearch之文档操作这是es系列的第五篇文章了,阅读前四篇有助于小伙伴们理解本篇文章。1、Elasticsearch总览2、Elasticsearch安装3、Elasticsearch上手4、Elasticsearch之mapping回顾前面的四篇文章我们讨论了什么是es,是用来干什么的,如何进行安装,怎么样建立索引库,如何给索引库添加mapping映射。本篇我们开始讨论如何添加文档,如何修改文档已经如何删除文档。文档什么是es文档,其实mapping就是es的数据字段约束

2020-09-11 12:59:01 163

原创 Elasticsearch之mapping

Elasticsearch之mapping这是es系列的第四篇文章了,阅读前三篇有助于小伙伴们理解本篇文章。1、Elasticsearch总览2、Elasticsearch安装3、Elasticsearch上手回顾上一篇文章和小伙伴们简单聊了一下关于es的基本操作,包括检查集群状态、创建索引、添加文档、删除索引等。那么本篇我们就再继续完善我们的学习。首先我们先来来,补充一些上篇文章中遗漏的知识点。上篇文章我们讨论了如何查询索引,用如下_cat的api实现的:curl -X&nbs

2020-09-04 13:23:53 234

原创 上手Elasticsearch

REST接口如上所示,我们将节点个集群启动后,接下来我们就要和es进行通信,es为开发者提供了强大的rest api功能,能够让开发者和es进行方便的"沟通",包括集群的健康检查,对索引进行增、删、改、查和查询的操作,已经实现高级的搜索功能。检查集群执行如下操作,就能够看到我们的集群的状态和其他的一些信息数据curl -X GET "localhost:9200/_cat/health?v"es会相应如下的信息给我们❝由上图:我们可以看到,集群的名称、集群的状态

2020-08-26 13:06:43 107

原创 Elasticsearch不同系统方式安装

liunx 安装下载登录你的服务器,作者在这里准备了一台云服务器,创建一个目录,将Elasticsearch下载到你的服务器上。# 创建目录 esmkdir es # 进入es目录cd /es# 下载eswget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.8.0-linux-x86_64.tar.gz如下图,正在进行下载。可能

2020-08-22 07:31:54 222

原创 搞一搞Elasticsearch

Elasticsearch总览今天开始我们开启一个新的系列Elasticsearch系列,作者会按下面几个方面来和大家聊es,它是什么、它解决了那些问题、它的基本原理是什么、它要怎么配置、它要怎么用等一系列的问题展开和小伙伴们讨论,今天开始我们的第一篇,认识一下我们本系列的主角。Elasticsearch总体介绍Elasticsearch 是一个分布式、高扩展、高实时的搜索与数据分析引擎。它能很方便的使大量数据具有搜索、分析和探索的能力。Elasticsearch为所有类型的数据提供近乎实时(从更

2020-08-20 00:49:22 142

原创 换一种方式构建镜像

构建镜像docker系列的前几篇文章,我们都是编辑好了Dockerfile,然后执行docker build命令来,构建我们的镜像。但是这样会有一个问题,如果我们有好多服务需要构建镜像,那么我们就得每一个服务都得执行构建镜像命令。那么我们有什么可以一键构建镜像呢?当然是有的。那就是我们今天聊的主角。maven的docker插件。Maven介绍相信很多的小伙伴现在遇到的大多数的项目都是由maven来构建的(尤其是Java程序员),那么maven是什么呢?由于本文的主题不是maven,作者简单的介绍一下

2020-08-06 08:31:40 123

原创 Docker-compose实战

Docker-compose实战各位小伙伴们,我们前面的篇文章分享了、docker的基础知识点、如何编写一个Dockerfile、docker网络是怎么回事、如何编写docker-compose.yml文件。已经为本文做好了充分的铺垫。那么这边文章就和小伙本们分享如何将你自己的微服务项目进行服务的编排。准备要想编排项目,首先我们得有一个项目。不要着急,作者给大家准备了一个自己的SpringCloud的项目,包含服务注册中心、服务的提供者、服务的消费者、配置中心等。本文我们会用到其中的三个服务来进行服

2020-08-05 08:36:14 149

原创 你该知道的Docker-compose

Docker-compose介绍前几篇文章和小伙伴们,分享了使用Dockerfile来构建镜像,使用docker run等命令来手动启动镜像、docker stop停止镜像、docker kill杀死镜像进程。这种情况只适用于镜像服务不多的情况。然而,现实情况是我们可能同时启停操作成百上千的服务,而且还要在启动之前分析各个服务之间的前后依赖关系,如果此时还是使用手动的方式来操作显然是不现实的。于是docker-compose应运而生。接下来我们就来看看docker-compose。什么是docker-c

2020-08-02 13:05:22 218

原创 Docker 网络探究

Docker 网络docker网络我们来探讨一个docker的network的问题。小伙伴们请看如下命令:docker run -d -p8080:8080 镜像ID❝-p8080:8080这个命令的意思就是将容器的8080端口映射到宿主机的8080端口,这个是我们手动指定的网络端口映射❞场景假如目前我们有很多的容器实例,微服务群,各个服务之间都有相互调用、访问,实现容器互联。那么我们需要做什么?新建docker网络我们需要创建一个网络环境,让需要

2020-08-02 08:54:39 225

原创 Dockerfile你值得拥有

Dockerfile 介绍什么是DockerfileDockerfile是一个用来将你的应用构建为docker镜像的文本文件,文本中的内容是一条一条的指令,这些指令的集合在docker引擎中执行,最终构建出你的应用的docker镜像。准备需要小伙伴们先在本地或者服务器上安装dockerdocker安装看这篇就够了命令介绍先来看一个简单的Dockerfile文件FROM hub.c.163.com/library/java:8VOLUME /tmpADD target/springboot

2020-08-01 20:52:17 121

原创 该聊一聊容器技术了

Docker 介绍什么是dockerDocker 是一个开源的应用容器引擎,容器,顾名思义就是用来装东西的。我们平常用的服务器你也可以将它视为是一个容器。那么为什么要用Docker,因为它完美的解决了,应用程序和依赖环境的问题。Docker可以将你的应用和应用所依赖的环境打包在一起,形成一个镜像。能够帮助开发者快速的打包、测试、部署应用。核心概念镜像(images):可以理解就是一个软件或者服务,比如mysql镜像,将该镜像运行起来,就能提供存储服务。容器(container):可以理解为

2020-07-26 22:16:38 85

原创 PV与UV你的网站也可以

个人博客网站分析为什么需要流量分析?各位小伙伴,请看下图,你们发现了什么?访问网站的90%以上的人,都只发现了俩个页面:joy: 这个太可惜了,网站上有很多优质的文章啊 :stuck_out_tongue_winking_eye:有句话说的好:没有数据支撑的网站,都是耍流氓 :joy:衡量一个网站运营的好与坏,主要看俩个指标,浏览量(PV)、访客数(UV),PV和UV俩个关键指标,下面我们为网站,添加分析功能,就是为了优化用户体验提升访问量。通过这个分析,我发现小伙伴们对我的网站不是很熟悉

2020-07-21 13:46:43 207

原创 你的个人博客网站该上线了!

个人博客网站部署前置条件各位小伙伴,如果还不知道怎么开发一个个人博客静态网站,那么先看作者的上一篇文章个人博客网站搭建首先要创建好你的个人博客网站项目,我们在来谈如何将你的个人博客网站进行发布。准备由于需要将代码托管到相应的代码仓库,并且能够提供静态网站部署的功能,以下这些平台都可以进行代码托管,当然,自己的云服务器需要另外的方式进行部署。以下的账号或者服务器,小伙伴们自行选择一个就行。GitHub账号GitHub:全球知名的同性交流网站,作为一个程序员不得不去关注的地方。如果你还没有g

2020-07-20 18:44:20 571

原创 什么?还没有自己的域名?

如何注册域名准备这里就以华为云为例进行域名注册移步->华为云,如果没有华为云的账号注册一个就行,登录华为云,找到产品点击域名注册服务进入域名搜索注册然后选择你需要的域名,加入清单,完成购买域名购买完成以后,一定要记得进行域名备案。在备案之前一定要在华为云进行实名认证。登录华为云,登录备案系统,进行备案,按提示要求说明自己的情况。一般需要20天左右就可以备案成功,如果期间备案出现问题,客服人员会和你进行电话沟通。域名解析域名解析:就是你需要将你的域名指向到哪里。需要登录华为云

2020-07-19 23:28:22 108

原创 是时候来一个个人博客网站了

VuePress介绍本人的个人博客网站,网站地址,是基于VuePress进行搭建。什么是VuePress根据官网:VuePress 由两部分组成:第一部分是一个极简静态网站生成器,它包含由 Vue 驱动的主题系统和插件 API,另一个部分是为书写技术文档而优化的默认主题,它的诞生初衷是为了支持 Vue 及其子项目的文档需求。每一个由 VuePress 生成的页面都带有预渲染好的 HTML,也因此具有非常好的加载性能和搜索引擎优化(SEO)。同时,一旦页面被加载,Vue 将接管这些静态内容,并将

2020-07-18 23:43:10 175

原创 那些好用的命令

tree命令平时在写博客的时候,有时会说到项目,需要将自己的项目结构导出来,这时我们需要用到一下命令:tree >> /路径/tree.txt第一次执行的时候会报错-bash: tree: command not found说明,你的电脑环境下是没有,这个命令的,所以你需要安装,使用brew的方式进行安装。安装brewbrew install tree如果没有brew,也会报错-bash: brew: command not found这时,你就需要安装brew命令

2020-07-18 23:25:37 123

原创 springboot整合Quartz实现定时任务(api使用篇)

说明:由于上篇文章我们已经讨论过springboot整合Quartz及相关配置,本次我们只说明Qrtz的增、删、改、启动、停止相关api的使用,其中涉及的其他技术,如:mybatisplus等技术以后进行专题讨论。阅读本篇文章,建议您先看上一篇文章: SpringBoot整合Quartz实现任务定时定时任务操作参数:job的类全路径、job所属组、job的执行时间(cron表达式),这里对这些参数进行封装为一个接收前端参数的QuartzVo,如下:@Datapublic class Qu.

2020-06-21 23:31:04 776

原创 SpringBoot整合Quartz实现任务定时

SpringBoot整合Quartz实现任务定时前言:由于我们本项目选用的Springboot来整合Quartz,官方给我们提供了启动器所以很简单。在以前的版本我们想要使用Quartz需要引入的依赖如下:<dependency> <groupId>org.quartz-scheduler</groupId> <artifactId>quartz</artifactId> <version>2.

2020-06-07 21:41:55 251

原创 SpringBoot之多模块项目搭建

SpringBoot之多模块项目搭建说明:我们通过maven的父子工程来搭建springboot的多模块项目项目的整体结构如下:本项目涉及了到了五个模块framework-web模块主要是放置前端的页面等信息,framework-model放置领域对象,framework-service业务逻辑类放在这里,framework-mapper操作数据库的对象放在这里,framework-common基础公共的类放在这里以上五个模块的依赖关系如下:秉承的是至上而下的依赖关系。具体的项目结构图

2020-05-29 23:42:32 279

原创 SpringCloud之服务生产者与消费者

SpringCloud生产者与消费者上一篇文章我们介绍了Euarka的搭建,本篇文章,我们搭建俩个服务,生产者服务与消费者服务。我们就以电商系统为例:服务生产者,订单查询服务order-server,服务消费者order-clien-ribbon说明:order-server 服务提供查询订单信息的功能order-client作为消费者服务,查询订单信息。生产者服务搭建选择我们需要的依赖,具体依赖如下:<dependency> <groupId>org.sp

2020-05-22 23:50:14 1457

原创 码农理财二

码农理财(二) 上一篇文章,我们说到了,理财第一步就是要分析自己现在拥有的资产是属于资产类型中:生钱资产、耗钱资产还是其他资产。 理财第二步 如何让我们手中的钱越来越值钱,而不是被通货膨胀吃掉秘密武器:被爱因斯坦称为第八大奇迹的复利百度百科是这样说的:复利(Compound Interest),是指在计算利息时,某一计息周期的利息是由本金加上先前周期所积累利息总额来计算的计息方式,也即通常所说的"利说利","利滚利"说白了就是你的利息作为本.

2020-05-21 23:23:41 203

原创 利用Redis相关技术点实现商品热卖排行榜

Redis系列redis相关介绍redis是一个key-value存储系统。和Memcached类似,它支持存储的value类型相对更多,包括string(字符串)、list(链表)、set(集合)、zset(sorted set --有序集合)和hash(哈希类型)。这些数据类型都支持push/pop、add/remove及取交集并集和差集及更丰富的操作,而且这些操作都是原子性的。在此基础上,redis支持各种不同方式的排序。与memcached一样,为了保证效率,数据都是缓存在内存中。区别的是red

2020-05-19 10:20:07 908

原创 码农理财一

码农理财(一)最近抽时间在看理财相关的的东西,突然觉得以前的自己对金钱的管理存在很大问题,比如乱花钱,没有计划的花钱,不懂如何配置自己的资产结构等等。以下是对自己现阶段学习理财方面知识的一个自我总结。理财第一步分析自己现在的资产组成部分,比如,你现在有一套房子、一部车子、一个高级的包包等等等 经过分析以后,确定你的你现在所拥有的资产是属于什么样的资产。资产类型分类如下:说明:资产的类型是如何划分的呢?关注现金流向如果你的资产能够持续的给你带来净现金流入,那么它就是生钱资产

2020-05-17 22:44:38 157

原创 SpingCloud之服务注册中心

SpingCloud系列服务注册中心Spring Cloud 是一系列框架的有序集合,如服务注册发现、配置中心、消息总线、负载均衡、断路器等,都可以用 Spring Boot 的开发风格做到一键启动和部署。下面我们介绍 Spring Cloud 组件之一:服务注册中心Eureka的搭建。注册中心搭建首先我们借助Idea创建一个普通的Spring Boot 项目创建一个普通的Spring Boot项目,并将其命名为eureka-server添加Eureka Server依赖在eureka-s

2020-05-17 18:40:58 103

空空如也

空空如也

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

TA关注的人

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