自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Shawn的个人博客

个人技术分享、总结和笔记

  • 博客(143)
  • 资源 (5)
  • 收藏
  • 关注

原创 Java高级技术之Gradle

Gradle 是一款Google 推出的基于 JVM、通用灵活的项目构建工具,支持 Maven,JCenter 多种第三方仓库;支持传递性依赖管理、废弃了繁杂的xml 文件,转而使用简洁的、支持多种语言(例如:java、groovy 等)的 build 脚本文件;官网地址:作为Java开发程序员,如果想下载Spring、SpringBoot等Spring家族的源码,基本上基于Gradle构建的,所以虽然目前市面上常见的项目构建工具有。

2022-10-28 19:07:12 336

原创 常用的HTTP服务压测工具

在项目正式上线之前,我们通常需要通过压测来评估当前系统能够支撑的请求量、排查可能存在的隐藏bug,同时了解了程序的实际处理能力能够帮我们更好的匹配项目的实际需求,节约资源成本。ab全称,是Apache自带的性能测试工具。使用这个工具,只须指定同时连接数、请求数以及URL,即可测试网站或网站程序的性能通过ab发送请求模拟多个访问者同时对某一URL地址进行访问,可以得到每秒传送字节数、每秒处理请求数、每请求处理时间等统计数据。

2022-10-24 20:29:57 724

原创 Spring常用扩展点

我们知道,IOC(控制反转) 和 AOP(面向切面编程)是spring的基石。除此之外,spring的扩展能力非常强。由于这个优势的存在,让spring拥有强大的包容能力,让很多第三方应用能够轻松投入spring的怀抱。比如:rocketmq、mybatis、redis等。Spring中最常用的11个扩展点自定义拦截器Spring容器对象获取全局异常处理类型转换器导入配置项目启动配置BeanDefinition的修改Bean前后初始化初始化方法容器关闭自定义作用域。

2022-10-24 20:27:24 459

原创 Spring之秒传、断点续传、分片上传和压缩

通俗的说,你把要上传的东西上传,服务器会先做MD5校验,如果服务器上有一样的东西,它就直接给你个新地址,其实你下载的都是服务器上的同一个文件,想要不秒传,其实只要让MD5改变,就是对文件本身做一下修改(改名字不行),例如一个文本文件,你多加几个字,MD5就变了,就不会秒传了分片上传,就是将所要上传的文件,按照一定的大小,将整个文件分隔成多个数据块(我们称之为Part)来进行分别上传,上传完之后再由服务端对所有上传的文件进行汇总整合成原始的文件。

2022-10-24 20:22:29 766

原创 OAuth三方授权登录

OAuth(Open Authorization)是一个关于授权(authorization)的开放网络标准,允许用户授权第三方 应用访问他们存储在另外的服务提供者上的信息,而不需要将用户名和密码提供给第三方移动应用或分享他 们数据的所有内容。OAuth在全世界得到广泛应用,目前的版本是2.0版。协议特点简单:不管是OAuth服务提供者还是应用开发者,都很易于理解与使用;安全:没有涉及到用户密钥等信息,更安全更灵活;开放:任何服务提供商都可以实现OAuth,任何软件开发商都可以使用OAuth;

2022-10-24 20:20:57 352

原创 Spring-Gateway与Nacos相关配置

动态刷新通过线上的配置更新进行推送,不需要代码改动也不需要重启服务器,这样可以更快更方便的进行服务器配置文件修改(因为重启Tomcat往往会消耗大量的时间)。首先需要引入相关依赖,这里默认已经启动Nacos服务器了,可以通过查看一般Gateway配置路由会在配置文件中写死,当我们想添加新路由的时候还得在routes中添加新路由然后重启服务。这样显然是不太合理的,所以动态路由的好处也随之而来。

2022-10-24 20:14:15 570

原创 ShardingSphere5学习笔记

ShardingSphere数据库中间件基础学习互联网业务兴起之后,海量用户加上海量数据的特点,单个数据库服务器已经难以满足业务需要,必须考虑数据库集群的方式来提升性能。高性能数据库集群的第一种方式是"读写分离",第二种方式是"数据库分片";读写分离和数据分片具体的实现方式一般有两种:程序代码封装和中间件封装,中间件软件有**Apache ShardingSphere(程序级别和中间件级别)**和MyCat(数据库中间件)**读写分离原理:**读写分离的基本原理是将数据库读写操作分散到不同的节点上。

