协议扩展-体系结构
为了实现流量级的可扩展性,Citrix ADC设备上的流量处理公开为独立处理模块的管道。当它从入口到出口处理它时,流量通过它们。管道中的这些模块遵循一个无共享模型。消息传递用于将流量数据从管道中的一个模块发送到下一个模块。
流量处理管道中的某些点是可扩展的,因此您可以添加代码来定制Citrix ADC行为。
![局部图像]()
默认情况下,流量绕过不添加任何代码的可编程模块。
![局部图像]()
行为
用于定制流量处理的可编程接口称为行为。行为基本上是Citrix ADC设备上可用的常见可编程模式的形式化。这些行为由一组预定义的事件回调函数组成。您可以通过提供符合行为的回调函数来实现行为。
例如,TCP客户端行为由一个回调函数(对_数据)组成,该函数处理TCP客户端数据流事件。要为基于TCP的协议实现基于消息的负载平衡(MBLB),可以为此回调函数添加代码,以处理来自客户端的TCP数据流,并将字节流解析为协议消息。
背景:
行为中的回调函数通过上下文(即处理模块状态)调用。上下文是处理模块的实例。例如,对于不同的客户端TCP连接,使用不同的上下文调用TCP客户端行为回调。
有效载荷:
除了上下文之外,行为回调还可以有其他参数。通常,其余参数作为有效负载传递,有效负载是所有参数的集合。
因此,可编程处理模块实例可以被视为实例状态加事件回调函数的组合,即上下文加行为。流量作为事件有效负载通过管道流动。
有关Citrix ADC API扩展,请参见Citrix ADC扩展API参考.
下面的代码段显示了一个用户定义的函数,用于处理TCP客户端数据流事件。上下文和负载通过Citrix ADC代码传递给函数。这段代码只是将每次调用中接收到的TCP数据转发到管道中的下一个处理模块上下文。在本例中,下一个模块是负载平衡(LB)上下文,它是Citrix ADC本机模块。
函数client.on_data(ctxt,payload)ns.send(ctxt.output,“data”,{data=payload.data})end<--需要复制-->
此内容的官方版本为英语。有些Citrix文档内容是机器翻译的,只是为了方便您。Citrix无法控制机器翻译的内容,这些内容可能包含错误、不准确或不合适的语言。对于将英文原件翻译成任何其他语言的准确性、可靠性、适用性或正确性,或您的Citrix产品或服务符合任何机器翻译内容,不作任何形式的明示或暗示担保,以及根据适用的最终用户许可协议或服务条款或与Citrix签订的任何其他协议提供的产品或服务符合任何文件的任何保证,在此类文件已被机器翻译的情况下不适用。Citrix对使用机器翻译内容可能导致的任何损坏或问题概不负责。
你可以用Übersetzungen的焓变,你可以用谷歌的焓变。谷歌LEHNT JEDE AUSDRUCKLICHE奥得河STILLSCHWEIGENDE GEWAHRLEISTUNG BEZUG AUF死UBERSETZUNGEN AB, EINSCHLIESSLICH JEGLICHER GEWAHRLEISTUNG DER GENAUIGKEIT, ZUVERLASSIGKEIT和JEGLICHER STILLSCHWEIGENDEN GEWAHRLEISTUNG DER MARKTGANGIGKEIT, DER EIGNUNG毛皮杯BESTIMMTEN ZWECK和DER NICHTVERLETZUNG冯RECHTEN DRITTER。
该服务的价格为谷歌。谷歌排除相对的诽谤,表达你隐含的,你包含确切的保证,fiabilitÉ和隐含的保证,qualitÉ市场,d 'adÉquation À特殊用法和缺席,contrefaÇon。
我们的服务应该向您提供tecnologÍa的谷歌。谷歌renuncia a todas las garantÍas relacionadas con las traducciones, tanto implÍcitas como explÍcitas,包括las garantÍas de accurtuy, fiabilidad y otras garantÍas implÍcitas de comerciabilidad, idoneidad para en en en ausencia de infracciÓn de derechos。
本服务可能包含由谷歌提供技术支持的翻译。谷歌对这些翻译内容不做任何明示或暗示的保证,包括对准确性、可靠性的任何保证以及对适销性,特定用途的适用性和非侵权性的任何暗示保证。
このサービスには、谷歌が提供する翻訳が含まれている可能性があります。谷歌は翻訳について、明示的か黙示的かを問わず、精度と信頼性に関するあらゆる保証、および商品性、特定目的への適合性、第三者の権利を侵害しないことに関するあらゆる黙示的保証を含め、一切保証しません。
Este serviÇo pode conter traduÇÕes fornecidas pelo谷歌。O谷歌se exime de todas as garantias relacionadas com as traduÇÕes, expressas ou implÍcitas, including do ququer garantia de precisÃo, confabilidade e ququer garantia implÍcita de comercializaÇÃo, adequaÇÃo a um propÓsito especÍfico e nÃo infraÇÃo。