java 面试过程中遇到的几个问题记录20230220
微服务注册中心的作用
微服务注册中心的作用是协调和管理微服务实例的注册和发现。它充当了服务注册表,可以维护服务实例的元数据,例如服务名称、IP 地址和端口号等。当一个微服务启动时,它会向注册中心注册自己的元数据,以使其他服务可以发现它。当一个服务需要调用另一个服务时,它会向注册中心请求可用实例的地址,然后进行调用。通过使用注册中心,微服务可以更轻松地进行水平扩展、负载均衡和服务发现。常见的微服务注册中心包括Netflix的Eureka、Consul、Zookeeper等。
2. 设计用户权限功能的表
用户表:包括用户ID、用户名、密码、姓名、邮箱、电话等基本信息。
角色表:包括角色ID、角色名称、角色描述等基本信息。
权限表:包括权限ID、权限名称、权限描述等基本信息。
用户角色关联表:包括用户ID和角色ID,表示用户和角色之间的关联关系。
角色权限关联表:包括角色ID和权限ID,表示角色和权限之间的关联关系。
3.常用 idea 开发快捷键
格式化代码:Ctrl + Alt + L (Windows) 或 Command + Option + L (Mac)
自动补全代码:Ctrl + Space (Windows) 或 Command + Space (Mac)
查找类:Ctrl + N (Windows) 或 Command + O (Mac)
查找文件:Ctrl + Shift + N (Windows) 或 Command + Shift + O (Mac)
查找方法:Ctrl + Alt + Shift + N (Windows) 或 Command + Option + O (Mac)
代码提示:Ctrl + Shift + Space (Windows) 或 Command + Shift + Space (Mac)
复制当前行或选中行:Ctrl + D (Windows) 或 Command + D (Mac)
撤销上一步操作:Ctrl + Z (Windows) 或 Command + Z (Mac)
重做上一步操作:Ctrl + Shift + Z (Windows) 或 Command + Shift + Z (Mac)
保存当前文件:Ctrl + S (Windows) 或 Command + S (Mac)
显示类的继承层次结构:Ctrl + H (Windows) 或 Command + H (Mac)
查找变量或方法的引用:Ctrl + Shift + F7 (Windows) 或 Command + Shift + F7 (Mac)
查找文本:Ctrl + F (Windows) 或 Command + F (Mac)
替换文本:Ctrl + R (Windows) 或 Command + R (Mac)
显示快速定义信息:Ctrl + Shift + I (Windows) 或 Command + Y (Mac)
当然,还有很多其他快捷键和功能,具体可以根据自己的需求进行学习和使用。
4. linux 查看端口的 指令
lsof -i :8080
[root@Cent0S8-FTP sysconfig]# lsof -i :8080
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
java 2597932 root 45u IPv6 27126054 0t0 TCP *:webcache (LISTEN)
netstat -anp | grep 8080
5. 你们业务中redis 用来存放哪些数据
在交通业务中,Redis可以用来缓存诸如交通流量、路况信息、车辆违规记录等数据。这些数据通常需要实时更新,而Redis的高性能读写操作可以满足这种实时性要求。此外,Redis还可以用于存储用户登录信息、会话信息等用户相关数据。同时,Redis的发布订阅功能也可以用于实时推送交通事件通知、路况变化等实时信息
6. 秒杀系统中要注意什么事项
在设计秒杀系统时,需要注意以下事项:
高并发处理:秒杀活动会引发大量的并发请求,系统需要具备高并发处理能力,如使用分布式系统和缓存,以及限流、熔断等机制。
数据库设计:秒杀活动的瞬间流量很大,数据库可能会出现瓶颈。需要设计合理的数据库表结构、索引、分库分表、主从同步等策略,以提高数据库处理性能。
防作弊:秒杀活动很容易被恶意攻击,如利用自动化工具进行抢购等。需要使用验证码、限制抢购次数、IP 黑名单、登录认证等措施来防止作弊。
事务处理:秒杀系统通常需要多个步骤完成,如验证商品库存、下单、减库存等。需要使用事务机制来确保这些步骤的原子性,以保证系统数据的一致性。
缓存处理:缓存可以提高系统性能,但需要注意缓存的有效性和一致性。需要使用合适的缓存策略,如缓存预热、数据异步更新等,以保证缓存的有效性和一致性。
系统监控:需要对系统进行全面监控,如实时监控请求量、响应时间、错误率、系统资源使用情况等,及时发现问题并进行处理,以保证系统的稳定性和可用性。