2022-10-24 19:12:23 785

原创 几种分布式锁详解

在应用开发中,特别是web工程开发,通常都是并发编程,不是多进程就是多线程。这种场景下极易出现线程并发性安全问题,此时不得不使用锁来解决问题。在多线程高并发场景下,为了保证资源的线程安全问题,jdk为我们提供了关键字和可重入锁,但是它们只能保证一个工程内的线程安全。在分布式集群、微服务、云原生横行的当下,如何保证不同进程、不同服务、不同机器的线程安全问题,jdk并没有给我们提供既有的解决方案。目前主流的实现有以下方式:基于mysql关系型实现基于redis非关系型数据实现。

2022-10-21 14:28:54 62

原创 SpringBoot重试策略Retry

重试机制在网络服务中非常的重要,由于网路可能存在延迟,网络抖动,网络不稳定的情况。同时在分布式服务中网络的请求的高度密集,有些服务不一定能在规定的时间内完成访问。应该请求服务需要重试几次。以保证服务请求成功。例如对接支付接口时,因为回调比较重要,当访问失败时会进行重试,不过此时的重试机制时间是逐步加大,例如30s/1m/10m/1h等,最终到达阈值不在重试对于重试是有场景限制的,不是什么场景都适合重试,比如参数校验不合法、写操作等(要考虑写是否幂等)都不适合重试。远程调用超时、网络突然中断可以重试。

2022-09-28 16:09:33 943

原创 SpringBoot统一异常处理详解

Spring Boot后端接口规范Spring在3.2版本增加了一个注解,可以与、、等注解注解配套使用。不过跟异常处理相关的只有注解,从字面上看,就是异常处理器的意思**Assert(断言)**是Spring 家族的,在我们写测试用例的时候经常会用到,使用断言能让我们编码的时候有一种非一般丝滑的感觉Assert的部分源码,可以看到,Assert 其实就是帮我们把 if {…} 封装了一下,抛出的异常是} } }

2022-09-28 16:09:02 227

原创 Redis接口限流、分布式锁与幂等

Redis6.0学习笔记分布式锁、限流、处理请求接口幂等性,本篇文章重点讲述SpringBoot通过注解和AOP的方式实现Redis的接口限流,Redis使用了Lua脚本实现原子操作;通过redis实现的分布式锁以及处理接口幂等等方案限流就是限制API访问频率,当访问频率超过某个阈值时进行拒绝访问等操作当然这是在代码层面进行的接口限流,现在分布式微服务接口限流基本是在网关处做接口限流/黑白名单等,例如Gateway/Nginx等,详情可以参考Nginx高级篇和SpringCloud Gateway 详解。

2022-09-28 16:07:35 356

原创 Jenkins学习笔记

Jenkins,原名 Hudson,2011 年改为现在的名字。它是一个开源的实现持续集成的软件工具。官方网站:https://www.jenkins.io/GitLab 是一个用于仓库管理系统的开源项目,使用Git作为代码管理工具,并在此基础上搭建起来的Web服务,相当于github和Gitee代码托管平台,只是GitLab是私有的代码托管平台快照依赖构建/Build whenever a SNAPSHOT dependency is built当依赖的快照被构建时执行本job。

2022-09-28 15:34:21 278

原创 分布式文件存储系统MinIO笔记

MinIO 是一个基于Apache License v2.0开源协议的对象存储服务。它兼容亚马逊S3云存储服务接口,非常适合于存储大容量非结构化的数据,例如图片、视频、日志文件、备份数据和容器/虚拟机镜像等,而一个对象文件可以是任意大小,从几kb到最大5T不等。MinIO是一个非常轻量的服务,可以很简单的和其他应用的结合,类似 NodeJS, Redis 或者 MySQL。文档地址(推荐,更新快)(没有及时更新,容易被坑)minio支持多种server启动模式单机模式(无EC码)

2022-09-28 15:26:08 779

原创 Linux Systemd 教程

