证劵公司java后台面试题

  1. Gateway的流量请求大小?
  2. 并发度的高低?
  3. 使用Redis存储JWT的目的? 为了解决多个微服务之间的会话共享问题。在使用微服务架构时,每个微服务可能都有自己的Tomcat实例,而且可能会有多个实例。为了实现会话的共享和状态的一致性,可以使用Redis作为共享内存空间。与传统的基于Session的解决方案不同,使用Redis可以避免依赖于单个Tomcat实例的会话存储,从而解决了跨实例导致的数据丢失问题。
  4. Token的自动刷新机制是什么? 通常是指在使用JWT时,通过定期刷新Token来延长用户的登录状态。一种常见的实现方式是在Token过期之前,通过特定的接口或拦截器对Token进行刷新操作。在刷新过程中,可以使用RefreshTokenIntercepter来获取新的Access Token,从而保持用户的登录状态持久有效。
  5. 多线程使用场景? Java的ThreadPoolExecutor(线程池执行器)来管理和调度线程的执行。ThreadPoolExecutor提供了灵活的线程管理功能,可以定义线程池的大小、线程的生命周期、任务队列的类型等。通过合理配置ThreadPoolExecutor,可以实现对并发任务的控制和管理,提高系统的并发处理能力。
  6. 服务降级和熔断如何实现? 服务降级和熔断是一种常见的微服务治理机制,用于应对系统故障、资源不足或服务过载等情况。实现服务降级和熔断的方法有多种,其中一些常见的方法包括:
  • 超时设置:设置请求的最大等待时间,超过该时间则认为服务不可用,进行降级处理。
  • 错误率限制:监控服务的错误率,当错误率超过设定的阈值时,进行降级或熔断处理。
  • 限流策略:通过限制并发请求数量或请求速率来控制服务的负载,避免过载导致服务不可用。
  • 断路器模式:在服务出现故障或超时时,打开断路器,停止向该服务发送请求,直接返回预设的降级响应。
  • 降级响应:在服务不可用或降级时,返回预设的响应结果,如缓存数据、默认值或错误提示。
#java面试题#
全部评论

相关推荐

2 14 评论
分享
牛客网
牛客企业服务