![](https://img-blog.csdnimg.cn/20201014180756918.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
spring boot
文章平均质量分 87
Julywhj
负责软件开发,及其系统架构设计。
展开
-
从7个角度解释Netty为什么这么快?深入实践基于Netty构建Dubbo服务
Netty 是一个高性能、异步事件驱动的NIO 框架,基于 JAVA NIO 提供的 API 实现。它提供了对TCP、UDP 和文件传输的支持,作为一个异步 NIO 框架,Netty 的所有 IO 操作都是异步非阻塞的,通过 Future-Listener 机制,用户可以方便的主动获取或者通过通知机制获得 IO 操作结果.一、Netty 高性能的原因在 IO 编程过程中,当需要同时处理多个客户端接入请求时,可以利用多线程或者 IO 多路复用技术进行处理。IO 多路复用技术通过把多个 IO 的阻塞..原创 2022-01-17 21:55:44 · 1362 阅读 · 0 评论 -
基于腾讯云tdmq消息队列封装SpringBootStarter(一)
一、环境准备1.1 注册腾讯云TDMQ创建tdmq集群创建完成后记录下集群ID(clusterId);1.2 创建命名空间创建好集群后,在命名空间中新建命名空间,命名空间名称可以根据实际业务场景进行区分,比如这里创建可以根据测试环境、预发布环境、生产环境等进行区分创建。新建命名空间1.3、创建好命名空间后,新建个`topic`主题。创建topic以上信息创建好后,我们在集群中可以看到集群的访问地址,如下:查看接入地址在创建tdmq集群时我们需要..原创 2022-01-03 14:38:44 · 1367 阅读 · 0 评论 -
基于腾讯云tdmq消息队列封装SpringBootStarter(二)
关于腾讯云tdmq的基本使用参见《基于腾讯云tdmq消息队列封装SpringBootStarter(一)》,这里我们基于之前的内容在次进行优化封装。一、创建消费者注解(TdmqConsumer)和生产者注解(TdmqProducer)1.1、基础工程回顾首先我们回顾下上一章完成的基础功能。工程目录上一章我们创建了配置目录config、生产者和消费者目录,以及META-INF目录和spring.factories配置文件。在此基础上我们继续完善我们的工程。1.2、创建注解在原创 2022-01-03 14:33:00 · 1119 阅读 · 0 评论 -
Shiro重构:整合token和cookie实现登陆及验证
Shiro重构:整合token和cookie实现登陆及验证认证服务开始只支持PC端的cookie认证方式,因业务需要,要对小程序、H5、App等移动端设备进行认证,这里复用认证服务。由于小程序不支持cookie认证方式,采用token认证方式,这里对认证服务进行重构。认证服务主要是有Shiro框架研发,我们简单熟悉下Cookie的认证流程。Shiro的cookie认证流程我们简单说明下,shiro是在其默认的会话管理器DefaultWebSessionManager中获取请求携带过来的cooki原创 2021-10-16 17:22:14 · 4074 阅读 · 8 评论 -
Go语言Elasticsearch数据清理工具
Go语言Elasticsearch数据清理工具微服务架构中收集通常大家都采用ELK进行日志收集,同时我们还采用了SkyWalking进行链路跟踪,而SkyWalking数据存储也用到了ES,SkyWalking每天产生大量的索引数据,如下:WX20211008-104751@2x这里一天大概产生了700左右个索引数据。对历史的链路数据我们不做过多的保留。这里我整理了个小工具,可以定期清理es数据。一、清理思路可以看到索引数据都是以日期结尾,我们可以根据日期去匹配索引数据,并对原创 2021-10-08 11:34:21 · 837 阅读 · 0 评论 -
RabbitMq消息丢失原因及其解决方案
RabbitMq消息丢失原因及其解决方案一、RabbitMQ消息丢失原因我们首先了解下一条消息从生产到消费的整个流程如下:生产-->MQ Broker --> 消费。所以这三个环节都有丢失消息的可能。1.1、生产者丢失消息生产者将数据发送到rabbitmq的时候,可能因为网络问题导致数据就在半路给搞丢了。1.使用事务(性能差) RabbitMQ 客户端中与事务机制相关的方法有三个: channel.txSelect 、channel.txCommit 和 cha原创 2021-10-07 17:28:25 · 5492 阅读 · 4 评论 -
SpringBoot 集成RabbitMQ
SpringBoot 集成RabbitMQ一、Docker安装Rabbit MQ运行下面命令,docker 可自动拉取镜像,并启动mq。dockerrun-d--namerabbitmq-p5671:5671-p5672:5672-p4369:4369-p25672:25672-p15671:15671-p15672:15672rabbitmq:management我们执行完成后可以运行docker ps查看下mq运行情况我们看到RabbitMq...原创 2021-10-07 12:45:21 · 1471 阅读 · 0 评论 -
Mybaits 面试题
1、什么是mybaitis?1、mybatis 是一个半ORM框架,它内部封装了JDBC,开发时只需要关注SQL语句本身,不需要花费精力去处理加载驱动、创建连接、创建statement等繁杂的过程。程序员直接编写原生态sql,可以严格控制sql执行性能,灵活度高。2、Mybatis 可以使用XML或注解来配置和映射原生信息,将POJO映射成数据库中的记录,避免了几乎所有的JDBC代码和手动设置参数以及获取结果集。3、通过xml文件或注解的方式将要执行的各种statement配置起来,并通过java对象原创 2021-08-15 22:21:00 · 278 阅读 · 0 评论 -
SpringCloud研发微信公众平台-前端环境搭建
SpringCloud研发微信公众平台-前端环境搭建本次课程前端技术栈采用 uni-app + uview 框架进行研发。研发工具采用HBuilderx工具研发工具下载HBuilderx工具 官方下载地址,这里推荐下载App开发版,下载对应的平台版本即可。工程创建打开安装好的编译器HBuilderx。创建完成后,项目目录如下项目本地运行微信小程序方式运行在编辑器中,选择运行–运行到小程序模拟器–微信开发者工具这个过程第一次时间较长,如出现一下页面,则项目运行成功。[外链图片转存原创 2021-07-07 07:41:54 · 346 阅读 · 2 评论 -
JAVA 枚举详解(枚举基本使用高级用法枚举扩展)
JAVA 枚举详解 java 枚举类型的基本想法非常简单:这些类通过共有的静态final域为每个枚举常量导出一个实例。枚举类型没有可以访问的构造器,所以它是真的final类。客户端不能创建枚举类型的实例,也不能对它进行扩展,因此不存实例,而只存在声明过程的枚举常量。也就是枚举类型是实例受控的。它们是单例(Singleton)的范型化,本质上是单元素的枚举。 枚举类型保证了编译时的类型安全。...原创 2019-03-02 20:41:32 · 18123 阅读 · 3 评论 -
一、Spring Cloud项目搭建
1、建立父工程 首先创建一个父工程,名字为spring cloud打开IDEA(以下编码过程编码工具采用IDEA)。创建新工程为Spring Cloud。 选择下一步引入pom.xml代码如下:<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/...原创 2018-12-31 18:10:12 · 552 阅读 · 0 评论 -
SpringBoot Web开发
1、简介使用SpringBoot;1)、创建SpringBoot应用,选中我们需要的模块;2)、SpringBoot已经默认将这些场景配置好了,只需要在配置文件中指定少量配置就可以运行起来3)、自己编写业务代码;自动配置原理?这个场景SpringBoot帮我们配置了什么?能不能修改?能修改哪些配置?能不能扩展?xxxxxxxAutoConfiguration:帮我们给容器中自动配置组...原创 2018-11-23 09:49:57 · 467 阅读 · 0 评论 -
Spring Boot入门 (二) :无xml配置实现
无xml配置的实现自Spring3.X 以后 spring 提供了很多的注解来代替XML文件的配置,最核心的是下面两个注解。::@Configuration:: 标注该类是配置类,类似于我们定义的applicationContext.xml::@Bean:: 类似于我们在之前的spring配置文件中配置的&amp;lt;bean id=&quot; &quot; class=&quot;&quot;&原创 2018-10-27 21:21:04 · 1062 阅读 · 0 评论 -
Spring Boot 入门(一):入门案例
Springboot 入门入门案例创建spring boot项目在pom.xml 文件,我们需要添加两部分依赖。— 让我们的项目继承spring-boot-starter-parent 的工程— 加入spring-boot-starter-web 的依赖— spring boot 官网搭建教程 Spring Boot Reference Guide&amp;lt;!-- Inherit ...原创 2018-10-27 19:10:09 · 423 阅读 · 0 评论 -
Spring Boot 入门(三) :自动化配置实现
自动化配置实现我们在上章编写入门案例的时候,我们使用的是Spring Mvc 作为我们的表现层框架,但是我们都知道我们要使用Spring Mvc 我们就需要在web.xml文件中配置Spring Mvc 的前端控制器DispatcherServlet。但是我们在编写入门案例的时候,我们并没有去做任何的配置,那么我们为什么可以使用呢?原因是Spring Boot 给我们做了自动化配置,下面我们学习...原创 2018-10-28 16:12:05 · 291 阅读 · 0 评论