Systemd 服务的 Unit 文件可以分为三个配置区段:Unit 和 Install 段:所有 Unit 文件通用,用于配置服务(或其它系统资源)的描述、依赖和随系统启动的方式Service 段:服务(Service)类型的 Unit 文件(后缀为 .service)特有的,用于定义服务的具体管理和操作方法sleep 1;: 用户自己定义的单元文件,安装包相关配置,一般是供应商提供的操作系统资源,。通常,只允许包管理工具(yum/dnf/rpm/apt)进行包安装的过程中操作此路径;

2022-09-28 15:14:53 82

原创 SpringBoot生产监控

开发完成后,生产就绪需要做哪些工作呢?我认为,以下三方面的工作最重要。提供健康检测接口。传统采用 ping 的方式对应用进行探活检测并不准确。有的时候,应用的关键内部或外部依赖已经离线,导致其根本无法正常工作,但其对外的 Web 端口或管理端口是可以 ping 通的。我们应该提供一个专有的监控检测接口,并尽可能触达一些内部组件。暴露应用内部信息。

2022-09-28 15:13:40 840

原创 SpringBoot事务详解

事务,就是一组操作数据库的动作集合。事务是现代数据库理论中的核心概念之一。如果一组处理步骤或者全部发生或者一步也不执行,我们称该组处理步骤为一个事务。当所有的步骤像一个操作一样被完整地执行,我们称该事务被提交。由于其中的一部分或多步执行失败,导致没有步骤被提交,则事务必须回滚到最初的系统状态。

2022-09-28 15:11:21 804 1

原创 Jackson序列化与反序列化

Jackson被认为是"Java JSON库"或"Java最好的JSON解析器"。或简单地被当作"JSON for Java"。不仅如此,Jackson 还是一套用于 Java(和 JVM 平台)的数据处理工具,包括流式JSONparser / generator库、匹配 data-binding 库(POJO和JSON相互转换),还有一个额外的 data format 模块来处理Avro,BSON,CBOR,CSV,Smile,,Protobuf,TOML,XML,YAML。

2022-09-28 15:10:21 146

原创 常见Shell编程脚本

提示用户输入用户名和密码,脚本自动创建相应的账户及配置密码。如果用户不输入账户名,则提示必须输入账户名并退出脚本;如果用户不输入密码,则统一使用默认的 123456 作为默认密码使用 user.txt 文件中的人员名单,在计算机中自动创建对应的账户并配置初始密码本脚本执行,需要提前准备一个 user.txt 文件,该文件中包含有若干用户名信息。

2022-09-28 15:07:21 469

原创 Spring Bean初始化

执行顺序实现InitializingBean接口,重写afterPropertiesSet方法元素上添加init-method初始化使用@PostConstruct注解Spring为bean提供了两种初始化bean的方式,实现InitializingBean接口,实现afterPropertiesSet方法,或者在配置文件中通过init-method指定,两种方式可以同时使用。https。...

2022-07-29 20:28:46 601

原创 Linux服务器线上优化

在性能调优时,需要先对服务器负载进行分析,通常而言,我们主要分析CPU使用率、内存使用率、磁盘I/O,服务器负载和带宽使用情况光有强大的物理性能是不够的,还需要对内核参数进行调优,这样才能在高并发压力下充分体现服务器应有的性能。当然,并不是所有的服务器都需要做高并发性能调优,一般来说,只需要对要处理高并发请求的服务器进行内核参数调优即可,常见的包括前端服务器,后端服务器,数据库服务器。单个进程最大打开文件数和TCP相关设置。......

2022-07-29 20:26:29 219

原创 Web消息推送之SSE

消息推送(push)通常是指网站的运营工作等人员,通过某种工具对用户当前网页或移动设备APP进行的主动消息推送。推送的场景比较多,比如有人关注我的公众号,这时我就会收到一条推送消息,以此来吸引我点击打开应用,消息推送一般又分为web端消息推送和移动端消息推送。另外注意主流浏览器只支持6个连接我有7种实现web实时消息推送的方案,7种短轮询客户端定期向服务器发送请求。如果服务器有更新,它会向客户端发送响应并关闭连接。如果服务器没有更新,它也会向客户端发送一个响应并关闭连接。长轮询客户端向服务器发送请求。...

2022-07-29 20:24:36 1357

原创 Spring事件监听

