大家好,这里分享一些2021年面试中关于微服务和分布式领域的常见问题及解答。这些问题主要针对应届毕业生,但对有经验的求职者来说,可能需要更深入的理解。首先,我们来聊聊网关的作用。在微服务架构中,每个服务独立运作,但安全认证、流量控制、日志和监控等通用功能需要全局管理。没有网关,就需要每个服务重复实现这些功能,网关则提供统一的解决方案,如请求转发、身份验证、流量控制和监控等,主要任务是实现请求过滤。常见的网关系统有开源的Kong和Zuul,Kong凭借其社区活跃度和易用性更受欢迎。Kong基于OpenResty,一个强大的Web应用服务器,允许使用Lua进行扩展,如通过插件机制实现Zipkin集成。限流算法有四种易懂的实现方式:固定窗口计数器、滑动窗口计数器、漏桶算法和令牌桶算法。例如,固定窗口计数器每分钟限制10个请求,而滑动窗口则细化到每秒处理的请求数。分布式ID的引入是为了应对大数据量和分表后可能出现的ID冲突问题。它保证了全局的唯一性,是互联网企业处理数据增长的必要手段。在分布式ID生成策略方面,可以采用分布式哈希函数或时间戳加分布式序列号等方式。RPC,即远程过程调用,解决了不同服务间高效通信的需求,它简化了服务间的通信过程,提高了效率。总结来说,这些知识点是理解微服务和分布式系统的基础,希望对求职者有所帮助。如果你觉得有收获,别忘了分享和收藏哦!