“大部分情况下应该选择直接依赖组件,而不必去抽象”说起这个其实就像我们去提及工具或者说功能和可扩展性的取舍。用中间件存储的rabbitMQ和kafka在高并发方面来举例:
rabbitMQ:rabbit在高并发场景下确实比kafka强-阿里多次双11中历经考验,不过源代码代码的空间改造性相对kafka难许多,符合老师所说的直接用,不过一旦使用其替代方案就困难;
kafka:性能虽不如rabbitmq耐抗,不过其源代码思路简单改造性容易,符合老师课程中的“最少知识原则(Least Knowledge Principle,LKP)”。
两种方式的取舍其实很多时候还是看场景:相辅相成可能有时更可以充分发挥特性。
展开