后端服务常见问题解决方案
1 token生成
token = md5(uid+timestamp+nance)
存到redis,根据业务设置不同的有效时间。
2 消息合法性(防篡改)
数字签名
e.g.req:{
uid int
param1 int
param2 int
sig string
}sig = md5(uid+param1+param2+token)
也可参考:
kong插件hmac-auth
3 幂等
方案一:
业务支持具有消息唯一ID,并且能够持久化,则先查询。
根据不同的业务,可考虑悲观方式或乐观方式执行业务。
方案二:
使用2的签名,token+sig存放在redis中。 有效时间根据业务自行设置。
该方案并不是完全幂等,根据功能需求和性能需求判断是否使用。
4 请求追踪
http业务请求追踪工具很多。 zipkin,jeager等。
tcp等自定义协议,可参考zipkin的方案。
用户一次连接,生成一个spanid。
后端服务常见问题解决方案相关推荐
- SpringCloud 实战:禁止直接访问后端服务
作者 | 单一色调 责编 | 张文 来源 | 转载自 JAVA 日知录 前言 使用 SpringCloud 架构后,我们希望所有的请求都需要经过网关才能访问.在不作任何处理的情况下,我们是可以绕 ...
- 038Node.js后端服务处理端口号被占用的解决方案portfinder
038Node.js后端服务处理端口号被占用的解决方案portfinder 端口占用处理方案一: 服务启动之前给个提示,适用于固定端口号的服务 const port = Number(config.A ...
- 微服务网关解决方案调研和使用总结 专题
一.什么是网关 1.1 什么是网关 API Gateway(APIGW / API 网关),顾名思义,是出现在系统边界上的一个面向API的.串行集中式的强管控服务,这里的边界是企业IT系统的边界,可以 ...
- Cluster模式潜在问题及解决方案、Web服务综合解决方案
会不断更新!冲冲冲!跳转连接 https://blog.csdn.net/qq_35349982/category_10317485.html Cluster模式潜在问题及解决方案.Web服务综合解决 ...
- EE Servlet 3:如何在Web应用程序中设置后端服务
在Web应用程序中,提供用户界面(UI)通常只是工作的一半. 许多应用程序都有后端服务支持的要求. 后端服务的一些示例是调度程序进程(批处理),侦听队列并在消息进入时作出响应,或者是简单的事情,例如存 ...
- mysql8.0.13安装不_Windows环境下MySql8.0.13的安装及常见问题解决方案
Windows环境下MySql8.0.13的安装及常见问题解决方案 目录 一.引文 二.下载地址 三.安装步骤 3.1.文件解压 3.2.新建并修改my.ini文件 3.3.配置环境变量 3.4.以管 ...
- net-snmp开发代理常见问题解决方案
转自:http://www.aichengxu.com/view/43967 net-snmp开发代理常见问题解决方案,有需要的朋友可以参考下. snmpd启动方式: ./snmpd-Lsd-Lf/d ...
- 智能运维 VS 传统运维|AIOps服务管理解决方案全面梳理
云智慧 AIOps 社区是由云智慧发起,针对运维业务场景,提供算法.算力.数据集整体的服务体系及智能运维业务场景的解决方案交流社区.该社区致力于传播 AIOps 技术,旨在与各行业客户.用户.研究者和 ...
- 访问后端服务 报错504 问题记录
** 1.问题现象 ** 服务运行在集群中,早上起来客户反应登录没有反应,调用接口报错504 2.解决步骤 2.1 排查服务域名解析是否出问题, nslookup 域名 内网进去其它pod进去,解析正 ...
最新文章
- 全球及中国智能食品秤行业发展预测及市场规模预测报告2021年版
- python 抛出异常与自定义异常raise
- SVM 透彻理解与分析
- Windows7优化开机、关机速度的方法
- JS遍历对象或者数组
- python论坛签到_Python实现某论坛自动签到功能
- BestCoder Round #90 Kblack loves flag
- RHEL6.4下一键安装 Redmine
- VC版 MFC程序对话框资源移植
- linux安装ps2键盘驱动程序,VoodooPS2Controller v1.8.25 黑苹果键盘鼠标触摸板万能驱动 _ 黑苹果乐园...
- db2import详解_DB2中import详解 - yishueitian326的日志 - 网易博客
- 星际传说中的IPFS原理
- 《Java程序小作业之自动贩卖机》#谭子
- 一些需要用到的latex语句
- tp5 分页之无刷新页面渲染
- 单点登录-CAS介绍
- 玩转pjsip之一 简介
- Python 如何安装 MySQLdb ?
- Jetpack Compose(一):Text
- git在commit提交时报:On branch master Changes not staged for commit