7000字长文带你深入分析微信系统的复杂性来源

【软考高级架构】论文范文17——论软件系统架构评估及其应用(ATAM) 软件系统架构评估是保障系统质量属性满足业务目标的关键环节,架构权衡分析方法(Architecture Trade-off Analysis Method,ATAM)作为一种主流的架构评估方法,通过场景识别、敏感点与权衡点分析、风险与非风险决策识别等系统化活动,能够在架构设计早期发现潜在问题,降低后期修改成本。本文以笔者主导的某省级智慧医疗平台架构评估项目为案例,围绕ATAM方法的应用展开论述。笔者担任系统架构师,负责组织评估团队、引导场景捕获、分析架构决策、识别风险与权衡点。 阅读详情

👉 这是一个或许对你有用的社群

🐱 一对一交流/面试小册/简历优化/求职解惑,欢迎加入「芋道快速开发平台」知识星球。下面是星球提供的部分资料: 

e3e52fae5f84f0b3d3133524ebbf54fa.gif

👉这是一个或许对你有用的开源项目

国产 Star 破 10w+ 的开源项目,前端包括管理后台 + 微信小程序,后端支持单体和微服务架构。

功能涵盖 RBAC 权限、SaaS 多租户、数据权限、商城、支付、工作流、大屏报表、微信公众号、CRM 等等功能:

  • Boot 仓库:https://gitee.com/zhijiantianya/ruoyi-vue-pro

  • Cloud 仓库:https://gitee.com/zhijiantianya/yudao-cloud

  • 视频教程:https://doc.iocoder.cn

【国内首批】支持 JDK 21 + SpringBoot 3.2.2、JDK 8 + Spring Boot 2.7.18 双版本 

来源:皇子谈技术

3f565f743c14a124336a92390b80c1bf.jpeg


关于系统复杂性和风险 的问题,是我们在软件开发过程中必须面对的挑战,因为复杂性是系统的固有属性 ,它来源于系统的规模、结构、功能、行为 等多个方面。

系统规模 的增大会导致系统的复杂性增加,因为系统的元素和关系会随着规模的增大而增多;结构复杂 性体现在系统的层次结构、模块化结构、网络结构等;功能复杂 性体现在系统的功能多样性、功能的交互性等方面;行为复杂 性体现在系统的动态性、不确定性、适应性等方面。

而风险则是复杂性的直接产物 ,它可能导致系统的性能下降、成本增加、甚至系统的失败。今天我们就以一个全球领先的即时通讯和生活服务平台, 一个复杂的、多元化的、动态的微信系统 为例,针对复杂性主要来源之规模、结构、功能和行为 详细展开来全面认识下系统复杂性的来源 。

一)规模复杂性

规模复杂性包括:数据复杂、业务逻辑复杂

一图顶千言

58274db3c4bb2f571135198bc139c6a1.png

1、数据复杂

微信是一个拥有数亿用户的大型系统,它需要处理的数据量非常大,导致它的数据复杂 包括:

1)微信需要存储、实时处理数十亿用户的聊天记录、朋友圈信息、支付记录等数据,需要采用分布式计算框架,通过任务调度、负载均衡等技术,保证了数据的高效处理;

2)需要对用户的这些数据进行分析,采用大数据分析技术,通过数据挖掘、机器学习等技术,提取了数据的价值信息,以提供个性化的服务,包括广告推广、公众号推荐、视频号推荐等;

2、业务逻辑复杂

除此之外,微信需要处理的业务逻辑也非常复杂的:

1)微信的消息推送涉及到即时通讯、群聊、公众号消息、小程序消息等多种类型的消息。这就需要微信的系统能够实时处理大量的消息推送请求,保证消息的及时送达,同时微信还需要处理消息的存储、同步、搜索等问题;

2)微信的好友关系管理涉及到添加好友、删除好友、查看好友信息、设置好友权限等多种操作,同时微信还需要处理好友的推荐、搜索、排序等问题;

3)微信的支付处理涉及到创建支付、完成支付、查询支付、退款支付等多种操作,这就需要微信的系统能够处理大量的支付请求,保证支付的正确处理。同时,微信还需要处理支付的安全、效率、稳定性等问题,这都增加了业务逻辑的复杂性。

基于 Spring Boot + MyBatis Plus + Vue & Element 实现的后台管理系统 + 用户小程序,支持 RBAC 动态权限、多租户、数据权限、工作流、三方登录、支付、短信、商城等功能

  • 项目地址:https://github.com/YunaiV/ruoyi-vue-pro

  • 视频教程:https://doc.iocoder.cn/video/

