一般来说本地数据库和网络数据库同时存在
但在什么时候使用本地 什么时候使用网络(判断条件是 数据修改?)
当我缓存在本地之后 我网络数据修改了 我要怎么去通知本地我进行修改了呢 (怎么知道它数据修改了呢 后端可以给一条数据修改通知?)
要每次打开都进行网络数据请求 对比? 然后将本地数据库数据替换吗
自己在手写数据库和bmob数据库对比时遇到了这个疑惑
我感觉如果每次打开都要请求数据进行对比
那本地数据库的意义只有当网络环境很差时才去查询数据吗
您的每一个用心回答,都会让这个世界变得更美好一些!
问题一:但在什么时候使用本地 什么时候使用网络(判断条件是 数据修改?)
网络数据库我暂且理解为后台的数据库,这个数据库也不是由你使用的呀。是由后台程序去使用的。为什么要访问后台,因为你要跟后台有数据交互。比如说你登录,本质上是后台操作了数据库,与你客户端何关?
什么时候使用本地数据库,当然是本地需要存储数据的时候。那一定要用数据库吗?那可不一定,我也可以用文件呀,自己定的格式之类的,但是这个效率高吗?使用方便吗?对吧。
问题二:当我缓存在本地之后 我网络数据修改了 我要怎么去通知本地我进行修改了呢
关于这个问题你要理解你这个缓存的意义是什么?不是所有数据都适合缓存的,实时性很强的则没有必要缓存,如果更新比较少的可以缓存,还有缓存策略,定时更新数据。也可以主动更新(刷新),或者被动更新。主动更新好理解吧,你更新了你的用户资料,然后去请求一下后台的数据,替换本地缓存的数据。被动更新,比如你的token,如果过期了后台会给你返回新的,这个时候你监听到有新的token,那么就替换掉你缓存上的。
换成生活中的事情去思考即可。
问题一:但在什么时候使用本地 什么时候使用网络(判断条件是 数据修改?)
网络数据库我暂且理解为后台的数据库,这个数据库也不是由你使用的呀。是由后台程序去使用的。为什么要访问后台,因为你要跟后台有数据交互。比如说你登录,本质上是后台操作了数据库,与你客户端何关?
什么时候使用本地数据库,当然是本地需要存储数据的时候。那一定要用数据库吗?那可不一定,我也可以用文件呀,自己定的格式之类的,但是这个效率高吗?使用方便吗?对吧。
问题二:当我缓存在本地之后 我网络数据修改了 我要怎么去通知本地我进行修改了呢
关于这个问题你要理解你这个缓存的意义是什么?不是所有数据都适合缓存的,实时性很强的则没有必要缓存,如果更新比较少的可以缓存,还有缓存策略,定时更新数据。也可以主动更新(刷新),或者被动更新。主动更新好理解吧,你更新了你的用户资料,然后去请求一下后台的数据,替换本地缓存的数据。被动更新,比如你的token,如果过期了后台会给你返回新的,这个时候你监听到有新的token,那么就替换掉你缓存上的。
换成生活中的事情去思考即可。