孔子曰:三人行,则必有我师。是故弟子不必不如师,师不必贤于弟子,闻道有先后,术业有专攻,如是而已。
配置时间类,可以方便的转化为时间,如果不能自己写时间类, 可以熟悉一下自带的时间类。
前端实现的功能明确,能够提供方便的查询是很有必要的。
按时间,按关键字,按照排序,状态,是否绑定,绑定类型,自己的类型。电量,开机时间,。。。
表一般不超过20个,字段多的,数据个数要少,数据量大的字段要少。
一般使用_连接起来,比如 tag_log,表示的是日志类型,tag可以表示标签,那就是标签的日志。
分对象的,分用途
也就是谁,干了什么事,至于时间,一般都是根据现场报备过来的时间为准,最好就放在内容里面,如果加上时间的字段,表示的一般是保存数据的时间,这个时间和事件发生的时间基本一致,但是实际上还是延后了的。
对于读取次数频繁的,添加缓存可以解决速度。但是还是要半个小时刷新一下缓存。
乐观锁的性能肯定快啊,特别适合读取。资源共享是互联网的基础。
对于数据的简单存储,不建议使用本地的存储,毕竟云的方便之处还是非常实用的,若是本地存储,有些因小失大,云上存储,带宽是一个问题,但是对于文本为主的内容,带宽所占的比例非常小,至于文件的备份,防止丢失,那就非常简单了。
1、可以使用二进制加密存储,不知道加密方式肯定解不出来,但是加密了,索引必须做好,不然后面文件没了,解析不出来。
2、使用数据库比如MySQL就非常适合优雅且精准的数据存储,自带的查询方法已经是非常的方便和完善了。至于性能问题,我想应该是横向拓展,纵向缓存,中间过滤来实现的
反正一般的场景存储使用MySQL就够了,但是记住,MySQL的读取和插入的效率不高,如果是长时间需要不断的刷新数据库的,我建议还是用缓存比较好,不然数据处理模块会陷入瓶颈,如果非要插入。
1、使用批量插入
2、使用队列,把需要处理的数据存入缓存,连着空闲的时间一直插入
MySQL单条数据插入的效率非常不乐观,1000条一样的数据,update3个字段,大概需要100s,1s只有10个左右的数据