二)结构复杂性

微信的系统结构的复杂性,主要体现在前端应用、后端服务、数据库系统、消息队列、缓存系统 等多个部分的协同工作。这些部分各自承担着不同的职责,共同构成了微信的整体服务。

一图顶千言

052bdeb0ba2df00c031f382681477435.png

1、前端应用

1)用户界面(UI): 微信的前端应用需要提供丰富的用户界面,包括聊天窗口、朋友圈、微信支付、小程序等。这些界面需要有良好的用户体验,包括清晰的布局、直观的操作、美观的视觉效果等。

2)用户交互: 微信的前端应用需要处理复杂的用户交互,包括消息发送、好友添加、支付操作等。这些交互需要有良好的响应性,包括快速的反馈、准确的结果、稳定的性能等。

3)数据同步: 微信的前端应用需要进行数据同步,包括消息同步、状态同步、数据更新等。这些同步需要有良好的一致性,括实时的更新、准确的同步、完整的数据等。

4)网络通信: 微信的前端应用需要进行网络通信,包括数据请求、数据接收、数据发送等。这些通信需要有良好的可靠性,包括稳定的连接、高效的传输、安全的加密等。

5)设备适配: 微信的前端应用需要进行设备适配,包括屏幕适配、操作系统适配、网络环境适配等。这些适配需要有良好的兼容性,包括完整的功能、优秀的性能、一致的体验等。

2、后端服务

1)业务逻辑处理: 微信的后端服务需要处理复杂的业务逻辑,包括消息处理、好友关系管理、支付处理等。这些业务逻辑需要有高效的处理能力和准确地处理结果。

2)数据存取: 微信的后端服务需要进行大量的数据存取操作,包括用户数据、业务数据等。这些数据存取需要有高效的存取能力和高可用的存取质量。

3)系统集成: 微信的后端服务需要与其他系统进行集成,包括数据库系统、消息队列系统、缓存系统等。这些系统集成需要有稳定的集成性能和高可靠的集成质量。

4)服务稳定性: 微信的后端服务需要保证服务的稳定性,包括服务的可用性、服务的响应性、服务的容错性等。这些服务稳定性需要有高度的稳定性和高可靠的稳定质量。

5)安全防护: 微信的后端服务需要进行安全防护,包括数据安全、网络安全、系统安全等。这些安全防护需要有高效的防护能力和高可靠的防护质量。

3、数据库系统

1)数据存储: 微信的数据库系统需要存储大量的数据,包括用户数据、业务数据、日志数据等。这些数据的存储需要有高效的存储能力和高可用的存储质量。

2)数据查询: 微信的数据库系统需要进行复杂的数据查询,包括单表查询、多表查询、全文查询等。这些数据查询需要有高效的查询能力和准确的查询结果。

3)数据一致性: 微信的数据库系统需要保证数据的一致性,包括事务一致性、复制一致性、缓存一致性等。这些数据一致性需要有高度的一致性和高可靠的一致性质量。

4)数据安全: 微信的数据库系统需要进行数据安全保护,包括数据加密、数据备份、数据恢复等。这些数据安全保护需要有高效的保护能力和高可靠的保护质量。

5)数据分析: 微信的数据库系统需要进行数据分析,包括数据统计、数据挖掘、数据报告等。这些数据分析需要有高效的分析能力和准确的分析结果。

4、消息队列

1)消息处理: 微信的消息队列需要处理大量的消息,包括用户消息、系统消息、业务消息等。这些消息的处理需要有高效的处理能力和准确地处理结果。

2)消息路由: 微信的消息队列需要进行消息路由,将消息准确地发送到目标服务。这需要有高效的路由能力和高可靠的路由质量。

3)消息持久化: 微信的消息队列需要进行消息持久化,保证消息在系统故障时不会丢失。这需要有高效的持久化能力和高可靠的持久化质量。

4)消息顺序: 微信的消息队列需要保证消息的顺序,确保消息按照发送的顺序被接收。这需要有高度的顺序性和高可靠的顺序性质量。

5)消息安全: 微信的消息队列需要进行消息安全保护,包括消息加密、消息认证、消息审计等。这需要有高效的保护能力和高可靠的保护质量。

5、缓存系统

1)缓存策略: 微信的缓存系统需要实现合理的缓存策略,包括何时缓存、何时更新、何时淘汰等。这些策略的实现需要有高效的策略执行能力和准确的策略执行结果。

2)缓存一致性: 微信的缓存系统需要保证缓存的一致性,确保缓存数据和源数据的一致。这需要有高度的一致性和高可靠的一致性质量。

