- 博客(135)
- 资源 (2)
- 收藏
- 关注
原创 SonarQube社区版安装
本文提供了SonarQube在Linux系统下的安装配置指南。主要内容包括:1) 建议的目录结构设置;2) PostgreSQL容器启动命令;3) 带有数据持久化挂载的SonarQube容器启动方案;4) 常见问题的解决方法,特别是针对Elasticsearch虚拟内存不足的配置调整;5) 中文语言包的安装方法。文中详细说明了各目录用途、容器启动参数、内核参数优化等关键配置步骤,适用于需要部署SonarQube代码质量分析平台的开发运维人员。
2025-05-28 10:28:12
279
原创 物联网数据湖架构
本文介绍了一种物联网海量数据湖分析架构的推荐实践。该架构分为采集层、计算与写入层、存储层以及分析与服务层。采集层通过Kafka进行消息缓冲和削峰;计算与写入层使用Flink/Spark Streaming进行实时数据处理,并将热数据存储于MongoDB,历史数据归档至OSS/数据湖;存储层采用MongoDB和OSS/S3/MinIO,分别处理热数据和冷数据;分析与服务层通过Trino/Presto/StarRocks等工具进行SQL分析,支持高效查询和聚合操作。该架构具有弹性强、成本低、分析能力强的优势,适
2025-05-19 15:20:15
854
原创 跨平台编码规范文档
本编码规范旨在为软件开发团队提供统一的代码编写标准,涵盖C#、Java、安卓和Web前端(HTML/CSS/JavaScript/TypeScript)等语言,聚焦于通用的编程原则和最佳实践。规范适用于团队协作开发、代码审查、项目交接和新人培训,参考了SOLID设计原则、DRY原则、KISS原则以及各语言的特定规范和安全标准。规范分为强制性规则、推荐实践和可选建议,并定期更新以适应技术发展。代码格式部分详细规定了缩进与空格、行长度限制、注释规范、空行与分段、括号风格、对齐规则和特殊字符使用,强调代码的可读性
2025-05-09 16:04:30
354
原创 Conventional Commits 团队使用文档
本文档介绍了Conventional Commits规范在团队项目中的使用方法和要求。Conventional Commits规范通过标准化的提交信息格式,提高了团队协作效率和项目的可维护性。提交信息包括类型、范围、描述、正文和脚注,其中类型指明了提交的性质,范围说明影响的范围,描述概括主要内容,正文和脚注提供额外信息。团队使用规则包括范围定义、提交频率和粒度、审核机制等。提交规范细则强调原子提交原则和提交粒度指南,特殊情况如紧急修复和依赖更新也有相应处理方式。版本控制工作流规定了分支提交和拉取请求的规范。
2025-05-09 15:41:20
683
原创 MongoDB培训文档大纲(超详细)
定义MongoDB 是一个开源的 NoSQL 数据库,基于文档模型存储数据。它允许使用 JSON 格式(更具体地说是 BSON)来存储结构化和半结构化数据。MongoDB 是一个高性能、可扩展且高可用的数据库,专为大规模数据存储和快速处理而设计。MongoDB的主要特点无模式数据存储:数据以 BSON 格式存储,可以轻松处理复杂、变化多端的数据结构。高性能:支持快速读写操作,能够处理大量数据请求。分布式架构。
2025-05-07 20:24:54
886
原创 Netty之内存池的原理和实战
Netty的内存池机制通过精细化的内存管理,显著提高了内存的利用率,减少了内存分配和回收的开销,特别适用于高并发、高负载的网络应用。理解Netty的内存池原理,并结合实际需求进行优化配置,能够有效提升系统性能和稳定性。在实际应用中,开发者应根据业务需求、系统资源和负载情况,灵活调整内存池的大小、内存分配策略以及高低水位线等参数,从而获得最佳的系统表现。
2025-04-10 19:58:24
833
原创 Netty之ChannelOutboundBuffer详解与实战
在Netty中,用于缓存待写入的数据。当数据量过大时,可能导致内存溢出或系统性能下降。高水位线(High Water Mark):当缓存区的数据量超过此阈值时,Netty会将对应的Channel标记为不可写(unwritable),暂停数据的写入,直到数据量降至低水位线以下。低水位线(Low Water Mark):当缓存区的数据量低于此阈值时,Netty会将Channel标记为可写(writable),恢复数据的写入。这种机制有效防止了因数据积压导致的内存溢出问题,确保了系统的稳定性。
2025-04-10 19:52:21
503
原创 【完整可用】使用openhtmltopdf生成PDF(带SVG)
OpenHTMLToPDF 是一个纯 Java 库,基于 Flying Saucer 和 Apache PDFBox 2,支持将格式良好的 XML/XHTML(甚至一些 HTML5)文档渲染为 PDF 文件。它支持 CSS 2.1 及其后续标准进行布局和格式化,并能够处理 SVG 图像。
2025-04-10 15:16:19
1720
3
原创 MongoDB 副本集的健康指标 & 写关注级别
这些状态不仅反映了成员的健康和功能状态,还对副本集的整体行为和数据一致性有重要影响。是一个强大的命令,用于获取副本集的当前状态和健康信息。这个命令返回的数据详细且内容丰富,为数据库管理员和开发人员提供了副本集运行情况的深入视图。命令定期检查副本集状态,你可以确保及时了解和处理任何可能影响副本集运行的问题,保持数据的高可用性和一致性。在MongoDB副本集中,成员状态是副本集操作和健康的核心指标之一。的输出对于维护副本集的健康至关重要。命令的输出,帮助你理解每个字段的含义及其对副本集管理的意义。
2025-03-10 14:08:20
882
原创 CentOS 7.8 安装MongoDB 7 副本集(Replica Set)
仲裁节点的搭建和数据节点类似,唯一的区别是仲裁节点配置不存储数据,且配置文件中不需要启用数据存储的设置。使用将仲裁节点添加到副本集中,不需要额外的数据同步过程。仲裁节点的作用是保证选举过程的顺利进行,确保即使在数据节点故障时,副本集仍然能够正常选举出新的主节点。对于测试环境,如果你有2个数据节点,可以使用1个仲裁节点来模拟高可用性,而不需要额外的数据存储。
2025-02-17 20:26:47
948
原创 MongoDB 入门操作指南
MongoDB 是一个开源的 NoSQL 数据库,它基于文档存储数据,适用于大量非结构化数据。MongoDB 的聚合框架允许你执行更复杂的查询,支持数据过滤、排序、分组和变换。索引类似于书本的目录,可以加速文档的查找。一个简单的聚合管道包含多个阶段,每个阶段都通过一个特定的操作符来处理数据。如果你希望某个字段的值是唯一的,可以创建唯一索引。复合索引的顺序非常重要,它会影响查询的效率。如果索引不再需要,或者索引不再提供优化性能,可以删除索引。用于拆分数组字段,每个数组元素将变为一个单独的文档。
2025-02-13 14:49:01
2177
原创 CentOS 7.8 安装MongoDB 7教程
例如,您可以修改数据存储路径、日志文件路径等。确保您的系统已更新到最新版本。确保您使用的是root用户或具有sudo权限的用户。根据需要,您可以修改MongoDB的配置文件。
2025-02-12 16:24:25
590
原创 YAML语法特性全解析:锚点、别名及其他功能
YAML 是一种功能强大的数据序列化格式,广泛应用于配置文件、数据交换、日志管理等场景。除了锚点()和别名(多行字符串(保留式与折叠式)合并操作符
2025-01-02 10:14:17
1056
原创 YAML中的锚点与别名:简化配置管理的利器
锚点(:用于给一个节点(值)指定一个标识符,类似于为该值取了一个“别名”,可以在其他地方引用。别名(:用于引用已经定义了锚点的节点,从而避免重复书写相同的值。这两个特性常常配合使用,可以实现数据的共享和引用,减少代码的冗余,提高可读性和可维护性。
2025-01-02 10:03:39
1295
原创 MySQL 与 MongoDB 存储差异分析
固定表结构:MySQL 使用行存储模型,数据表的结构在创建时就已经定义,无论数据是随机生成还是固定生成,只要字段和数据类型一致,存储需求几乎相同。索引一致性:由于 MySQL 的索引大小不受数据内容影响,存储差异非常小。
2024-11-26 20:26:50
1343
原创 【非关系型数据库】【IOT设备】InfluxDB、TimescaleDB、Cassandra和MongoDB
关系型数据库在处理IoT设备数据瓶颈问题原理具体问题描述固定的模式和结构预定义的数据模式要求IoT设备可能产生结构多变的数据,频繁调整数据库模式以适应这些变化是不切实际的。扩展性限制设计初衷是单服务器,水平扩展复杂需要应对大量设备数据的快速扩展,关系型数据库的水平扩展可能面临性能瓶颈和一致性问题。高并发写入性能严格的事务ACID属性在处理成千上万的并发写入时可能无法提供足够的写入吞吐量,导致性能下降。成本和复杂性大型系统维护涉及多方面的复杂性IoT数
2024-11-11 21:27:52
1231
原创 【MQTT】代理服务比较RabbitMQ、Mosquitto 和 EMQX
目前要处理大量设备同时频繁发送数据的情况,MQTT协议确实是一个更优的选择,因为它特别适合需要低带宽和高效能的物联网应用,下面是对目前主流协议的对比。
2024-11-11 10:43:36
2462
原创 Spring 状态机
Spring 状态机是 Spring 框架的一部分,用于构建和管理状态机。状态机可以帮助你管理对象的生命周期、处理业务流程或实现复杂的工作流。Spring 状态机提供了一种声明性和可扩展的方式来定义状态、事件及其转换规则。创建枚举类OrderState和OrderEvent。
2024-09-04 16:34:37
1161
1
原创 深入理解 MyBatis-Plus 中的字段策略:not_null vs not_empty
not_null当字段值为null时,该字段不会被映射到 SQL 语句中。如果字段值非null(包括空字符串或空集合),则字段会被包含在 SQL 语句中。not_empty只有当字段值不为null且不为空(对于字符串来说不是空字符串,对于集合来说不是空集合)时,该字段才会被映射到 SQL 语句中。这意味着如果字段值为null或者“空”,它就不会被包含在 SQL 语句中。选择not_null或not_empty应基于实际需求:如果允许字段为空但不允许为null,则使用not_null;如果需要字段既不为。
2024-07-30 15:35:55
899
1
原创 Vue.js 中属性绑定的详细解析:冒号 `:` 和非冒号的区别
通过本文的介绍,我们详细解析了 Vue.js 中属性绑定时使用冒号和不使用冒号的区别、适用场景及性能考虑。了解和合理使用这两种绑定方式,可以根据实际需求优化 Vue.js 组件的开发和性能表现。希望本文能够帮助您更好地理解和应用 Vue.js 中的属性绑定!如有其他问题或需要进一步讨论,请随时与我联系。
2024-07-02 11:37:07
1992
原创 Vue.js 中的 v-if 和 v-show
通过本文的介绍,我们详细解析了 Vue.js 中v-if和v-show的工作原理、适用场景以及性能比较。了解和合理使用这两个指令,有助于优化 Vue 组件的渲染性能和用户体验。
2024-07-02 11:31:52
571
原创 Vue 3中 <script setup> 与生命周期钩子函数的详细解析
通过本文的介绍,我们详细探讨了在 Vue 3 中如何在中执行生命周期钩子函数。尽管简化了组件的书写方式,但依然保留了 Vue 的核心特性和生命周期管理机制。合理利用和传统 Options API,可以根据项目需求和组件复杂度选择合适的方式来编写和管理 Vue 组件。希望本文能够帮助您更深入地理解和应用 Vue 3 中的与生命周期钩子函数!
2024-07-02 11:28:15
1490
原创 深入理解Vue生命周期钩子函数
Vue的生命周期可以分为创建阶段、挂载阶段、更新阶段、销毁阶段等不同的阶段,每个阶段都有相应的钩子函数,可以在特定的时机执行代码逻辑。:实例初始化之后,数据观测 (data和props) 和事件配置之前被调用。在这个阶段,实例还没有初始化完成,因此不能访问数据和方法。created:实例已经创建完成之后被调用。在这个阶段,实例已经完成了数据观测 (data和props),属性和方法的运算,事件回调等配置,但是尚未开始挂载DOM,因此$el属性目前不可见。:在挂载开始之前被调用,相关的render。
2024-07-02 11:21:15
695
原创 Vue 父子页面使用指南
通过深入了解Vue3中父子页面的加载原理和生命周期钩子函数,开发者能够更好地掌握组件的工作机制和优化策略,提升应用的性能和用户体验。通过本文的学习,读者可以深入了解Vue3中父子页面的使用方法及其原理,进一步提升在Vue开发中的技能和效率。希望本文能够对Vue开发者有所帮助!
2024-07-02 11:14:53
1808
1
原创 Mysql数据库(二)联表查询
在数据库操作中,联表查询是一种常见的需求,用于从两个或更多的表中根据相关的列将数据结合起来。理解联表查询的执行原理有助于编写更高效的SQL查询。
2024-06-11 16:09:08
4292
原创 Mysql数据库(一)SQL入门
MySQL是一个开源的关系数据库管理系统,由Oracle公司维护。它使用SQL语言进行数据库管理,SQL语言是用于存储、检索、管理关系数据库的标准编程语言。MySQL易于使用且非常灵活,适合从小型项目到大型企业级应用。
2024-06-11 16:05:52
569
原创 CentOS 7.8上安装ClamAV
在CentOS 7.8上安装ClamAV涉及几个步骤,包括安装ClamAV本身以及其命令行扫描工具和守护进程。
2024-06-06 10:43:25
1327
原创 MySQL之定时任务(Event Scheduler)
在数据库管理中,定期执行某些任务对于维护数据库的健康和性能至关重要。MySQL 提供了一种强大的机制,称为“事件调度器”(Event Scheduler),允许数据库管理员和开发人员自动化这些例行任务。在本文中,我们将深入了解如何在 MySQL 中设置和使用定时任务。
2024-05-30 18:51:18
1402
原创 WannaCry勒索软件(CVE-2017-0144)
在2017年5月,WannaCry勒索软件爆发了一场全球性的网络安全危机,迅速感染了超过200,000台计算机,波及150多个国家。从医疗保健系统到政府机构,无数组织面临数据被加密和赎金要求的双重威胁。本文将提供关于WannaCry勒索软件的详尽分析,包括其工作原理、传播机制和防御策略,旨在提升公众对此类网络威胁的认识和应对能力。
2024-05-28 16:00:28
661
原创 Heartbleed(心脏出血漏洞) - CVE-2014-0160
在2014年,网络安全界发现了一个名为心脏出血(Heartbleed)的严重安全漏洞,正式编号为CVE-2014-0160。这个漏洞震动了整个互联网,因为它影响到了广泛使用的OpenSSL加密库,该库是保护互联网通信安全的关键组件。本文旨在详细解释心脏出血漏洞的工作原理,它的影响,以及我们如何可以防止此类漏洞再次发生。
2024-05-28 13:56:45
803
原创 Bash Bug(破壳漏洞,Shellshock) - CVE-2014-6271
破壳漏洞是对全球数以百万计的系统构成威胁的严重安全漏洞。通过理解其原理并学习如何检测和修补,您可以显著提高自己系统的安全性。始终保持系统和软件的最新状态是保护自己免受此类漏洞攻击的关键策略。
2024-05-28 13:53:41
1085
原创 云平台概要设计文档 -大纲
云平台项目旨在开发一个高度可配置的医疗设备管理系统,该系统将支持设备监控、患者数据处理、医疗记录访问以及与其他医疗应用的数据交互。该平台的主要目标是提高医疗服务的效率和安全性,同时确保符合医疗行业的严格规范和标准。随着医疗行业对技术的依赖度不断提高,对于可靠和安全的医疗设备管理系统的需求也在增加。云平台的设计旨在满足这些需求,通过提供一个集中的解决方案来管理各种医疗设备和患者数据,从而提高医疗服务的质量和响应速度。
2024-05-21 13:40:27
1147
原创 Microsoft Threat Modeling Tool 使用(三)
本文介绍信任边界这些边界(Boundary)在微软威胁建模工具中用于表示不同的信任区域,它们之间的主要区别在于它们应用的上下文和特定用途。
2024-05-16 15:05:46
804
原创 软件需求规格文档 (SRS) 模版
列出文档中使用的所有术语和缩写,并给出定义。描述系统的操作环境,包括硬件、软件、网络等。概述系统的主要功能模块及其相互关系。用户身份验证模块负责确保只有授权用户能够访问系统。该模块包含登录、图片滑动验证码、身份验证和安全性措施等功能。数据管理模块负责系统中的数据创建、读取、更新和删除(CRUD)操作,包括数据的存储和检索。报表和分析模块负责生成各种报表,并提供数据分析功能,以支持决策和运营。
2024-05-14 18:03:10
6575
1
原创 用爬虫解决问题
网络爬虫(Web Crawler),也称为网络蜘蛛(Web Spider),是一种自动化程序,用于浏览互联网并从中提取数据。爬虫可以自动访问网页,解析网页内容,并将所需的信息保存到本地进行后续处理。网络爬虫是一项强大的工具,可以帮助我们解决许多实际问题。通过本文的介绍,相信你已经掌握了从基础到高级的爬虫技术。希望你能在实际应用中灵活运用这些技巧,高效地完成数据收集任务。如果你有任何问题或需要进一步的帮助,欢迎在评论区留言!
2024-05-14 17:24:50
814
原创 Tomcat 启动闪退问题解决方法
Tomcat 启动闪退问题可能由多种原因引起,但通过系统地检查日志文件、端口配置、环境变量、配置文件、依赖库、内存配置和权限设置,我们通常可以快速找到并解决问题。希望本文提供的解决方法能够帮助您顺利解决 Tomcat 启动闪退问题,提高开发效率。如果您有其他方法或经验,欢迎在评论区分享!
2024-05-14 17:22:43
759
1
原创 Microsoft Threat Modeling Tool 使用(一)
Microsoft Threat Modeling Tool(MTMT)是一款由微软提供的用于帮助软件开发人员、安全专家和系统架构师设计和评估软件系统安全性的工具。它能够帮助用户通过建立模型来识别潜在的安全威胁,并为系统设计提供安全控制建议。:MTMT提供了一个直观的界面,让用户可以轻松地创建和编辑系统的威胁模型。用户可以使用各种元素和数据流来表示系统中的组件和信息流动,并通过连接这些元素和数据流来建立系统的拓扑结构。
2024-04-29 20:13:32
2126
原创 Spring Cloud Gateway 原理
Spring Cloud Gateway 是 Spring Cloud 生态系统中的一个组件,它提供了一种基于路由和过滤器的方式来处理请求。Spring Cloud Gateway 基于路由来将请求转发到不同的目标地址。路由定义了请求的匹配规则以及目标地址。每个路由都由 ID、URI、Predicate 和 Filter 组成。URI 指定了请求转发的目标地址,Predicate 定义了请求匹配的规则,Filter 则是对请求进行处理的过滤器。断言用于匹配请求的条件。
2024-04-28 10:34:41
1364
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人