让对话AI帮助你做程序架构设计,以及解决你的疑问

我想问下对话AI,本文采取的是chatgpt免费版

我问:

你说程序的设计,前后端分离的BS架构。比如工人基础档案1000条记录,工程项目基础档案10条记录,其他相关这两个基础档案的具体功能,比如打卡记录,宿舍记录,工人调动记录。我们的系统可以很方便的获取具体功能的数据库记录,但是本身数据库记录并没有基础档案,只有外键ID. 那我在前端显示的时候,我有两个方案:

  1. 后端提供一个接口,直接显示具体功能和相关档案的信息(使用数据库左连接等相关技术)

  2. 后端提供3个接口,在载入第1个具体功能的记录页面时,例如打卡记录。第一次显示打卡记录的第1页时,同时调用另外两个基础档案接口,把基础档案全部调用出来存放在前端变量里。当调用打卡记录的第二个页面,第三个页面,第n个页面,都只调用具体功能的记录,而基础档案记录直接从页面变量里获取,并循环匹配。

==

你认为,哪个方案更好?

我:

综合以上建议,好的架构,是方案2(架构2)比较好,对吗?如果这样,基于缺点,我想做个变化,即进入某功能的页面后,及其下面有多个子功能或页面,只要进入功能主页面或者子功能主页面都会重新调用基础档案备用,并提示数据不准确时可采取刷新动作。

综上所对话,我们的结论,其实在web2.0时代就提出了,就是ajax开始盛行的年代...

尽量减少对数据库服务的压力是一个良好的设计原则,尤其是在高并发或大数据量的系统中。通过优化数据缓存、减少不必要的查询、合理设计接口等方式,可以有效地提升系统的性能和用户体验。

改进方案正是基于这一思路,既保留了前端缓存带来的性能优势,又通过灵活的刷新机制确保数据的一致性。这样可以在减少数据库压力的同时,保持系统的高效运行。

没有高手,却有AI相伴的羔手...

相关推荐
Oxo Security19 分钟前
【AI安全】检索增强生成(RAG)
人工智能·安全·网络安全·ai
Kratos开源社区22 分钟前
别卷 LangChain 了!Blades AI 框架让 Go 开发者轻松打造智能体
go·agent·ai编程
少林码僧22 分钟前
2.3 Transformer 变体与扩展:BERT、GPT 与多模态模型
人工智能·gpt·ai·大模型·bert·transformer·1024程序员节
阿部多瑞 ABU4 小时前
Unicode全字符集加解密工具 - 命令行交互版:功能完整的终端解决方案
经验分享·交互·ai编程·1024程序员节
大熊猫侯佩4 小时前
黑衣人档案:用 Apple Foundation Models + SwiftUI 打造 AI 聊天机器人全攻略
ios·swiftui·ai编程
赵得C4 小时前
智能体的范式革命:华为全栈技术链驱动下一代AI Agent
人工智能·华为·ai·ai编程
paopao_wu5 小时前
DeepSeek-OCR实战(01):基础运行环境搭建-Ubuntu
linux·人工智能·ubuntu·ai·ocr
Altair澳汰尔5 小时前
新闻速递丨Altair RapidMiner 数据分析和 AI 平台助力企业加速智能升级:扩展智能体 AI 及分析生态系统
人工智能·ai·数据分析·仿真·cae·rapidminer·数据自动化
No0d1es7 小时前
2025年 CSP-J1 入门级初赛 C++真题
开发语言·c++·青少年编程·csp·信息学奥赛·初赛
马丁的代码日记7 小时前
Google Gemini 综合教程:从入门到 API 接入
ai·google·gemini