3)缓存性能: 微信的缓存系统需要提供高性能的数据访问,包括高速的读取、高效的写入等。这需要有高性能的访问能力和高可靠的访问质量。

4)缓存容量: 微信的缓存系统需要管理大量的缓存数据,包括用户状态、会话信息等。这需要有高效的管理能力和高可靠的管理质量。

5)缓存安全: 微信的缓存系统需要进行缓存安全保护,包括数据加密、访问控制、审计日志等。这需要有高效的保护能力和高可靠的保护质量。

基于 Spring Cloud Alibaba + Gateway + Nacos + RocketMQ + Vue & Element 实现的后台管理系统 + 用户小程序,支持 RBAC 动态权限、多租户、数据权限、工作流、三方登录、支付、短信、商城等功能

  • 项目地址:https://github.com/YunaiV/yudao-cloud

  • 视频教程:https://doc.iocoder.cn/video/

三)功能复杂性

微信提供了非常丰富的功能,包括聊天、朋友圈、支付、小程序 等,而微信的聊天功能需要处理消息的发送和接收,朋友圈功能需要处理信息的发布和浏览,支付功能需要处理交易的创建和完成,小程序功能需要提供应用的运行环境等,这些功能的实现和维护,都增加了微信系统的功能复杂性。

一图顶千言

8b78ff16830ad452bd635896db7cc7f5.png

1、聊天功能

1)消息类型: 微信的聊天功能支持多种类型的消息,包括文本消息、语音消息、图片消息、视频消息、表情消息、位置消息等,每种类型的消息都需要进行特定的编码、传输、解码和显示处理。

2)消息发送和接收: 微信需要处理消息的发送和接收,包括消息的输入、发送、传输、接收、显示等一系列的处理,需要考虑网络环境、设备性能、用户体验等多个因素。

3)消息存储和同步: 微信需要处理消息的存储和同步。用户的聊天记录需要在本地和服务器上进行存储,以支持离线访问和跨设备访问,需要实现高效的数据存储和同步机制。

4)消息搜索: 微信提供了聊天记录的搜索功能。用户可以通过关键词搜索聊天记录,前提也是需要实现高效的全文搜索和索引机制。

5)消息安全: 微信需要保证聊天消息的安全,包括消息的加密、传输安全、访问控制等,这同样需要实现强大的安全机制,以保护用户的聊天隐私。

2、朋友圈功能

1)信息发布: 在微信的朋友圈中,我们可以看到各式各样的内容,包括文字、图片、视频、链接等。这些内容的发布涉及到数据的存储、索引和推送,同时,用户还可以自定义内容的可见范围,这就涉及到了复杂的权限控制机制。

2)信息浏览: 朋友圈的魅力在于分享和互动,用户可以浏览到朋友们发布的信息,并进行点赞和评论。这就要求微信能够高效地获取和显示信息、处理好点赞和评论的存储、显示和通知。

3)信息推送: 信息的及时性是很重要的,用户在发布朋友圈的时候,需要新发布的信息能够及时推送给用户。这就考验了微信的信息推送机制,同时用户还可以自定义是否接收某些用户的信息推送,这就涉及到了复杂的推送设置机制。

4)信息搜索: 有时候,我们想找回曾经的某个动态,微信的朋友圈提供了信息的搜索功能。用户可以通过关键词搜索朋友圈的信息,这就需要微信有高效的全文搜索和索引机制。

5)信息安全: 在分享的同时,我们也关心自己的隐私安全,微信的朋友圈需要保证信息的安全。这包括信息的加密、传输安全、访问控制等,这就需要微信有强大的安全机制,以保护用户的信息隐私。

3、支付功能

1)交易处理: 微信支付支持多种交易方式,包括转账、付款、收款等。每一种交易方式都涉及到一系列复杂的处理流程,如验证用户身份、扣款、入账等,这都需要微信支付有高效且准确的处理能力。

2)安全保障: 支付安全是微信支付最重要的考量因素,因此微信需要实现强大的安全机制,包括数据加密、风险控制、欺诈防范等,以保护用户的资金安全。

3)用户体验: 微信支付需要提供简单、快捷的支付体验,包括快速的支付流程、清晰的支付状态、方便的支付方式等。为了实现这些需要进行精细化的设计和优化。

4)支付场景: 微信支付支持多种支付场景,包括线上支付、线下支付、跨境支付等。每一种支付场景都有其特定的需求和挑战,如线下支付需要支持二维码支付、NFC支付等,跨境支付需要处理汇率转换、跨境清算等问题。

