为提升系统的可用性,在短视频app开发时可能会采用微服务架构,就微服务架构而言,为完成某一业务服务需要调用多个服务模块给予技术或数据支持,而调用方式的选择需要结合微服务模块间的耦合程度决定。
一、常见的耦合种类
1、内容耦合
主要是指短视频app开发的一个模块可以直接访问另一个模块的内部数据,这种耦合类型的耦合性最高,在实际开发中需要尽可能避免。
2、公共耦合
是指多个模块可以访问同一个公共数据环境的耦合方式。
3、外部耦合
是指多个模块访问同一个全局简单变量,并且不是通过参数表传递此全局变量信息的耦合方式。
4、控制耦合
模块之间传递信息中包含用于控制模块内部的信息,由于控制耦合会导致模块之间控制逻辑互相影响,所以会增加短视频app开发后期的维护难度。
5、标记耦合
多个模块通过参数表传递数据结构信息的耦合方式。
6、非直接耦合
主要是指多个模块之间并没有直接联系,但是可以通过主模块的控制和调用实现联系的耦合方式,这是短视频app开发中比较理想的一种耦合方式。
二、常见的微服务调用方式
1、RPC方式
RPC方式就是远程函数调用,一般是同步的,可以马上获得调用数据,在实际开发中,很多业务场景是需要立刻得到结果的,所以这种方式在该类场景下就比较有优势,更何况RPC方式的代码也更简单。
2、事件驱动方式
在短视频app开发中,事件驱动方式可以分为两种,一种是事件通知方式,一种是事件溯源方式。具体如何选择如何结合实际的开发场景判断,其中事件溯源方式是一种具有颠覆性质的设计,可以将系统中所有数据均以事件的方式记录下来。
其实在短视频app开发中,为保证系统稳定性,微服务架构通常会采取“高内聚、低耦合”的原则,所以事件驱动的服务调用方式效果会更高,当然对于一些紧耦合的业务场景,也可以使用RPC服务调用方式。
声明:本文由云豹科技原创,转载请注明作者名及原文链接,否则视为侵权
一、常见的耦合种类
1、内容耦合
主要是指短视频app开发的一个模块可以直接访问另一个模块的内部数据,这种耦合类型的耦合性最高,在实际开发中需要尽可能避免。
2、公共耦合
是指多个模块可以访问同一个公共数据环境的耦合方式。
3、外部耦合
是指多个模块访问同一个全局简单变量,并且不是通过参数表传递此全局变量信息的耦合方式。
4、控制耦合
模块之间传递信息中包含用于控制模块内部的信息,由于控制耦合会导致模块之间控制逻辑互相影响,所以会增加短视频app开发后期的维护难度。
5、标记耦合
多个模块通过参数表传递数据结构信息的耦合方式。
6、非直接耦合
主要是指多个模块之间并没有直接联系,但是可以通过主模块的控制和调用实现联系的耦合方式,这是短视频app开发中比较理想的一种耦合方式。
二、常见的微服务调用方式
1、RPC方式
RPC方式就是远程函数调用,一般是同步的,可以马上获得调用数据,在实际开发中,很多业务场景是需要立刻得到结果的,所以这种方式在该类场景下就比较有优势,更何况RPC方式的代码也更简单。
2、事件驱动方式
在短视频app开发中,事件驱动方式可以分为两种,一种是事件通知方式,一种是事件溯源方式。具体如何选择如何结合实际的开发场景判断,其中事件溯源方式是一种具有颠覆性质的设计,可以将系统中所有数据均以事件的方式记录下来。
其实在短视频app开发中,为保证系统稳定性,微服务架构通常会采取“高内聚、低耦合”的原则,所以事件驱动的服务调用方式效果会更高,当然对于一些紧耦合的业务场景,也可以使用RPC服务调用方式。
声明:本文由云豹科技原创,转载请注明作者名及原文链接,否则视为侵权