- 博客(116)
- 资源 (2)
- 收藏
- 关注
原创 知识点总结(一)
1. 谷粒商城–环境搭建–笔记一1.1 修改CentOS默认yum源为国内yum镜像源1.2 CentOS安装docker1.3 docker常用命令1.4 配置 docker 镜像加速1.5 docker安装mysql5.71.6 docker安装redis1.7 开发环境统一(maven,Idea&VsCode插件,git配置)2. 谷粒商城–注册中心配置中心及网关–笔记二2.1 nacos注意(启动单节点)2.2 结合 SpringCloud Alibaba 我们最终的
2022-03-18 10:14:30 2025
原创 Linux CentsOS定时删除一个目录下(包含子目录)的改动时间大于12小时的文件
Linux CentsOS定时删除一个目录下(包含子目录)的改动时间大于12小时的文件
2024-09-25 11:05:07 248
原创 jantic/DeOldify部署(图片上色)附带Dockerfile和镜像
jantic/DeOldify部署(图片上色)附带Dockerfile和镜像
2024-09-09 13:13:50 1056
原创 TencentARC/GFPGAN人脸恢复Ubuntu-22.04搭建(附带Docker镜像)
GFPGAN 旨在开发一种用于现实世界人脸恢复的实用算法。 它利用封装在预训练面部 GAN(例如 StyleGAN2)中的丰富多样的先验来进行盲人面部恢复。
2024-07-29 14:44:29 676
原创 Springboot 多数据源事务
在一个service方法上使用的事务,其中有方法是调用的多数据源orderDB,但是多数据源没有生效,而是使用的primaryDB。
2024-07-24 17:45:51 1131
原创 Springboot整合阿里云ONS RocketMq(4.0 http)
Springboot整合阿里云ONS RocketMq(4.0 http)
2024-06-17 16:48:20 1163
原创 JustAuth Illegal state xx问题
使用飞书登录有些时候会登录失败,查看日志出现以上错误Illegal state [FEISHU],但是测试环境没有出现这个情况
2024-06-07 10:49:52 986
原创 java springboot 微信小程序登录,获取获取手机号,获取unionId和解密用户信息
java springboot 微信小程序登录,获取获取手机号,获取unionId和解密用户信息
2024-05-17 21:00:00 1239
原创 SpringBoot整合阿里云文件上传OSS以及获取oss临时访问url(临时url进行缩放)
直接拿那返回的url去访问,发现AccessDenied,这种情况就是没有开放bucket的公共读的权限,有如下几种解决方案: - 直接bucket开启公共读权限,所有人都可以访问,但是不安全 - bucket指定白名单,指定服务器ip可以访问(我认为比较好的一种方式) - 使用STS以及签名URL临时授权访问OSS资源(本次我使用的)
2024-03-12 18:00:00 2205
原创 springboot 注解属性转换字典
可以看到通过注解生成了一个statusText字段,并且为字段中配置的转换后的值。此处Vo属性上加上自定义注解。
2024-02-29 14:03:11 879
原创 mysql which is not in SELECT list; this is incompatible with DISTINCT解决方案
mysql报错Expression #1 of ORDER BY clause is not in SELECT list, references column ‘xxx’ which is not in SELECT list;与 order by 在一起用时则会报3065错误。因为mysql5.7的语法比 mysql5.6 的语法更严格,将DISTINCT 与 order by 一起用时这两个都会进行排序处理。长期解决方案:/etc/my.cnf增加如下配置。这是在 mysql5.7 版本,
2023-11-30 09:36:27 1807
原创 实战排查内存泄漏
大量的字符串导致的内存占用,但在GC之后就会清除问题不大字符串来源:日志中有大量数据mybatis大量的sql语句(sqlSession导致的内存泄漏)解决方案:关闭日志/减少日志的打印(只打印关键日志)
2023-10-25 17:18:44 425
原创 springboot-admin整合及使用
Spring Boot Admin(SBA)是一个开源的社区项目,用于管理和监控 Spring Boot 应用程序。应用程序可以通过 http 的方式,或 Spring Cloud 服务发现机制注册到 SBA 中,然后就可以实现对 Spring Boot 项目的可视化管理和查看了。Spring Boot Admin 可以监控 Spring Boot 单机或集群项目,它提供详细的健康 (Health)信息内存信息JVM 系统和环境属性垃圾回收信息日志设置和查看定时任务查看。
2023-10-08 13:00:00 927
原创 使用 Docker 部署 Prometheus + Grafana 监控平台
使用 Docker 部署 Prometheus + Grafana 监控平台
2023-08-08 14:39:57 265
原创 JasperReport与SpringBoot整合及模板制作
在企业级应用开发中,报表生成、报表打印下载是其重要的一个环节。除了Excel报表之外,PDF报表也有广泛的应用场景,必须用户详细资料,用户简历等目前世面上比较流行的制作PDF名称介绍是一个强大、灵活的报表生成工具,能够展示丰富的页面内容,并将之转换成PDFOpenofficeopenoffice是开源软件且能在windows和linux平台下运行,可以灵活的将word或者Excel转化为PDF文档。iText PDFiText是著名的开放项目,是用于生成PDF文档的一个java类库。
2023-07-24 11:35:36 3556 3
原创 Netty核心技术十一--用Netty 自己 实现 dubbo RPC
远程 过程调用,是一个计算机 通信协议。该协议允许运 行于一台计算机的程序调 用另一台计算机的子程序, 而程序员无需额外地为这 个交互作用编程两个或多个应用程序都分 布在不同的服务器上,它 们之间的调用都像是本地 方法调用一样(如图)常见的 RPC 框架有: 比较知名的如阿里的Dubbo、google的gRPC、Go语言的rpcx、Apache的thrift, Spring 旗下的 Spring Cloud。
2023-07-15 15:54:24 2463 1
原创 Netty核心技术十--Netty 核心源码剖析
每当ServerSocket创建一个新的连接,就会创建一个Socket,对应的就是目标客户端。每一个新创建的Socket 都将会分配一个全新的 ChanneIPipeline(以下简称 pipeline)每一个ChannelPipeline内部都含有多个ChannelHandlerContext(以下简称 Context)他们一起组成了双向链表,这些Context 用于包装我们调用addLast 方法时添加的ChannelHandler (以下简称handler)关系图。
2023-07-11 10:36:11 1036
原创 Netty核心技术九--TCP 粘包和拆包及解决方案
要求客户端发送 5 个 Message 对象, 客户端每次发送一个Message对象服务器端每次接收一个Message, 分5次进行解码,每读取到一个Message,会回复一个Message 对象 给客户端.示例1的代码基础上做扩充len:每个数据包的长度content:每个数据包的内容//协议包 public class MessageProtocol {//关键 private byte [ ] content;return len;} }个人总结。
2023-07-08 14:03:50 754
原创 Netty核心技术八--Netty编解码器和handler的调用机制
netty的组件设计:Netty的主要组件有ChannelEventLoopChannelPipe等例如,实现ChannelInboundHandler接口(或ChannelInboundHandlerAdapter),你就可以接收入站事件和数据,这些数据会被业务逻辑处理。当要给客户端发送响应时,也可以从ChannelInboundHandler冲刷数据。**业务逻辑通常写在一个或者多个ChannelInboundHandler中。
2023-07-02 10:49:31 1574
原创 Netty核心技术七--Google Protobuf
Protobuf 是Google 发布的开源项目,全称是一种轻便高效的结构化数据存储格式,可以用于结构化数据串行化,或者说序列化。它很适合做数据存储或 RPC[远程过程调用 remote procedure call ] 数据交换格式。目前很多公司 http+json 向 tcp+protobuf转型Protobuf 是以 message 的方式来管理数据的.支持跨平台、跨语言,即[客户端和服务器端可以是不同的语言编写的](支持目前绝大多数语言,例如 C++、C#、Java、python 等)
2023-06-21 18:23:07 441
原创 Netty核心技术四--Netty概述
Netty 是由 JBOSS 提供的一个 Java 开源框架。Netty 提供异步的、基于事件驱动的网络应用程序框架,用以快速开发高性能、高可靠性的网络IO程序
2023-06-18 11:23:22 588
原创 Netty核心技术六--Netty核心模块组件
Bootstrap 意思是引导,一个 Netty 应用通常由一个Bootstrap 开始,**主要作用是配置整个 Netty 程序,串联各个组件**,Netty 中 **Bootstrap 类是客户端程序的启动引导类**,**ServerBootstrap 是服务端启动引导类**
2023-06-17 14:02:41 724
原创 Netty核心技术五--Netty高性能架构设计
1. 基于 I/O 复用模型:**多个连接共用一个阻塞对象**,应用程序只需要在一个阻塞对象等待,无需阻塞等待所有连接。当某个连接有新的数据可以处理时,操作系统通知应用程序,线程从阻塞状态返回,开始进行业务处理Reactor 对应的叫法: 1. `反应器模式` 2. `分发者模式(Dispatcher)` 3. `通知者模式(notifier)`2. 基于线程池复用线程资源:不必再为每个连接创建线程,**将连接完成后的业务处理任务分配给线程进行处理,一个线程可以处理多个连接的业务。**
2023-06-04 14:39:22 817
原创 Netty核心技术三--NIO编程
Java NIO的非阻塞模式,使一个线程从某通道发送请求或者读取数据,但是它仅能得到目前可用的数据,如果目前没有数据可用时,就什么都不会获取,而**不是保持线程阻塞**,所以直至数据变的可以读取之前,该线程可以继续做其他的事情。非阻塞写也是如此,一个线程请求写入一些数据到某通道,但不需要等待它完全写入,这个线程同时可以去做别的事情。
2023-05-20 14:42:19 729
原创 Netty核心技术二--BIO编程
Java BIO 就是传统的java io 编程,其相关的类和接口在java.io: 同步阻塞,服务器实现模式为一个连接一个线程,即客户端有连接请求时服务器端就需要启动一个线程进行处理,如果这个连接不做任何事情会造成不必要的线程开销,可以通过线程池机制改善(实现多个客户连接服务器)。BIO方式适用于连接数目比较小且固定的架构,这种方式对服务器资源要求比较高,并发局限于应用中,JDK1.4以前的唯一选择,程序简单易理解。
2023-05-20 14:40:46 639
原创 Netty核心技术一--Netty介绍和应用场景
Netty 是由JBOSS提供的一个 Java 开源框架,现为Github上的独立项目。Netty 是一个异步的基于事件驱动的网络应用框架用以快速开发高性能、高可靠性的网络 IO 程序。利用Ajax技术对异步进行理解左图为没有使用Ajax的B/S,右图为使用Ajax的B/S左图解析:客户通过浏览器访问服务器的流程是固定阻塞的,必须是1->2->3,浏览器想继续向下执行必须等待服务器的响应右图解析:客户通过浏览器访问服务器,浏览器想继续向下执行不用。
2023-05-14 12:43:02 463
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人