5)支付服务: 微信支付还提供了一系列的支付服务,如红包、理财通、公益捐赠等,这些服务的实现和维护,同样增加了微信支付的功能复杂性。

4、小程序功能

1)运行环境: 微信小程序的运行环境是其复杂性的一个重要体现。微信需要提供一个稳定且高效的环境,让小程序能够顺利运行,包括 JavaScript 的执行环境、各种 API 的提供,以及 UI 的渲染等。

2)开发框架: 微信为小程序开发者提供了一套完整的开发框架,这其中包括了语言规范、丰富的组件库,以及便捷的开发工具,为了提供更好的开发体验,需要不断地维护和优化这套开发框架。

3)生命周期管理: 微信小程序的生命周期管理也是一个复杂的过程,包含对小程序的加载、运行、卸载等各个阶段进行管理,这就需要微信具备高效的资源管理和任务调度能力。

4)性能优化: 为了提供流畅的用户体验,微信需要具备丰富的优化经验,能对对小程序的性能进行优化,包括提升启动速度、优化运行速度,以及降低内存占用等。

5)安全防护: 在保证小程序功能的同时,微信还需要保护小程序的安全,包括保护代码的安全,保护用户数据的安全,以及防止网络攻击等。为此,微信需要具备强大的安全防护机制,并且需要进行严格的安全审核。

四)行为复杂性

微信的行为我们梳理一下,发现是非常复杂的,它需要处理各种用户操作,响应各种系统事件,适应各种运行环境 等。

其中就包括了,微信需要处理用户的登录、发送消息、发表朋友圈、进行支付等操作,需要响应系统的网络变化、设备状态变化、应用状态变化等事件,需要适应不同的网络环境、设备环境、用户环境,下面我们展开说一说。

一图顶千言

380141e1694848625429b83158d6da19.png

1、用户操作处理

1)多样性: 微信需要处理各种用户操作,包括登录、发送消息、发表朋友圈、进行支付等。每一种操作都有其特定的处理流程和规则,这就需要微信有能力处理各种不同的用户操作。

2)实时性: 用户的操作往往需要微信能够实时响应。例如,当用户发送一条消息时,微信需要立即将消息发送出去;当用户发表一条朋友圈时,微信需要立即进行发布。

3)连贯性: 用户的操作往往是连贯的,一系列的操作需要协同完成一个任务。例如,用户在进行支付时,可能需要先选择商品,然后填写支付信息,最后确认支付。

4)异常处理: 在处理用户操作时,微信还需要考虑各种异常情况。例如,网络异常、服务器异常、用户输入异常等。

5)安全性: 在处理用户操作时,微信还需要保证操作的安全。例如,用户的登录操作需要保证密码的安全,用户的支付操作需要保证交易的安全。

2、系统事件响应

1)多元化的事件源: 微信需要响应的系统事件源非常多样,包括网络状态变化、设备状态变化、应用状态变化等。每一种事件源都可能对微信的运行产生影响,微信需要对这些事件进行有效地捕获和处理。

2)实时性: 系统事件的发生往往是无法预知的,微信需要能够实时地响应这些事件,例如,当网络状态发生变化时,微信需要立即调整网络请求策略;当设备状态发生变化时,微信需要立即调整资源使用策略。

3)处理策略: 对于不同的系统事件,微信需要有不同的处理策略。例如,对于网络状态变化,微信可能需要调整网络请求策略;对于设备状态变化,微信可需要调整资源使用策略。最终考验的是微信有能力制定和执行有效的处理策略。

4)异常处理: 在响应系统事件时,微信还需要考虑各种异常情况,例如,网络异常、设备异常、系统异常等。

5)性能影响: 系统事件的处理可能会对微信的性能产生影响。例如,大量的事件处理可能会占用大量的CPU资源,影响微信的运行性能,这需要微信有有效的性能优化策略。

3、运行环境适应

1)网络环境适应: 微信需要适应各种网络环境,包括Wi-Fi、4G、3G、2G甚至没有网络的情况。对于不同的网络环境,微信需要有不同的数据传输策略,以保证服务的稳定性和流畅性。

2)设备环境适应: 微信需要适应各种设备环境,包括不同的操作系统、不同的硬件配置、不同的屏幕大小等。

3)用户环境适应: 微信需要适应各种用户环境,包括用户的使用习惯、使用场景、使用时间等。

4)系统更新适应: 随着操作系统的更新,微信需要及时进行适配,以利用新的系统特性,提高用户体验。同时,也需要处理可能出现的兼容性问题。

