单体架构和微服务架构的区别

在面试过程中,这是一道经常被问到的一道面试题,我们应该如何回答呢?

1、微服务并非一定比单体架构好。

每种架构都有其适用的场景、我们要根据业务场景进行选择。

2、我们要看微服务和单体架构的应用场景

单体架构:适用于初创型公司的初创项目,可以快速试错,并且系统模块之间的调用是在进程内的通行,所以整体的性能表现好,初创公司是以解决问题、快速铺开市场、节约成本为主。

微服务:适用于用户场景多、系统业务庞大而复杂的场景,例如:修改一个类需要很长时间进行编译,牵一发而动全身时,就需要对系统进行业务拆分,拆分成多个子系统,每个子系统可以更灵活做升级了。如:拆分成订单子系统(专门负责订单)、用户子系统(专门负责用户登录注册)等,拆分后由原先的单体架构进程内的通行编程了进程之间的通信了,所以响应速度会有所影响。

3、最后看微服务拆分的原则

微服务拆分原则:一般是根据业务来进行拆分,例如:商品、购物车、订单、支付等等业务边界进行服务的拆分。

你可能感兴趣的:(java,面试,微服务架构)