- 博客(122)
- 收藏
- 关注
原创 系统架构设计师论文分享-论单元测试方法及其应用
通过采用了多种单元测试方法,我们保证了系统的开发进度和质量。最终在2023年12月,该项目正式投产并对外提供服务,至今稳定运行,各项功能和性能指标均远远超过了客户的预期,得到了客户工厂和公司领导的一致赞扬。虽然项目取得了成功,但是也遇到过一些问题,在项目初期,由于产品经理对纱线业务的不熟悉,导致很多功能的调整和返工,这打击了开发人员的士气,基于此,我提出两个解决方式:1、派产品进入工厂一线,与工人交流,熟悉操作流程,彻底摸清纱线业务,保证需求质量;
2025-12-07 16:16:02
1072
原创 系统架构设计师论文分享-论ATAM的使用
本文详细介绍了采用ATAM(架构权衡分析方法)在纱线MES系统开发项目中的成功实践。该项目于2023年2月立项,历时10个月,预算730万元,旨在为国内纱线工厂提供SAAS服务。作为系统架构设计师,作者通过四个阶段实施ATAM评估:描述介绍、调查分析、测试和报告阶段,重点权衡了性能、可用性、安全性和可修改性等质量属性。最终系统于2023年12月顺利上线,已接入879家工厂,各项指标均超出预期。项目经验表明,深入业务理解和灵活架构设计是项目成功的关键。
2025-12-07 16:15:54
717
原创 系统架构设计师论文分享-论云原生技术的应用
2023年2月,我所在的公司做了开发纱线MES系统的决定,该系统为国内纱线工厂提供SAAS服务,旨在提高纱线工厂的智能化和数字化水平。我在该项目中被任命为系统架构设计师,全面掌管该项目的架构设计工作。该项目涉及参与者众多,逻辑复杂,需求变化快,要求具有高性能、高可用、高可靠性以及灵活发布等特点。基于此,我们采用云原生技术,把系统中的非功能性特性剥离出来,具体而言,我们用到了弹性、可观测性、微服务等特性,如此,开发人员就可以专注业务功能的开发,从繁重的底层搭建中解放出来。
2025-12-07 16:15:45
1193
原创 系统架构设计师论文分享-论软件脆弱性分析
2023年2月,我所在的公司做了开发纱线MES系统的决定,该系统为国内纱线工厂提供SAAS服务,旨在提高纱线工厂的智能化和数字化水平。我在该项目中被任命为系统架构设计师,全面掌管该项目的架构设计工作。本文将结合我在该项目中的架构设计工作经验,详细论述了不同软件架构脆弱性的问题以及解决方案。常见的软件架构有层次型架构、MVC架构、微服务架构、单体架构等等,比如,层次型架构的脆弱性表现在:层次之间的复杂性、底层应用影响上层的功能,层次之间的通信效率问题等等。
2025-12-07 16:15:38
985
原创 系统架构设计师论文分享-论软件过程模型及应用
2023年2月,我所在的公司通过了研发纱线MES系统的立项,该系统为国内纱线工厂提供SAAS服务,旨在提升纱线工厂的数字化和智能化水平。我在该项目中担任架构设计师,负责该项目的架构设计工作。本文结合我在该项目中的实践,详细论述了常见的软件开发模式如瀑布模型、原型模型、螺旋模式等,本项目采用了瀑布模型和原型模型结合的方式,把项目周期分成了需求分析、系统设计、程序设计、编码实现和测试验收等阶段,并通过快速原型获取了用户的需求,整个过程进展顺序,保证了系统的稳定开发。
2025-12-07 16:15:29
783
原创 系统架构设计师论文分享-论特定领域软件架构
本文分享了作者在纱线MES系统开发中运用特定领域软件架构(DSSA)的实践经验。该项目针对纱线工厂的专业性特点,采用领域分析、设计和实现的螺旋模型开发方法。通过定义领域范围、约束条件、架构模型和可重用构件,成功构建了包含物联网感知层和微服务应用层的系统架构。文章重点介绍了DSSA方法的具体实施步骤,包括建立领域字典、性能安全约束处理、微服务分层设计等关键环节。项目最终按期交付并稳定运行,作者总结出需求把控和灵活设计的重要性,强调持续学习对信息化建设的关键作用。
2025-12-06 08:16:27
1089
原创 系统架构设计师论文分享-论软件架构复用
本文分享了作者在纱线MES系统开发中应用软件架构复用的实践经验。该项目采用物联网架构,通过三个关键阶段实现架构复用:获取可复用资产(如既有物联网平台、微服务组件)、建立资产管理系统(文档库、构件库)、组装复用资产进行开发。架构复用显著提升了开发效率,降低了30%成本,缩短了20%工期,最终系统按期上线并获得客户好评。文中还总结了需求变更的应对策略,强调业务理解与灵活设计的重要性。这一实践不仅验证了架构复用的价值,也为制造业数字化转型提供了可借鉴的实施路径。
2025-12-06 08:16:18
1022
原创 系统架构设计师论文分享-论软件体系结构的演化
本文介绍了作者在开发纱线MES系统过程中的软件架构演化实践。该项目采用物联网三层架构和微服务设计,涉及多模块、复杂业务流程和工厂个性化需求。在架构演化中,作者团队遵循四大原则:适应新技术、利于重构重用、控制影响复杂度、模块独立演化。具体实施包括:1)业务服务化实现模块独立;2)分层设计增强重构灵活性;3)容器化部署适应新技术环境。项目最终如期上线且稳定运行,各项指标均超预期。作者总结了产品经理深入业务一线、开发人员学习业务等经验,强调持续学习实践对架构能力提升的重要性。该实践为制造业数字化转型提供了有价值的
2025-12-06 08:16:09
1143
原创 系统架构设计师论文分享-论分布式数据库技术及应用
本文分享了作者在2023年纱线MES系统项目中的架构设计实践。面对海量设备数据的存储挑战,作者团队采用分布式数据库解决方案,通过主从集群实现高可用、分库分表提升容量、架构代理保证透明性,有效支撑了系统性能需求。项目最终成功上线并稳定运行,各项指标均达客户要求。过程中遇到业务理解不足导致返工的问题,通过深入工厂调研、采用灵活设计模式得以解决。此次实践不仅提升了作者的分布式数据库技术能力,也增强了项目管理和架构设计经验。
2025-12-06 08:16:00
963
原创 系统架构设计师论文分享-论系统安全设计
2023年2月,我所在的公司通过了研发纱线MES系统的立项,该项目为国内纱线工厂提供SAAS服务,旨在提高纱线工厂的数字化和智能化水平。我在该项目中担任系统架构设计师,负责整个项目的架构设计工作。本文结合我在该项目中的实践,详细论述了安全架构的设计,主要设计内容包括身份鉴别服务、访问控制服务和数据完整性服务,其中身份鉴别服务确保只有授权的用户才能访问系统资源,访问控制服务确保只有授权的用户能够访问特定的数据,数据机密性确保数据仅对授权者可用。通过设计安全服务,我们系统面临的安全威胁得到了有效的控制。
2025-12-06 08:15:52
1253
原创 系统架构设计师论文分享-论微服务架构
本文分享了作者在纱线MES系统项目中的架构设计实践。该项目采用Spring Cloud微服务架构,通过Nacos实现服务注册与配置管理,利用Seata和消息队列解决分布式事务问题,并借助Docker和Kubernetes实现自动化运维。文章详细阐述了微服务架构的技术选型、实施过程及问题解决方案,包括服务治理、数据一致性保证和自动化部署等关键环节。最终项目成功上线,服务563家工厂,验证了微服务架构在提升系统开发效率、性能和可维护性方面的优势。作者还总结了需求管理经验,强调业务理解对架构设计的重要性。
2025-12-06 08:15:44
828
原创 系统架构设计师论文分享-论分布式事务技术及其应用
本文分享了作者参与纱线MES系统开发的实践经验,重点介绍了分布式事务技术的应用。该项目采用微服务架构,面临跨服务数据一致性问题。作者团队通过四种方案解决:1)两阶段提交用于关键业务;2)TCC机制实现灵活事务控制;3)消息队列保证异步事务;4)本地表处理时效敏感业务。系统成功上线后接入563家工厂,运行良好。项目过程中通过让产品深入业务一线、开发参与需求设计等方法解决了需求变更问题。本次实践使作者在分布式事务和项目管理方面积累了宝贵经验。
2025-12-06 08:15:36
1176
原创 系统架构设计师论文分享-论层次型架构及其应用
本文介绍了基于物联网层次架构的纱线MES系统开发实践。系统分为感知层、网络层和应用层,采用Golang和Java等技术栈实现。通过分层设计实现了关注点分离,提升开发效率与可维护性。重点解决了层次间交互问题,采用MQTT、Kafka等技术确保数据传输可靠性。项目上线后接入873家工厂,生产效率提升67.5%,成本降低21.4%。文中还总结了业务理解偏差的教训,强调深入业务调研的重要性。该实践为制造业数字化转型提供了成功案例,展现了层次架构在复杂系统中的优势。
2025-12-06 08:15:27
851
原创 系统架构设计师论文分享-论架构风格的应用
本文分享了作者作为技术Leader参与纱线MES系统开发的经验。该系统采用微服务、事件驱动和虚拟机三种架构风格,有效解决了业务复杂性问题。项目于2024年10月上线,接入873家工厂,生产效率提升65.4%,运营成本降低21.9%。文中详细介绍了三种架构风格的具体应用:通过DDD拆分微服务、使用不同消息队列实现异步通信、采用解释器模式实现灵活工资计算。虽然初期遇到需求偏差问题,但通过深入工厂调研、开发介入需求确认等方案得以解决。该项目不仅提升了作者的技术能力,也证明了合理架构设计对数字化转型项目的重要性。
2025-12-06 08:15:18
1308
原创 系统架构设计师论文分享-论设计模式的应用
摘要: 本文探讨了设计模式在纱线MES系统中的应用实践。针对系统模块复杂、业务独立且需灵活扩展的需求,项目团队引入了工厂模式、观察者模式和策略模式。工厂模式解耦对象创建逻辑,简化了订单、工单等对象的动态生成;观察者模式实现设备状态变更与多模块联动,降低耦合度;策略模式支持排产、计薪等业务的灵活算法切换。这些设计模式显著提升了代码可维护性与系统扩展性,支撑系统按时上线并稳定服务563家工厂,验证了设计模式在微服务架构中的实践价值。
2025-12-06 08:14:45
902
原创 win11安装配置nacos
本文介绍了在Windows 11系统上安装配置Nacos的步骤。首先从官网下载稳定版本(3.1.1),解压到本地目录。然后配置MySQL数据库,执行conf目录下的mysql-schema.sql脚本,并修改application.properties文件中的数据库连接参数。最后在bin目录下通过命令行运行"startup.cmd -m standalone"命令启动Nacos服务。整个过程简单明了,适合快速搭建Nacos开发环境。
2025-12-03 20:06:29
277
原创 win11系统安装redis
本文介绍了Windows 11系统下安装Redis的简明教程。首先从GitHub下载Redis解压版,选择合适版本后解压至本地目录。在安装目录地址栏输入cmd打开命令行,执行redis-server ./redis.windows.conf命令即可启动Redis服务,默认端口为6379。教程包含详细的图文指引,帮助用户快速完成Redis的安装配置。
2025-11-29 19:54:11
332
原创 Vue开发准备
本文介绍了Vue3开发环境的完整配置流程,包括VSCode和Node.js的安装与配置,以及npm和cnpm的使用方法。详细说明了两种创建Vue3工程的方式:基于vue-cli和更推荐的vite方式,并对比了它们的优势。文章还提供了Vue项目结构解析、调试工具安装指南,以及常见问题的解决方案。配置步骤清晰完整,适合Vue3初学者快速搭建开发环境。
2025-08-29 22:34:03
1056
原创 系统架构设计师-【2025上半年论文题目分享】
摘要 本文选取"事件驱动架构在软件开发中的应用"作为论述主题。文章首先介绍了一个采用事件驱动架构的典型项目案例,阐述项目背景、目标及作者承担的系统架构设计和事件机制实现等角色。其次,详细分析了事件驱动架构的概念、特点及其全过程设计思想,包括事件定义、异步处理、松耦合等特性,以及事件识别、模型设计和中间件选择等关键环节。最后,结合项目实践,具体说明了系统在需求分析、架构设计和开发阶段如何应用事件驱动架构,并展示了该架构在提升系统响应速度、增强模块独立性和加强故障隔离等方面的优势。全文通过理
2025-08-26 21:46:16
1532
2
原创 系统架构设计师-【案例必考题】之缓存
摘要:近年来Redis缓存成为考试必考知识点,考察呈现细节化趋势。近三次考试均涉及Redis主从架构、持久化机制、旁路缓存模式、分布式锁等核心内容,题型包括流程填空、原理对比和场景分析。其中主从同步流程、RDB与AOF持久化对比、缓存一致性解决方案等成为高频考点。建议重点掌握Redis核心机制及典型应用场景,特别关注分布式环境下数据同步与一致性问题。
2025-08-22 16:07:22
800
原创 系统架构设计师-【案例题必考题】之质量属性
【摘要】近年来软件架构案例考试中,质量属性题型呈现明显难度递增趋势。2024年上半年考题采用选项选择方式,主要考察性能、安全性、可用性等基础属性;2024年下半年要求直接填写属性,范围扩展至可修改性等;2025年题目难度显著提升,需判断12个复杂场景对应的质量属性,涉及互操作性、可测试性等多维度。这种必考题型正从简单选择发展为综合能力测试,考生需系统掌握各类质量属性的特征与应用场景,以应对日益复杂的考察要求。
2025-08-20 22:21:44
809
2
原创 系统架构设计师-【2025年上半年综合知识题】-真题回忆版分享
本文整理了73道计算机与软件工程相关试题,涵盖操作系统、网络通信、数据库、软件架构、测试等多个领域。主要内容包括:内存管理计算题(位示图大小)、通信技术(调制解调、半双工)、软件工程概念(CMMI等级、净室理论)、数据结构与算法(约束条件下求最大值)、系统架构(4+1视图、微服务状态)、质量属性(可靠性指标)以及开发模型(螺旋模型特点)等。试题类型涉及概念辨析、计算分析和实际应用场景,反映了软件行业从业者需要掌握的核心知识体系,包括技术原理、工程实践和行业标准等内容。
2025-07-27 11:37:50
1019
原创 系统架构设计师-【2025年上半年案例题】-真题分享
摘要: 系统质量属性分析(12分):针对在线大模型训练平台的需求,识别出12个系统质量属性,包括性能(1分钟内分配资源)、可靠性(故障恢复、容错机制)、易用性(界面适配、快捷键)、可测试性(远程测试)、互操作性(多终端支持)和可修改性(快速功能更新)。 解释器风格适用性(13分):平台采用解释器架构,通过维护程序执行状态、解释器引擎及其内部状态,实现自动代码解析和资源匹配,适合处理用户提交的Python模型代码。 知识图谱系统设计: 采用图数据库(如Neo4j)存储医疗知识图谱,支持高效关系查询(7分) 系
2025-07-26 17:28:20
2790
原创 系统架构设计师论文分享-基于架构的软件设计方法及应用
本文介绍了基于架构的软件设计方法(ABSD)在纱线MES系统开发中的实践应用。该系统为国内纱线工厂提供SAAS服务,采用Spring Cloud微服务架构,涵盖生产全流程管理。文章详细阐述了ABSD方法的六个阶段:架构需求阶段明确了功能和质量属性要求;架构设计阶段采用面向对象方法建立领域模型;架构复审阶段利用ATAM方法评估架构;最终系统于2023年10月成功上线,接入879家工厂,运行稳定。通过ABSD方法有效保障了系统质量和开发进度,同时也总结了需求管理方面的改进经验。该项目实践验证了架构驱动开发在复杂
2025-06-27 06:18:21
944
原创 软考历程(软件设计师-系统架构设计师)
摘要: 2024上半年首次通过软件设计师考试,下半年首次挑战系统架构设计师失利。2025上半年再战系统架构设计师终获成功,历时一年半完成两项认证。虽然实际备考时间有限,但投入了大量精力。2025年6月26日,终于迎来圆满收官,如释重负。(98字)
2025-06-26 22:24:28
521
3
原创 使用Spring Ai1.0.0版本操作deepseek
本文介绍了如何使用Spring Boot集成DeepSeek API。首先需要在DeepSeek官网注册并获取API key(最低充值1元)。然后创建一个Spring Boot 3.4.1项目(需JDK17),引入spring-ai-starter-model-openai等依赖。配置文件中设置DeepSeek的API key和base-url。创建Controller调用OpenAiChatModel实现聊天功能,通过/ai/generate接口接收用户消息并返回AI响应。最后展示了调用测试效果。整个过程
2025-06-16 21:43:28
384
原创 win11启动linux系统
如此,在win11上就可以运行起来linux系统了。搜索ubuntu,就可以找到该程序,并点击运行。搜索ubuntu,点击下载并安装,安装好之后。找到图中的选项,勾选。点击启用或关闭windows功能。
2025-06-16 20:27:13
544
原创 Kafka入门4.0.0版本(基于Java、SpringBoot操作)
Kafka 4.0.0 版本核心要点 架构革新:Kafka 4.0.0 采用KRaft模式完全取代ZooKeeper,通过Raft算法实现内置元数据管理,显著简化部署运维并提升扩展性。 核心概念:包含Producer/Consumer、Broker、Topic、Partition等组件,采用生产者Push和消费者Pull模式,支持多副本机制保障数据可靠性。 版本特性: 消息持久化采用日志顺序存储 副本机制(Leader/Follower)确保高可用 ISR机制维护数据一致性 支持生产者/消费者事务 安装配置
2025-06-13 08:45:36
1790
2
原创 ollama介绍并安装deepseek大模型
Ollama是一款简化大型语言模型(LLM)本地部署的开源工具,提供轻量级框架让开发者轻松管理各类模型。支持多种开源模型,涵盖文本生成、代码生成等场景。用户可通过命令行简单操作,在Windows等系统上安装后,从官方模型库选择所需模型进行下载运行。安装过程支持自定义路径,模型使用只需复制对应命令即可快速启动。该工具降低了本地运行大模型的技术门槛,使开发者能专注于应用开发而非底层实现。官网:ollama.com
2025-06-10 09:37:36
603
原创 RuoYi-Vue 和 Vue3 快速为你所用(毕设系统)
摘要:本文介绍了如何使用RuoYi-Vue和Vue3快速搭建毕设系统。内容包括:1)后端部署,通过git拉取SpringBoot3分支项目,配置数据库和Redis;2)前端部署,安装依赖并运行;3)开发员工管理功能,通过代码生成器自动创建模块,完成增删改查功能。该系统提供完整的权限管理和代码生成功能,可快速实现业务模块开发,适合作为毕设或企业级项目的基础框架。
2025-06-07 18:45:44
426
原创 RabbitMQ入门4.1.0版本(基于java、SpringBoot操作)
RabbitMQ是一个开源消息代理系统,采用Erlang语言开发,支持AMQP等多种协议。核心功能包括异步消息处理、消息持久化、灵活路由和高可用性。其架构包含Broker、Virtual host、Connection、Channel等组件,通过交换机(Exchange)和队列(Queue)实现消息路由,支持四种交换机类型:直连、扇形、主题和头交换机。RabbitMQ提供六种工作模式:简单模式(单生产者-单消费者)、工作模式(多消费者负载均衡)、发布订阅(广播消息)、路由模式(按路由键分发)、主题模式(通配
2025-06-06 22:10:13
1386
原创 RocketMQ入门5.3.2版本(基于java、SpringBoot操作)
RocketMQ是由阿里巴巴开源的分布式消息中间件,具有高吞吐量、高可靠性的特点。其主要组件包括生产者(Producer)、消费者(Consumer)、消息服务器(Broker)和名称服务器(NameServer)。支持三种消息发送模式:同步、异步和单向,以及集群消费和广播消费两种消费模式。RocketMQ通过Topic和Tag实现消息分类,队列为消息存储和传输的最小单元。其核心优势在于灵活的可扩展性、海量消息堆积能力,以及支持顺序消息、事务消息等高级特性,适用于金融交易、订单处理等多种场景。
2025-06-06 21:59:29
1220
原创 Spring Boot3.4.1 集成redis
本文介绍了Spring Boot 3.4.1集成Redis的完整流程:首先引入redis、commons-pool2和fastjson依赖;然后配置yml文件设置redis连接参数;接着编写Redis配置类,配置序列化方式;再封装Redis操作工具类,提供键值存取和删除方法;最后通过测试控制器验证功能。整个方案采用Lettuce客户端,实现了基本的缓存操作功能,并支持对象序列化存储。
2025-05-30 19:12:35
593
2
原创 Spring Boot3.4.1 集成 mybatis plus
本文介绍了Spring Boot集成MyBatis Plus的主要步骤。首先引入MySQL、MyBatis Plus、Druid等相关依赖;其次配置数据源和MyBatis Plus属性;然后通过配置类设置分页插件和乐观锁;最后编写实体类、Mapper接口(继承BaseMapper)和业务实现类。文章提供了从依赖引入到代码编写的一整套方案,并包含XML映射文件示例,帮助开发者快速实现MyBatis Plus在Spring Boot项目中的集成与应用。
2025-05-30 19:10:57
862
原创 2024年下半年软考系统架构设计师案例分析题
摘要: 本文包含两个软件系统设计案例。案例一讨论了大语言模型智能系统的质量属性需求分析,识别了功能性、性能、可靠性等需求,并对比了ping/echo和心跳两种故障检测策略。案例二探讨了购物网站的缓存设计,包括Cache-Aside策略的数据读取/更新流程,以及解决缓存一致性的多种方案(消息队列、数据库插件、锁机制等)。此外还涉及Elasticsearch分词器的特点比较和RESTful架构实现前后端分离的原理。这些案例展示了软件架构设计中的质量属性权衡、缓存策略选择及系统解耦等关键技术考量。<|end
2025-05-21 15:52:34
726
原创 ssm框架之ssm整合实现登录功能
ssm框架分别是 spring springmvc 和mybatis的简称。是现在开发javaweb项目的一种常见的技术组合方式。下面就开始ssm框架的整合通过idea创建一个maven的web项目:打开pom.xml文件,添加如下依赖,最终效果如下:依赖添加完后,刷新maven依赖,让所有依赖都加载进来,如果刷新不过来,执行clean install首先整体看一下项目结构:第一步,先修改web.xml文件,最终内容如下:第二部,在同级目录下,创建spring-servlet.xml文件,内容
2025-04-02 08:52:08
1196
原创 ssm框架之springMVC框架
springMVC是一种基于java实现的轻量级web框架,它实现了mvc模型。跟之前struts类似。优点:1、使用简单,开发便捷2、比较灵活,具有很强的扩展性spirngMVC实现的mvc模型如下:springMVC核心处理流程:Springmvc的执行过程就是基于一系列的组件来完成的。DispatcherServlet:前端控制器, 是整体流程控制的中心,由其调用其它组件处理用户的请求, 有效的降低了组件间的耦合性。
2025-03-31 22:47:38
1049
原创 ssm框架之Spring框架之AOP
AOP(Aspect Oriented Programming)面向切面编程,一种编程范式,指导开发者如何组织程序结构。:在不改动原始设计的基础上为其进行功能增强。简单的说就是在不改变方法源代码的基础上对方法进行功能增强。首先,开启AOP,在applicationContext.xml中添加如下配置。AOP有很多种增强类型,分别为,前置增强,后置增强,环绕增强和异常增强。以上就是基于注解的AOP,并且展示了所有增强类型的使用方式。最后,在测试类中测试就行了。:无入侵式/无侵入式。
2025-03-31 10:33:08
439
原创 ssm框架之mybatis框架动态SQL
如下示例,当使用where进行条件查询时候,可以用where标签,它可以把最前面的and去掉。如下示例,当有一个入参为null或者空的时候的时候,不参与计算,这种情况就应该使用if标签。mybatis可以通过各种各样的标签在sql映射文件中实现如下功能。智能忽略标签前后多余的and、or或逗号等字符。使用trim标签替换前面示例中的where标签。如下所示,类似于 java中的if else。进行批量操作的时候,使用foreach标签。使用trim标签替换前面示例中的set标签。实现示例中相同的功能。
2025-03-18 23:12:40
448
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