5)安全环境适应: 微信需要适应不断变化的安全环境,包括新的安全威胁、新的安全标准等,这就需要微信有强大的安全防护能力,以保护用户的数据安全和隐私安全。

4、行为分析

1)数据收集: 微信需要收集大量的用户行为数据,包括用户的操作行为、使用习惯、使用时间、使用场景等,包含着高效的数据收集机制和大数据处理能力。

2)数据分析: 收集到的数据需要进行深入的分析,以了解用户的需求和偏好,需要有强大的数据分析能力,包括数据挖掘、机器学习、人工智能等技术。

3)行为模型: 基于数据分析的结果,微信需要建立用户行为模型,以预测用户的未来行为,需要能有精准的模型建立和优化能力。

4)个性化服务: 基于用户行为分析的结果,微信需要提供个性化的服务,以提高用户体验。

5)隐私保护: 在进行用户行为分析的同时,微信还需要保护用户的隐私,需要有强大的数据加密和访问控制机制,以保护用户数据的安全。

5、行为预测

1)数据挖掘: 微信需要通过大数据技术,对用户的行为数据进行深度挖掘和分析,以找出可能的行为模式和趋势。

2)模型构建: 基于挖掘出的数据,微信需要构建预测模型,如机器学习模型或深度学习模型,以预测用户的未来行为。

3)实时预测: 微信需要能够实时地预测用户的行为,以便及时地做出响应,例如,预测用户可能的需求,提前进行资源的准备和调度,这需要微信具备高效的计算和响应能力。

4)预测准确性: 预测的准确性直接影响到微信的用户体验和服务质量,微信需要不断优化预测模型,提高预测的准确性。

5)隐私保护: 在进行行为预测的同时,微信还需要保护用户的隐私,这就需要微信有强大的数据加密和访问控制机制,以保护用户数据的安全。

思考

复杂性是系统的固有属性 ,它来源于系统的规模、结构、功能、行为 等多个方面,而要管理好系统复杂性是一个需要多方面合作的任务。我们站在架构师的角度 ,就是要以降低系统的复杂性为目标 ,针对不同的复杂性问题采取不同的应对方案:如:

针对规模复杂性问题 ,我们首先想到的是采用微服务、服务网格等架构模式,将大规模的系统分解为可独立开发、部署和扩展的小规模服务,然后通过负载均衡、服务发现等技术,实现服务的动态伸缩和故障转移,以提高系统的性能和可用性;

针对结构和功能复杂性问题 ,我们考虑参考模块化、分层、解耦等设计原则,构建出清晰、灵活、可维护的系统结构,并按照业务和功能进行垂直划分和水平划分,实现功能的高效执行和动态扩展,还可以通过容器化、云原生等技术,实现系统结构的动态调整和优化;

针对行为复杂性问题 ,可以通过状态机、事件驱动等模型,实现行为的可预测和可控,同时考虑通过行为的监控、追踪、分析等技术,实现行为的实时洞察和快速定位。

最后想说的一点是 ,系统的复杂性性在项目从启动到交付,再到产品不断迭代优化的过程中,每个阶段体现出来的复杂性问题是不一样的 ,有些复杂性优先级很低,如:项目刚启动我们就开始为亿级用户、订单规模而设计,这是不合理的,我们应抓住重点,以 业务和产品角度去做好架构设计 。


欢迎加入我的知识星球,全面提升技术能力。

👉 加入方式,“长按”或“扫描”下方二维码噢:

e63ca86814f3d828e9434fbea3e6db67.png

星球的内容包括:项目实战、面试招聘、源码解析、学习路线。

7126de1c5708c3a07dbae9f35e6e22c1.png

738fde72bb60772936336a4eadae7527.png6766332faad616208ecb36d3a62102b8.png85e25fa0f854dbd40cc2e17ef4b98da9.png0c446968dffda8447a0ef64c36074b07.png

文章有帮助的话,在看,转发吧。
谢谢支持哟 (*^__^*)
TMS_WebGMaps_1.9.8.0_Full_Source TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder 立即下载

相关推荐

Petalinux 2021.1 + Vivado 2021 实战:手把手教你为Zynq板卡移植Linux并搞定AXI DMA驱动

本文详细介绍了基于Petalinux 2021.1和Vivado 2021工具链,为Zynq开发板移植Linux系统并开发AXI DMA驱动的全流程。从环境配置、硬件设计到驱动适配与性能优化,提供了实战避坑技巧和版本特异性问题的解决方案,帮助开发者快速构建高速数据传输系统。

weixin_42641741的博客 387