Spring的事件监听机制和发布订阅机制是很相似的发布了一个事件后,监听该类型事件的所有监听器会触发相应的处理逻辑。正如Spring官方文档上所说的,整个上就是一个观察者的模式。那么,我们不妨猜测下,Spring是如何来实现事件发布监听的底层使用一个集合存储了所有的监听器,当发布了一个事件后,遍历事件监听器集合,然后过滤符合事件类型的监听器,最后触发相应的事件处理逻辑。//必须继承实现publicMyEvent(Objectsource,Stringmsg){}}...

2022-07-29 20:23:45 697

原创 Java实现文件变化监听

在平时的开发过程中,会有很多场景需要实时监听文件的变化,如下通过实时监控mysql的binlog日志实现数据同步修改配置文件后,希望系统可以实时感知应用系统将日志写入文件中,日志监控系统可以实时抓取日志,分析日志内容并进行报警类似ide工具,可以实时感知管理的工程下的文件变更定时任务+File#lastModified在Java7中新增了,通过它可以实现文件变动的监听。只能监听当前目录下的文件和目录,不能监视子目录。commons-io对实现文件监听的实现位于;...

2022-07-29 20:22:14 1776

原创 JSON常用注解

在使用Java开发时,一定会接触到Json,而选择前后端开发都是使用Json进行数据传输,以及和数据库打交道的Bean类,相信你一定遇到过字段类型不同而导致的烦恼,而使用这些注解可以很方便进行字段转换、字段忽略等等这里我使用Spring自带的Jackson和阿里巴巴的FastJson作为记录FastJson提供了4种注解,分别是@JSONType,,@JSONField,......

2022-07-29 20:21:10 1138

原创 docker学习笔记

更详细的关于Docker历史详见百度百科Docker公司起初是一家名为dotCloud的平台即服务(Platform-as-a-Service,PaaS)提供商。底层技术上,dotCloud平台利用了Linux容器技术。2013年,dotCloud的PaaS业务并不景气,公司需要寻求新的突破。2013年3月,dotCloud公司的创始人之一,Docker之父,28岁的正式决定,将Docker项目开源。开源当月,Docker0.1版本发布。dotCloud。volume)...

2022-07-25 19:29:36 204 2

原创 Java打印文件

在我们的实际工作中,经常需要实现打印功能。但由于历史原因,Java 提供的打印功能一直都比较弱。实际上最初的 jdk 根本不支持打印,直到 jdk1.1 才引入了很轻量的打印支持。实际上,SUN 公司也一直致力于 Java 打印功能的完善,而 Java2 平台则终于有了一个健壮的打印模式的开端, jdk1.4 则提供了一套完整的"Java 打印服务 API" (Java Print Service API),它对已有的打印功能是积极的补充。这里打印对象主要是图片和pdf文件两种常见形式,其他office文件

2022-07-11 20:05:36 701

原创 Redis键通知相关小记(EVENT NOTIFICATION)

从Redis 2.8.0开始,Redis加入了发布/订阅模式以及键空间消息提醒(keyspace notification)功能。键空间消息提醒提供了允许客户端通过订阅指定信道获取Redis数据变化的能力。需要注意的是,键空间消息提醒并非可靠的,它不会对订阅端是否接收到消息进行确认。例如某个订阅的客户端暂时断开连接,在其直到恢复连接期间发生的事件将无法再次获得。可以通过对redis的文件中配置参数可以指定服务器发送哪种类型的通知。下面对于一些参数的描述。默认情况下此功能是关闭的。在上述示例中将配置为,代表

2022-07-11 19:57:57 149

原创 SpringBoot接口加密与解密

对称加密只有一个秘钥,加密和解密都是用同一个秘钥,所以叫做对称加密。非对称加密有两个秘钥,一个是公钥,一个是私钥。非对称的特点在于,公钥加密的私钥可以解密,但私钥加密的,公钥解不出来,只能验证是否由私钥进行加密目前常见的加密方式是有两种,一种是对称加密(AES为代表),一种是非对称加密(RSA为代表)特点:只需交换公钥;公/秘钥机制,公钥加密,私钥解密(或者私钥加密,公钥解密);公钥负责加密,私钥负责解密;私钥负责签名,公钥负责验证缺点:加解密速度慢,特别是解密特点:加解密用同一秘钥优点:速度快,效率高;缺

