mysql - 在 mysql 中以 json 格式存储常用数据值得吗?
问题描述
在 vue.js 应用程序中,主要关注点是与潜在客户合作。潜在客户有很多东西,比如联系人、列表和六个其他对象/表格。
他们也有互动,每个潜在客户可能有 30 次或更多,而电子邮件或电话等大多数事情都会有 1-3 个结果。我一次将 50 个潜在客户加载到前端
我正在尝试决定是否将其全部加载到前端以一次工作 50 个潜在客户是一个好主意,或者我是否应该有一个带有交互的 json 列作为潜在客户表的一部分,每次交互时我都会更新已保存,仅包含最少的信息,例如日期、类型、主题...
每次交互时更新 json 列似乎是一个额外的步骤(和重复的数据,这有多重要?),但似乎它会一直查找和加载数据
我不是程序员,但一直在教自己如何通过教程和 youtube 为我的业务做一些我需要做的事情,任何专业处理此问题的人的意见将不胜感激
另外,如果有人想告诉我如何以更好的格式提出这个问题,我愿意倾听
谢谢
解决方案
想象一下,如果您有 1000 条数据,但您只发送了 50 条,而您的用户按价格进行了过滤。你会只显示来自 50 或 1000 个过滤的数据吗?
这取决于您是否要向前端公开所有 1000 条数据。这是两者之间的选择,并且每次都调用您的服务器 api。
如果您正在调用服务器,请考虑使用像 Redis 这样的缓存来存储您的结果。
伪代码。
Request Received
Check Redis Cache - Redis.get('key')
If key exist - return cache.
Else -
check mysql for latest results.
Redis.set('key', latest results);
CreateRequest Received
- Write to mysql
- Redis.delete('key') // next request to view will create new cache with fresh data.
您的密钥可以是任何东西,例如您的 url ('/my/url')
推荐阅读
- sql - 从 SQL 中的 3 个字符串创建日期列
- java - JavaFX-11/macOS:DirectoryChooser 崩溃“NSObjectNotAvailableException”
- reactjs - React material-ui Select 组件的标签显示在内容之上
- google-ads-api - google adwords 转换跟踪可以通过后端集成来实现吗?
- vba - 使用 MS Access VBA 从 Outlook 发送电子邮件
- uwp - UWP 从背景开始音频
- ssas - 排除总和度量的最后一个事实行
- google-apps-script - 在允许查看者访问幻灯片演示文稿之前,我可以使用 Slides API 添加“同意条款”对话框吗?
- privileges - 每个新创建用户的 Aurora MySql 默认 USAGE 权限
- powershell - Fastlane 和 Powershell 两因素身份验证