新顶流!开发3年拥有100万用户,开源不到一周已获 7K Star

来源:OSC开源社区Puter 是近日在 GitHub 上最受欢迎的一款开源项目,正式开源还没到一周 ——star 数就已接近 7k。作者表示这个项目已开发 3 年,并获得了超过 100 万用户。根据介绍,Puter 是基于 Web 的桌面操作系统,运行于浏览器中,具有丰富的功能、速度极快且可高度扩展。它可用于构建远程桌面环境或用作云存储服务、远程服务器、Web 托管平台等的界面。特性功能丰富:P...

程序猿DD 360

[南大ICS-PA2]PA2 - 简单复杂的机器:冯诺依曼计算机系统

mips32和riscv32的指令长度只有32位, 因此它们不能像x86那样, 把C代码中的32位常数直接编码到一条指令中. 思考一下, mips32和riscv32应该如何解决这个问题?加载立即数到寄存器的高20位,然后便可以是哟给你标准的立即指令来创建32位常量。在程序分析领域中,静态指令是指程序代码中的指令,动态指令是指程序运行过程中的指令,例如对于一下指令序列。位域,在小端机器上,先定义的在每个字节的低位,后定义的在每个字节的高位。,这是处理非法指令的宏,其定义在。指令,而下一条动态指令则是。

qq_42474104的博客 928

一个注解,优雅的实现接口幂等性!

????这是一个或许对你有用的社群????一对一交流/面试小册/简历优化/求职解惑,欢迎加入「芋道快速开发平台」知识星球。下面是星球提供的部分资料:《项目实战(视频)》:从书中学,往事中“练”《互联网高频面试题》:面朝简历学习,春暖花开《架构 x 系统设计》:摧枯拉朽,掌控面试高频场景题《精进 Java 学习指南》:系统学习,互联网主流技术栈《必读 Java 源码专栏》:知其然,知其所以然????这是一个或许...

weixin_44421461的博客 280

矩阵束(Matrix Pencil)入门:从通信系统到控制理论,它为何是建模利器?

本文深入探讨矩阵束(Matrix Pencil)在通信系统与控制理论中的关键作用,揭示其作为复杂系统建模利器的独特价值。从MIMO系统的多径干扰分析到电力系统稳定性判据,矩阵束通过`A-λB`方程求解提供精准建模方案,显著提升5G通信和工业控制等领域的性能表现。

weixin_30134145的博客 359

【软考高级架构】论文范文12——论生成式AI在软件开发中的应用与挑战

随着生成式AI技术的跨越式发展,以大语言模型为代表的生成式AI正在深刻改变软件开发的传统模式。在代码生成、测试构造、文档编写等环节,生成式AI展现出显著的效率提升潜力,但其应用也面临着代码质量不可控、安全漏洞植入、版权合规等严峻挑战。本文以笔者主导的某大型金融企业智能研发辅助平台建设项目为案例,围绕生成式AI在软件开发中的应用实践与应对挑战的策略展开论述。笔者担任系统架构师,负责平台架构设计、模型选型、质量保障机制及安全防线构建。

qq837993702的博客 275

芋道以开源之名行下作之事 恬不知耻 标榜自己开源 特公开全部源码+sql 不用再加入知识星球 2024-08-14

链接: https://pan.baidu.com/s/1TeuxbAUfLQ5_BqMBF1kniQ?pwd=cqud 提。依次为后端、补充版的sql、前端。此文档内安装部署等一应俱全。

bojikeqian的博客 5025

LVGL在单色屏上运行

本文主要讲述LVGL在单色屏应用中的实现思路,并已验证通过。网上关于lvgl移植的文章有很多了,本文不加以赘述。

weixin_43278295的博客 4462

2023,那些被“技术网红”误导的技术趋势

???? 这是一个或许对你有用的社群???? 一对一交流/面试小册/简历优化/求职解惑,欢迎加入「芋道快速开发平台」知识星球。下面是星球提供的部分资料:《项目实战(视频)》:从书中学,往事上“练”《互联网高频面试题》:面朝简历学习,春暖花开《架构 x 系统设计》:摧枯拉朽,掌控面试高频场景题《精进 Java 学习指南》:系统学习,互联网主流技术栈《必读 Java 源码专栏》:知其然,知其所以然????这是一个或许...

芋艿V 141

Open3D 球旋转算法(BPA)三维建模【2026最新版】

球旋转算法,博客长期更新,本文最新更新时间为:2026年4月11日。

点云侠的博客 37万+

宇瞳杯安防镜头设计

宇瞳杯安防镜头设计

weixin_72050316的博客 1516