2022-07-11 19:57:04 3463

原创 SpringBoot整合office转换与预览

有时候我们需要在程序中使用到office的转换和预览功能,本文就针对这个需求记录了两种较为简单的office转换和功能:aspose和jodconverter。当然还有其他开源第三方(kkfileview)Aspose.Total是Aspose公司旗下的最全的一套office文档管理方案,主要提供.net跟java两个开发语言的控件套包,通过它,可以有计划地操纵一些商业中最流行的文件格式:Word, Excel, PowerPoint, Project,等office文档以及PDF文档。但是不足的是aspo

2022-07-11 19:55:43 405

原创 SpringBoot 热搜与不雅文字过滤

这里主要讲springboot整合redis的个人搜索记录与热搜、敏感词过滤与替换两个功能,下面进行环境准备,引入相关maven依赖配置为最后敏感词文本文件放在目录下,取名为,敏感词文本网上很多,这里就随便贴一个:github敏感词简单原理如下图所示,使用了DFA算法,创建结点类,里面包含是否是敏感词结束符,以及一个HashMap,哈希里key值存储的是敏感词的一个词,value指向下一个结点(即指向下一个词),一个哈希表中可以存放多个值,比如赌博、赌黄这两个都是敏感词。敏感词库的初始化,这里主要工作是

2022-07-11 19:53:45 576 5

原创 Spring代码性能优化

1、使用单例使用单例可以减轻加载的负担,缩短加载的时间,提高加载的效率,但并不是所有地方都适用于单例,简单来说,单例主要适用于以下三个方面:控制资源的使用,通过线程同步来控制资源的并发访问;控制实例的产生,以达到节约资源的目的;控制数据共享,在不建立直接关联的条件下,让多个不相关的进程或线程之间实现通信。2、避免随意使用静态变量当某个对象被定义为static变量所引用,那么GC通常是不会回收这个对象所占有的内存3、 ​避免过多创建Java对象在我们可以控制的范围内,最大限度地重用对象,最好能用基本的数据类

2022-07-11 19:45:03 140

原创 SpringBean的一些总结

Spring Boot 推荐使用 java 配置完全代替 XML 配置,java 配置是通过 和 注解实现的,二者作用如下:注解:声明当前类是一个配置类,相当于 Spring 中的一个 XML 文件 注解:作用在方法上,声明当前方法的返回值是一个 Bean下面是最简单的一个示例2、@Bean 注解详解2.1 使用说明 注解作用在方法上 指示一个方法返回一个 Spring 容器管理的 Bean 方法名与返回类名一致,首字母小写 一般和 或者 一起使用 注解默认作用域为单例 singleton 作

2022-07-11 19:43:43 140

原创 Nginx二次开发

Lua/luajit/nginx/openresty关系,lua是脚本语言,luajit是lua的功能包与解析器(相当于java对应的jdk),nginx可以内嵌luajit(承载的容器),openresty把额外扩展包集成到nginx里(相当于spring脚手架)windows版lua下载http://joedf.ahkscript.org/LuaBuilds/http://luabinaries.sourceforge.net/EmmyLua插件https://github.com/EmmyLu

2022-07-11 17:33:30 448

原创 Nginx高级篇

扩容包括单机垂直扩容和水平扩展二、Nginx高级配置介绍1、会话管理与sticky模块1.1 介绍Sticky是nginx的一个模块,它是基于cookie的一种nginx的负载均衡解决方案,通过分发和识别cookie,来使同一个客户端的请求落在同一台服务器上,默认标识名为route上传解压到服务器,然后重新编译Nginx,依赖openssl-devel,进到源码目录重新编译配置方法1.3 错误处理如果遇到以下错误,可能是版本问题打开 ngx_http_sticky_misc.c文件,在12

2022-07-11 17:30:39 277

原创 MySql8.0阻塞报错Too many connections及连接超时

公网Ubuntu服务器运行Mysql服务,打算跑Web服务,一段时间后,发现Spring后端报错Data source rejected establishment of connection, message from server: “Too many connections”,并且无法返回数据库信息默认的mysql没有进行过优化,默认超时时间是28800秒,即8小时,而mysql的最大连接数默认是151个(上限为1000),当查询数量大于其最大连接数且没有超过默认时间时,后面的请求将无法响应,即会返

