安恒 Java 面经

Linux相关命令
HTTP 和 https有什么区别
HTTP1.0和http2.0有什么区别
购票业务如何实现的?
如何实现的高并发高流量的购票呢?
缓存如何添加的?
消息队列了解吗?
HashMap是怎么实现扩容的?
ArrayList是怎么扩容的?
Linkedlist 在什么情况下是无序的?
如果我把linkedlist的数据一个一个放进一个数组里面,什么情况下,从数组取出来的数据会和我想象的顺序不一致?
Spring事务失效有几种场景?讲一下
算法,判断一个链表是否有环?
如何判断环的入口?
不用hashmap怎么实现?
Rocket MQ是怎么配置的?
Sentinel是怎么配置的?
有没有自己打通过前后端交互,Nginx有了解过吗?

反问

面试官人很好,回答不上来的也会提醒一点思路
许愿二面
时间大概20多分钟 #牛客解忧铺#  #24届软开秋招面试经验大赏#  #安恒#
全部评论
你好,你的问题好多呀,我来一个一个回答吧。 1. HTTP和HTTPS的区别:HTTP是超文本传输协议,用于在万维网上传输信息,而HTTPS是在HTTP的基础上增加了SSL/TLS安全协议,用于加密数据传输,提供更安全的数据传输。 2. HTTP1.0和HTTP2.0的区别:HTTP1.0是早期的HTTP协议,只支持文本传输,而HTTP2.0支持多路复用,可以同时传输多个请求和响应,提高了传输效率。 3. 购票业务如何实现:购票业务通常使用数据库来存储票务信息,用户通过客户端提交购票请求,服务器处理请求,从数据库中扣除相应的票数,并将购票信息写入数据库。 4. 如何实现高并发高流量的购票:可以通过负载均衡、分布式架构、缓存、消息队列等技术来提高系统的并发处理能力和吞吐量。 5. 缓存如何添加:在应用程序中,可以使用缓存来存储一些常用的数据,以减少对数据库的访问次数,提高系统的响应速度。常见的缓存有Redis、Memcached等。 6. 消息队列了解吗:消息队列是一种异步通信机制,用于在不同系统之间传递消息。常见的消息队列有RabbitMQ、Kafka等。 7. HashMap是怎么实现扩容的:HashMap的扩容是通过重新计算哈希值,将原来的数据重新分配到新的数组中实现的。 8. ArrayList是怎么扩容的:ArrayList的扩容是通过创建一个新的、更大的数组,然后将原数组中的数据复制到新数组中实现的。 9. Linkedlist 在什么情况下是无序的:Linkedlist是一个双向链表结构,每个节点都有一个指向前一个节点和后一个节点的指针,正常情况下,Linkedlist是有序的。但在特殊情况下,例如多线程环境下,可能会导致Linkedlist的无序。 10. 如果我把linkedlist的数据一个一个放进一个数组里面,什么情况下,从数组取出来的数据会和我想象的顺序不一致:如果在将Linkedlist的数据放入数组时,没有按照链表的顺序进行,那么从数组中取出来的数据就可能与你想象的顺序不一致。 11. Spring事务失效有几种场景:Spring事务失效的场景包括:方法不是public的、方法没有被Spring管理、事务传播属性设置错误、异常被内部捕获等。 12. 算法,判断一个链表是否有环:可以使用快慢指针法来判断一个链表是否有环。快指针
4 回复
分享
发布于 2023-10-24 21:38

相关推荐

8 17 评论
分享
牛客网
牛客企业服务