芋道源码的周八(2018.02.24)

摘要: 原创出处 http://www.iocoder.cn/Weekdays/2018-02-24/ 「芋道源码」欢迎转载,保留摘要,谢谢!1. 推荐文章2. 公众号文章3. 知识星球文章1. 推荐文章笔者在地铁有阅读公众号技术文章的习惯。给时间一点时间,给努力一点努力。《RocketMQ 初探》《再谈缓存的穿透、数据一致性和最终一致性问题》Java面试通关要点系列基础篇核心篇框架篇微服务篇工程

芋道源码 1023

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

51c大模型~合集111

OpenAI 的某发言人表示:「为了提高清晰度和安全性,我们增加了一个额外的后处理步骤,其中模型会审查原始的思维链,删除任何不安全的内容,然后简化某些复杂的思维。可以看到,虽然 ChatGPT 确实完成了任务并展示了总结版的思维链,但似乎并未如 OpenAI 发言人说的那样给出与提示词语言同样语言的总结版。北大-灵初联合实验室表示,Align-DS-V的多模态强推理能力是VLA模型大脑端的核心,接下来的研究训练计划,是利用多模态推理模型的跨模态穿透能力,实现action穿透,最终实现真正高效的VLA模型。

whaosoft~aiotの开发板商城 2317

Probability and Statistics - 4th edition

Probability and Statistics - 4th edition

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

调整几行代码,接口吞吐提升 10 倍,性能调优妙啊!

????这是一个或许对你有用的社群????一对一交流/面试小册/简历优化/求职解惑,欢迎加入「芋道快速开发平台」知识星球。下面是星球提供的部分资料:《项目实战(视频)》:从书中学,往事中“练”《互联网高频面试题》:面朝简历学习,春暖花开《架构 x 系统设计》:摧枯拉朽,掌控面试高频场景题《精进 Java 学习指南》:系统学习,互联网主流技术栈《必读 Java 源码专栏》:知其然,知其所以然????这是一个或许...

weixin_44421461的博客 373

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

免费获取芋道源码ruoyi-vue-pro和yudao-cloud的sql脚本,持续更新!

ruoyi-vue-pro和yudao-cloud都属于芋道源码,但用过的人都知道,这两个开源项目下有商城、ERP、CRM等模块,这些模块的SQL需要加入芋道源码的知识星球才能获取,加入费用为199元,有点小贵!芋道源码的ruoyi-vue-pro和yudao-cloud都已经发布到GoldPanKit上,通过GoldPanKit构建项目不仅可以免费获取到SQL,还能选配功能模块,调整包名,自动配置数据库。

Caesar's blog 1万+

我宣布,这是我2022年吃的最有意思的瓜!

点击上方“芋道源码”,选择“设为星标”管她前浪,还是后浪?能浪的浪,才是好浪!每天 10:33更新文章,每天掉亿点点头发...源码精品专栏原创 | Java 2021超神之路,很肝~中文详细注释的开源项目RPC 框架 Dubbo 源码解析网络应用框架 Netty 源码解析消息中间件 RocketMQ 源码解析数据库中间件 Sharding-JDBC 和 MyCAT ...

芋艿V 3504

一款开源、精美的知识管理工具,可独立部署

???? 这是一个或许对你有用的社群???? 一对一交流/面试小册/简历优化/求职解惑,欢迎加入「芋道快速开发平台」知识星球。下面是星球提供的部分资料:《项目实战(视频)》:从书中学,往事上“练”《互联网高频面试题》:面朝简历学习,春暖花开《架构 x 系统设计》:摧枯拉朽,掌控面试高频场景题《精进 Java 学习指南》:系统学习,互联网主流技术栈《必读 Java 源码专栏》:知其然,知其所以然????这是一个或许...

芋艿V 528

一款强大的开源团队协作利器,思维导图、知识库、任务分发全搞定

???? 这是一个或许对你有用的社群???? 一对一交流/面试小册/简历优化/求职解惑,欢迎加入「芋道快速开发平台」知识星球。下面是星球提供的部分资料:《项目实战(视频)》:从书中学,往事上“练”《互联网高频面试题》:面朝简历学习,春暖花开《架构 x 系统设计》:摧枯拉朽,掌控面试高频场景题《精进 Java 学习指南》:系统学习,互联网主流技术栈《必读 Java 源码专栏》:知其然,知其所以然????这是一个或许...

芋艿V 537

七张图解锁Mybatis整体脉络,让你轻松拿捏面试官