2022-06-13 20:23:03 804

原创 Neo4j图数据库入门笔记

图数据库是基于图论实现的一种NoSQL数据库,其数据存储结构和数据查询方式都是以图论为基础的,图数据库主要用于存储更多的连接数据。Neo4j的特性SQL就像简单的查询语言Neo4j CQL遵循属性图数据模型通过使用Apache Lucence支持索引支持UNIQUE约束包含一个用于执行CQL命令的UI:Neo4j数据浏览器支持完整的ACID(原子性,一致性,隔离性和持久性)规则采用原生图形库与本地GPE(图形处理引擎)支持查询的数据导出到JSON和XLS格式提供了REST API,可以被任何编程语言(如Ja

2022-06-13 20:20:47 214

原创 Linux开发运维常用命令

文章目录一、Java开发常用命令1、前言2、常用命令简介3、常用命令详解3.1 基础命令3.2 磁盘,文件,目录相关操作3.3 检索相关3.4 网络相关3.5 监控linux性能命令二、Linux必备150个命令大全一、Java开发常用命令1、前言一般java开发者来说,或多或少都会接触到linux,因为许多服务都需要部署等,因此一些java常用的linux命令需要每一个java开发者都了解。这里总结一波,方便后期查找。入门级常用linux命令可以参考:Linux常用命令操作2、常用命令简介Li

2022-05-30 20:35:02 374

原创 SpringBoot实现扫码登录

文章目录一、概述1、扫码登录介绍2、扫码登录原理二、扫码登录实战(轮询版)1、环境准备2、RedisTemplate序列化3、Token工具类4、定义扫码状态5、定义返回类6、定义二维码工具类7、编写相应方法三、扫码登录(长连接版)一、概述1、扫码登录介绍二维码扫描登录原理二维码登录本质上也是一种登录认证方式。既然是登录认证,要做的也就两件事情:告诉系统我是谁,以及向系统证明我是谁。比如账号密码登录,账号就是告诉系统我是谁, 密码就是向系统证明我是谁; 比如手机验证码登录,手机号就是告诉系统我

2022-05-25 20:57:31 1136 11

原创 Java之BigDeciaml小记

文章目录一、BigDecimal概述二、BigDecimal常用构造函数1、常用构造函数2、使用问题分析三、BigDecimal常用方法详解1、常用方法2、BigDecimal大小比较四、BigDecimal格式化五、BigDecimal常见异常六、BigDecimal总结1、总结2、工具类一、BigDecimal概述Java在java.math包中提供的API类BigDecimal,用来对超过16位有效位的数进行精确的运算。双精度浮点型变量double可以处理16位有效数,但在实际应用中,可能需要对更

2022-05-25 19:41:42 164

原创 Intellij IDEA(2021) 常用设置与快捷键

文章目录一、常用设置1、显示工具条2、鼠标悬浮提示3、显示方法分隔符4、忽略大小写提示5、主题设置6、自动导入/去除包7、单行显示多个Tabs8、配置类文档注释信息和方法注释模版8.1 类注释8.2 方法注释9、注释字体(斜体/加粗)二、IDEA常用快捷键一、常用设置1、显示工具条View–>Appearance->Toolbar2、鼠标悬浮提示File–>settings–>Editor–>Code Editing–>勾选Show quick documen

2022-05-16 14:37:48 727

国内可下载kube-flannel.yml与自签证书程序文件

kube-flannel.yml文件

2022-11-08

2021/2022中国行政规划Mysql资源

里面有2021年的和2022年版,2021版包含邮政编号,其他可以参考 https://github.com/adyliu/china_area

2022-05-25

Java开发手册(黄山版2022)

Java开发手册(黄山版2022)

2022-04-18

aspose word ppt excel

aspose word ppt excel

2022-04-09

ESXi-6.7.0-8169922-standard-customized.iso

ESXI

2021-07-12

Synology资源

Synology Assistant DSM_DS3615xs_5967.pat XPEnoboot_DS3615xs_5.2-5967.1.iso

2021-01-27

空空如也

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

TA关注的人

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