【Java面试丨企业场景】常见技术场景

这篇具有很好参考价值的文章主要介绍了【Java面试丨企业场景】常见技术场景。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、单点登录怎么实现的

1. 介绍

  • 单点登录(Single Sign On,SSO):只需要登录一次,就可以访问所有信任的应用系统
    【Java面试丨企业场景】常见技术场景,Java面试,java

2. 解决方案

  • JWT解决单点登录问题
    【Java面试丨企业场景】常见技术场景,Java面试,java
  • 用户访问应用系统,会在网关判断Token是否有效
  • 如果Token无效,则会返回401(认证失败),前端跳转到登录界面
  • 用户发送登录请求,网关路由到登录服务,认证校验返回给浏览器一个Token,浏览器将Token保存到Cookie中
  • 随后,再去访问应用系统其他服务时,都需要携带Token,由网关统一验证后路由到目标服务

二、权限认证是如何实现的

1. 介绍

  • 后台的管理系统更加注重权限控制,最常见的是RBAC模型来实现
  • RBAC(Role-Based Access Control):基于角色的访问控制
  • 具体实现
    (1)5张表(用户表、角色表、权限表、用户-角色中间表、角色-权限中间表)
    【Java面试丨企业场景】常见技术场景,Java面试,java
    (2)7张表(用户表、角色表、权限表、菜单表、用户-角色中间表、角色-权限中间表、权限-菜单中间表)

2. 案例分析

【Java面试丨企业场景】常见技术场景,Java面试,java

三、上传数据的安全性怎么控制(网络传输数据安全性)

1. 介绍

【Java面试丨企业场景】常见技术场景,Java面试,java

  • 用户通过浏览器发送请求,请求数据通过网络传输的,如果是非常敏感的数据,如果有人恶意拦截,可能造成损失
  • 可以使用非对称加密(或者对称加密),给前端一个公钥让其把数据加密后传到后台,后台负责解密后处理数据

2. 解决方案

  • 对称加密:数据加密和解密使用相同的秘钥,即加密秘钥也可以用作解密秘钥
    【Java面试丨企业场景】常见技术场景,Java面试,java
    (1)优点:加密速度快,效率高
    (2)缺点:相对不太安全(不要保存敏感信息)
  • 非对称加密:有两个秘钥,公开秘钥负责加密,私有秘钥负责解密
    【Java面试丨企业场景】常见技术场景,Java面试,java
    (1)优点:与对称加密相比,安全性更高
    (2)缺点:加密和解密速度慢,建议少量数据加密

3. 总结

  • 文件很大建议使用对称加密,不过不能保存敏感信息
  • 文件较小,要求安全性高,建议采用非对称加密

四、负责的项目模块遇到哪些棘手问题,如何解决

1. 介绍

  • 什么背景(技术问题)
  • 解决问题过程
  • 最终落地方案

2. 案例分享

【Java面试丨企业场景】常见技术场景,Java面试,java

五、怎么做压测(性能测试)的

六、项目中日志如何采集的

1, 介绍

  • 日志是定位系统问题的重要手段,根据日志信息快速单位系统中的问题
  • 采集日志的方式
    (1)常规采集:按天保存到一个日志文件
    (2)ELK:Elasticsearch、Logstash、Kibana

2. ELK案例分享

【Java面试丨企业场景】常见技术场景,Java面试,java

  • Elasticsearch:全文搜索分析引擎,可以对数据存储、搜索、分析
  • Logstash:数据收集引擎,可以动态收集数据,对数据进行过滤、分析,将数据存储到指定的位置
  • Kibana:数据分析和可视化平台,配合Elasticsearch对数据进行搜索、分析、图表化展示

七、查看日志的命令

  • 目前采集日志的方式:按天保存到一个日志文件中
  • Linux中查看日志
    (1)实时监控日志的变化
    (2)按照行号查询
    (3)按照关键字查找日志信息
    (4)按照日期查询
    (5)日志太多,处理方式
    【Java面试丨企业场景】常见技术场景,Java面试,java

八、怎么快速定位系统的瓶颈

  • 压测(性能测试):项目上线之前测评系统的压力
  • 监控工具、链路追踪工具:项目上线之后监控
  • 线上诊断工具Arthas:项目上线之后监控、排查
    【Java面试丨企业场景】常见技术场景,Java面试,java

九、生产问题怎么排查

1. 介绍

  • 已经上线的bug排查思路
    (1)先分析日志,通常在业务中都会有日志的记录,或者查看系统日志,或者查看日志文件,然后定位问题
    (2)远程debug:debug公司的测试环境,调试代码

2. 远程debug案例分析

【Java面试丨企业场景】常见技术场景,Java面试,java【Java面试丨企业场景】常见技术场景,Java面试,java文章来源地址https://www.toymoban.com/news/detail-615677.html