????这是一个或许对你有用的社群????一对一交流/面试小册/简历优化/求职解惑,欢迎加入「芋道快速开发平台」知识星球。下面是星球提供的部分资料:《项目实战(视频)》:从书中学,往事中“练”《互联网高频面试题》:面朝简历学习,春暖花开《架构 x 系统设计》:摧枯拉朽,掌控面试高频场景题《精进 Java 学习指南》:系统学习,互联网主流技术栈《必读 Java 源码专栏》:知其然,知其所以然????这是一个或许...

weixin_44421461的博客 277

11.8k Star 的开源 AI 笔记神器:内置 RAG 知识库,让 Obsidian 用户都想换

读 Spring Boot 官方文档(https://docs.spring.io/spring-boot/)的 Auto-configuration 章节,碰到一段不懂的——截图丢进 NoteGen,一句话备注「yudao-cloud 仓库:https://github.com/YunaiV/yudao-cloudLiteLLM 仓库:https://github.com/BerriAI/litellm。调研选型时——读 5 个候选库的 README,每个库截一些关键截图、贴几段官方原话、写几句吐槽。

weixin_44421461的博客 367

配置中心除了Nacos之外的另一款神器~

????这是一个或许对你有用的社群????一对一交流/面试小册/简历优化/求职解惑,欢迎加入「芋道快速开发平台」知识星球。下面是星球提供的部分资料:《项目实战(视频)》:从书中学,往事中“练”《互联网高频面试题》:面朝简历学习,春暖花开《架构 x 系统设计》:摧枯拉朽,掌控面试高频场景题《精进 Java 学习指南》:系统学习,互联网主流技术栈《必读 Java 源码专栏》:知其然,知其所以然????这是一个或许...

weixin_44421461的博客 204

一款轻量级、开源、强大的物联网综合业务平台

???? 这是一个或许对你有用的社群???? 一对一交流/面试小册/简历优化/求职解惑,欢迎加入「芋道快速开发平台」知识星球。下面是星球提供的部分资料:《项目实战(视频)》:从书中学,往事上“练”《互联网高频面试题》:面朝简历学习,春暖花开《架构 x 系统设计》:摧枯拉朽,掌控面试高频场景题《精进 Java 学习指南》:系统学习,互联网主流技术栈《必读 Java 源码专栏》:知其然,知其所以然????这是一个或许...

芋艿V 592

5.4k star,一分钟搞定一套报表,这款开源的报表工具绝了~

????这是一个或许对你有用的社群????一对一交流/面试小册/简历优化/求职解惑,欢迎加入「芋道快速开发平台」知识星球。下面是星球提供的部分资料:《项目实战(视频)》:从书中学,往事中“练”《互联网高频面试题》:面朝简历学习,春暖花开《架构 x 系统设计》:摧枯拉朽,掌控面试高频场景题《精进 Java 学习指南》:系统学习,互联网主流技术栈《必读 Java 源码专栏》:知其然,知其所以然????这是一个或许...

weixin_44421461的博客 596

一文搞懂 Java 动态代理,so easy!

???? 这是一个或许对你有用的社群???? 一对一交流/面试小册/简历优化/求职解惑,欢迎加入「芋道快速开发平台」知识星球。下面是星球提供的部分资料:《项目实战(视频)》:从书中学,往事上“练”《互联网高频面试题》:面朝简历学习,春暖花开《架构 x 系统设计》:摧枯拉朽,掌控面试高频场景题《精进 Java 学习指南》:系统学习,互联网主流技术栈《必读 Java 源码专栏》:知其然,知其所以然????这是一个或许...

芋艿V 259

芋道商城部署文档,完整sql,视频资源自取

芋道源码,芋道商城,文档,视频,sql,公开,自取,免费

云胜的笔记 760

一张长图透彻理解 SpringBoot 启动原理,架构师必备知识,不为应付面试!

???? 这是一个或许对你有用的社群???? 一对一交流/面试小册/简历优化/求职解惑,欢迎加入「芋道快速开发平台」知识星球。下面是星球提供的部分资料:《项目实战(视频)》:从书中学,往事上“练”《互联网高频面试题》:面朝简历学习,春暖花开《架构 x 系统设计》:摧枯拉朽,掌控面试高频场景题《精进 Java 学习指南》:系统学习,互联网主流技术栈《必读 Java 源码专栏》:知其然,知其所以然????这是一个或许...

芋艿V 302
上一篇: 在公司整了这套系统架构,同事直呼666!
下一篇: 复杂业务下,如何优雅的使用设计模式来优化代码?
公众号-芋道源码
博客等级 码龄10年 1631粉丝 377原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值