说明:本篇博客只是记录一些有用的技术方法,不做具体说明,大家可参考然后自己去查阅相关资源
1、根据ip获取用户地理位置信息
2、关于服务的启动和更新,提供一个思路:当切换服务时,先检测是否仍有工作线程,直到工作线程全部结束后,停止旧的服务,然后更新启动新服务。
3、常见的用户白名单限制,可单独抽取成一个服务,白名单是否生效,建议配置到一个json-config中,通过后端维护来进行开关,前端仅需定期加以判断就可以了,好处是:后端来控制配置项更加方便及时。
4、分库分表不支持全局事务,如需全局事务,可考虑GTS;另外拆分键自建索引。
5、protobuf是google开源的一种结构化数据存储格式,常用于RPC数据交换格式。GRPC是RPC协议的一种,可用作android ios web 后端等多端开发。
6、消息队列推荐rabbit MQ & kafka
7、多点共用服务,可采用dubbo;多个dubbo便于其他人共用,可采用单开api接口,dubbo服务来实现接口,其他调用者只需调用api中的接口。
8、配置管理安全起见进行抽离可视化管理,如携程开源的apollo
9、redis和redisson配合开发,会显著提高服务质量
10、朋友圈及点赞评论,可做成时间线来存储,根据数据版本进行增量拉取数据。
11、拼手气红包金额分配可采用去尾高斯算法(正态分布)
12、excel和xml文件可进行转换,文件读取常用POI
13、数据库阻塞比较严重的时候,不要盲目加机器节点,往往是慢sql影响比较大,数据库优化多考虑索引、拆分键、乐观情况加缓存(注意缓存使用的命中率,不要产生脏缓存)。
14、proto代码格式化工具:protobuf support(已有博文详细说明)。
15、web接口传重要数据务必加密再传,尤其注意数据安全性,尤其注意get数据。https数据会自动加密
16、学习通信可参考XMPP协议及openfire开源项目源码
17、数据库查询语句务必注意数据隐式转换问题
18、数据加解密服务用的比较多的话可以抽离成一个专门的dubbo服务
19、可以通过 RSS 订阅 jenkins项目上线情况 ----借助 irreader 订阅,jenkins 也有邮件功能,功能貌似更强大
20、测试环境利用 terraform 和 ansible 可实现方便的伸缩应用
21、通过文件传输数据通常会选择json,很多时候会选择xml,xml读取参考链接:
https://blog.youkuaiyun.com/qq_37465368/article/details/84110021
22、替代getter和setter的插件:lombok