到了这里,关于【Java面试丨企业场景】常见技术场景的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Java中Collection与Collections有什么区别?Java常见面试题解析

    本文将为大家详细讲解Java中Collection与Collections的区别点,这是我们进行开发时经常用到的知识点,也是大家在学习Java中很重要的一个知识点,更是我们在面试时有可能会问到的问题! 文章较长,干货满满,建议大家收藏慢慢学习。文末有本文重点总结,主页有全系列文章分

    2024年02月06日
    浏览(34)
  • Java常见的一些经典面试题(附答案解析)

    我想每个程序员比较头疼的事情都是:工作拧螺丝,面试造火箭吧。但是又必须经历这个过程,尤其是弄不清面试官问的问题,如果你准备的不是很充分,会导致面试的时候手足无措。今天这篇文章是从已工作5年的程序员面试几十次中挑选的面试概率比较大的一些题目,都是

    2024年02月04日
    浏览(42)
  • java八股文面试[多线程]——ThreadLocal底层原理和使用场景

    源码分析: ThreadLocal中定义了ThreadLocalMap静态内部类,该内部类中又定义了Entry内部类。 ThreadLocalMap定了 Entry数组。 Set方法: Get方法: Thread中定义了两个ThreaLocalMap成员变量: Spring使用ThreadLocal解决线程安全问题  我们知道在一般情况下,只有 无状态的Bean 才可以在多线程环

    2024年02月10日
    浏览(52)
  • 2023最常见200+Java面试题全分析:面试必背!(附答案)

    全文分为十九个模块,分别是: Java 基础、容器、多线程、反射、对象拷贝、Java Web 、异常、网络、设计模式、Spring/Spring MVC、Spring Boot/Spring Cloud、Hibernate、MyBatis、RabbitMQ、Kafka、Zookeeper、MySQL、Redis、JVM ,如下图所示: Java 基础 1. JDK 和 JRE 有什么区别? JDK:Java Development Ki

    2024年02月04日
    浏览(264)
  • 【Java多线程】面试常考 —— JUC(java.util.concurrent) 的常见类

    目录 1、JUC(java.util.concurrent) 1.1、Callable 接口 1.2、ReentrantLock 可重入锁 1.3、Semaphore 信号量 1.4、CountDownLatch 这是java中的一个包,存放着 多线程编程 中常见的一些类。 【Java多线程】Thread类的基本用法-CSDN博客 https://blog.csdn.net/zzzzzhxxx/article/details/136121421?spm=1001.2014.3001.5501 往

    2024年04月10日
    浏览(86)
  • 20道常见的Java面试题,你一定有遇到过

    Java是一门广泛应用于企业级开发的编程语言,在企业级应用开发中占据着重要的地位。因此,Java面试题也成为了企业招聘中必备的部分。在面试中,Java面试题会考察应聘者的对Java语言和相关技术的掌握程度以及解决问题的能力。那么,常见的Java面试题有哪些呢? 一起来看

    2024年02月14日
    浏览(39)
  • Java 大厂面试 —— 常见集合篇 List HashMap 红黑树

    23Java面试专题 八股文面试全套真题(含大厂高频面试真题)多线程_软工菜鸡的博客-CSDN博客 02-算法复杂度分析 2.1 数组 2.1.1 数组概述 数组(Array)是一种用 连续的内存空间 存储 相同数据类型 数据的线性数据结构。 我们定义了这么一个数组之后,在内存的表示是这样的:

    2024年02月11日
    浏览(62)
  • 《面试专题-----经典高频面试题收集一》解锁 Java 面试的关键:深度解析常见高频经典面试题(第一篇)

    大家好,我是码农阿豪,一位热爱 Java 编程的程序员。今天我想和大家分享一些常见的 Java 面试题,通过收集解析这些问题,希望能够帮助大家更好地准备面试,突破技术瓶颈, 把面试官按在地上摩擦 。 1. 运算符 运算符和、|和||的区别? 用最有效率的方法计算2乘以2的3次

    2024年02月04日
    浏览(42)
  • 《架构风清扬-Java面试系列第26讲》聊聊的LinkedBlockingQueue的特点及使用场景

    LinkedBlockingQueue也是BlockingQueue接口的一个实现类之一 这个属于基础性问题,老规矩,我们将从使用场景和代码示例来进行讲解 来,思考片刻,给出你的答案 1,使用场景 实现:基于链表实现的阻塞队列,可以选择是否设置容量上限,默认无界。 场景:适用于大多数生产和消

    2024年04月25日
    浏览(31)
  • 【外企面试】Java技术管理与架构面试参考

    Can you explain the key differences between monolithic and microservices architectures, and what factors would make you choose one over the other? Answer: Monolithic architectures involve building a single application that handles all business logic, data access, and UI components, while microservices architectures break the application into smaller, indepen

    2024年02月06日
    浏览(37)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包