【线上问题】两台服务器的时间不一致导致jwt解析错误

目录

一、问题描述
  • 1.线上生产问题,本地和测试环境均无问题

  • 2.本地和测试由于网关和登录服务均在同一台机器

  • 3.线上的登录服务和网关部署不在一起,登录服务的时间正常,网关服务的服务器时间比实际快5秒

  • 4.登录服务jwt产生的token,由网关解析时报异常:

    JWT must not be accepted before 2024-01-02T06:47:19Z. Current time: 2024-01-02T06:47:17Z, a difference of 1180 milliseconds. Allowed clock skew: 0 milliseconds.",

  • 5.调整好两台机器的时间即可解决

二、解决方法
复制代码
// 安装ntpdate
sudo yum install -y ntpdate
// 同步网络时间
sudo  ntpdate pool.ntp.org
// 如果服务已经在运行(提示the NTP socket is in use, exiting),可以用下面命令停止
sudo service ntpd stop
// 同步成功后提示step time server 139.199.214.202 offset 3.651036 sec
// 写入到机器硬件,以免重启失效
sudo hwclock -w
相关推荐
Mahir081 小时前
Spring 循环依赖深度解密:从问题本质到三级缓存源码级解析
java·后端·spring·缓存·面试·循环依赖·三级缓存
RyFit2 小时前
SpringAI 常见问题及解决方案大全
java·ai
石山代码2 小时前
C++ 内存分区 堆区
java·开发语言·c++
绝知此事3 小时前
【算法突围 01】线性结构与哈希表:后端开发的收纳术
java·数据结构·算法·面试·jdk·散列表
无风听海3 小时前
C# 隐式转换深度解析
java·开发语言·c#
一只大袋鼠3 小时前
Git 进阶(二):分支管理、暂存栈、远程仓库与多人协作
java·开发语言·git
德思特4 小时前
从 Dify 配置页理解 RAG 的重要参数
java·人工智能·llm·dify·rag
YOU OU4 小时前
Spring IoC&DI
java·数据库·spring
один but you5 小时前
从可变参数到 emplace:现代 C++ 性能优化的核心组合
java·开发语言
是码龙不是码农5 小时前
ThreadPoolExecutor 7 个核心参数详解
java·线程池·threadpool