草庐IT

CONSUMER

全部标签

聊聊APISIX Ingress 认证使用

身份认证在日常生活当中是非常常见的一项功能,大家平时基本都会接触到,ApacheAPISIX作为一个API网关,目前已开启与各种插件功能的适配合作,插件库也比较丰富,目前已经可与大量身份认证相关的插件进行搭配处理,如下图所示。基础认证插件比如Key-Auth、Basic-Auth,他们是通过账号密码的方式进行认证。复杂一些的认证插件如Hmac-Auth、JWT-Auth,如Hmac-Auth通过对请求信息做一些加密,生成一个签名,当API调用方将这个签名携带到APISIX,APISIX会以相同的算法计算签名,只有当签名方和应用调用方认证相同时才予以通过。其他则是一些通用认证协议和联合第三方组件

聊聊APISIX Ingress 认证使用

身份认证在日常生活当中是非常常见的一项功能,大家平时基本都会接触到,ApacheAPISIX作为一个API网关,目前已开启与各种插件功能的适配合作,插件库也比较丰富,目前已经可与大量身份认证相关的插件进行搭配处理,如下图所示。基础认证插件比如Key-Auth、Basic-Auth,他们是通过账号密码的方式进行认证。复杂一些的认证插件如Hmac-Auth、JWT-Auth,如Hmac-Auth通过对请求信息做一些加密,生成一个签名,当API调用方将这个签名携带到APISIX,APISIX会以相同的算法计算签名,只有当签名方和应用调用方认证相同时才予以通过。其他则是一些通用认证协议和联合第三方组件

关于.net core:RabbitMQ Consumer : AlreadyClosedException

RabbitMQConsumer:AlreadyClosedException我有一个简单的RabbitMQ发布者和消费者代码,如下所示。首先,我在My_Tasks队列中创建了10条不同的消息。当我尝试逐个获取这些消息并且autoAck标志为false时,我可以读取第一条消息,但无法将确认发送到RabbitMQ服务器。我收到下面写的错误;出版商;123456789101112131415varqName="My_Tasks";using(varconnection=factory.CreateConnection()){  using(varchannel=connection.CreateM

关于.net core:RabbitMQ Consumer : AlreadyClosedException

RabbitMQConsumer:AlreadyClosedException我有一个简单的RabbitMQ发布者和消费者代码,如下所示。首先,我在My_Tasks队列中创建了10条不同的消息。当我尝试逐个获取这些消息并且autoAck标志为false时,我可以读取第一条消息,但无法将确认发送到RabbitMQ服务器。我收到下面写的错误;出版商;123456789101112131415varqName="My_Tasks";using(varconnection=factory.CreateConnection()){  using(varchannel=connection.CreateM

RocketMQ Consumer 启动时都干了些啥?

可能我们对RocketMQ的消费者认知乍一想很简单,就是一个拿来消费消息的客户端而已,你只需要指定对应的Topic和ConsumerGroup,剩下的就是只需要:接收消息处理消息就完事了。当然,可能在实际业务场景下,确实是这样。但是如果我们不清楚Consumer启动之后到底会做些什么,底层的实现的一些细节,在面对复杂业务场景时,排查起来就会如同大海捞针般迷茫。相反,你如果了解其中的细节,那么在排查问题时就会有更多的上下文,就有可能会提出更多的解决方案。关于RocketMQ的一些基础概念、一些底层实现之前都已在文章RocketMQ基础概念剖析&源码解析中写过了,没有相关上下文的可以先去补齐一部分

RocketMQ Consumer 启动时都干了些啥?

可能我们对RocketMQ的消费者认知乍一想很简单,就是一个拿来消费消息的客户端而已,你只需要指定对应的Topic和ConsumerGroup,剩下的就是只需要:接收消息处理消息就完事了。当然,可能在实际业务场景下,确实是这样。但是如果我们不清楚Consumer启动之后到底会做些什么,底层的实现的一些细节,在面对复杂业务场景时,排查起来就会如同大海捞针般迷茫。相反,你如果了解其中的细节,那么在排查问题时就会有更多的上下文,就有可能会提出更多的解决方案。关于RocketMQ的一些基础概念、一些底层实现之前都已在文章RocketMQ基础概念剖析&源码解析中写过了,没有相关上下文的可以先去补齐一部分