烟台做网站价格石家庄正定网站建设

news/2025/9/24 0:34:06/文章来源:
烟台做网站价格,石家庄正定网站建设,网店推广要多少钱,wordpress加速优化插件1、PTP模型 Point-to-Point#xff0c;点对点通信模型。PTP是基于队列(Queue)的#xff0c;一个队列可以有多个生产者#xff0c;和多个消费者。消息服务器按照收到消息的先后顺序#xff0c;将消息放到队列中。队列中的每一条消息#xff0c;只能由一个消费者进行消费点对点通信模型。PTP是基于队列(Queue)的一个队列可以有多个生产者和多个消费者。消息服务器按照收到消息的先后顺序将消息放到队列中。队列中的每一条消息只能由一个消费者进行消费消费之后就会从队列中移除。 需要注意的是尽管这里使用Queue的概念但并不是先进入队列消息一定会被先消费。在存在多个下游Consumer情况下一些消息中间件例如ActiveMQ为了提升消费能力会将队列中的消息分发到不同Consumer并行进行处理。这意味着消息发送的时候可能是有序的但是在消费的时候就变成无序了。为了保证消费的有序一些MQ提供了**专有消费者”或者排他消费者”**的概念在这种情况下队列中的消息仅允许一个消费者进行消费如果存在多个消费者那么从中选择一个。但是这意味着在消息在处理中没有了并行性。如果消息量很多的情况下将会产生消息积压。为了解决专有消费者”的性能问题一些消息中间件采用分区的概念来解决性能问题我们将在后文进行介绍。 2、Pub/Sub模型 publish-and- subscribe 即发布订阅模型。在Pub/Sub模型中生产者将消息发布到一个主题(Topic)中订阅了该Topic的所有下游消费者都可以接收到这条消息。如下图 通常情况下一个条消息只要被消费一次就行了那么什么情况下需要所有的消费者都对这条消息进行消费呢最典型的情况就是需要在内存中对数据进行缓存并需要实时进行更新。例如笔者做过一个违禁词系统对用户输入的评论内容进行违禁词汇检测。这个违禁词系统部署了在N台服务器上为了提升检测性能每台机器都会将违禁词库全量加载到内存中词库的更新是通过发送MQ消息来完成的。由于采用Pub/Sub模型每台机器的consumer都可以接收到这条消息直接在内存中更新敏感词库即可。 3、Partition模型 为了解决在PTP模型下有序消息需要通过专有消费者”消费带来的性能问题一些消息中间件如rocketmqkafka采用了Partition模型即分区模型如下所示 生产者发送消息到某个Topic中时最终选择其中一个Partition进行发送。你可以将Parition模型中的分区理解为PTP模型的队列不同的是PTP模型中的队列存储的是所有的消息而每个Partition只会存储部分数据。对于消息者此时多了一个消费者组的概念Paritition会在同一个消费者组下的消费者中进行分配每个消费者只消费分配给自己的Paritition。上图演示了不同的消费者可能会分配到不同数量的Paritition。Paritition模式巧妙的将PTP模型和Pub/Sub模型结合在了一起 对于PTP模型 一条消息只会由一个消费者进行消费而Partition模型中每个分区最终也只会有一个消费者进行消费。对于通过专有消费者来保证全局消费有序的场景在Partition模型中只需保证创建的Topic只有一个Partition即可这个Paritition最终也只会分配其中一个消费者。另外在绝大部分场景下我们没有必要保证全局有序例如一个订单产生了3条消息分别是订单创建订单付款订单完成。消费时要按照这个顺序消费才能有意义。但是订单之间是可以并行消费的例如将订单1产生的3条消息发送到Partiton 1将订单2产生的3条消息发送到Partition 2如此便达到了不同订单之间的并行消费。 对于Pub/Sub模型 一条消息所有的下游消费者都可以进行消费。在Paritition模型中只需要为每个消费者设置成不同的消费者组即可。然而过多的消费者组会给消息中间件运维带来麻烦。所以一些消息中间件结合了Partition模型和Pub/Sub模型。例如RocketMQ支持为消费者组设置消费模式如果是集群模式就按照上述描述进行消费如果是广播模式就按照Pub/Sub模型进行消费。当然Partition模型也不全是优点其最大的限制在于Partition数量是固定的(虽然可以调整)且只可以分配给其中一个消费者。当消费者的数量大于Partition数量时这些多出来的消费者将无法消费到消息。一些消息中间件对此进行了优化例如rocketmq支持单个partition的并行消费。即在对单个消费者内同时启动多个线程来消费这个Partition中的数据当然前提是要求消息不是有序的对于有序的消息只能使用一个线程按顺序消费这个Partition中的数据。 4、Transfer模型 Paritition模型中的消费者组概念很有用同一个Topic下的消息可以由多个不同业务方进行消费只要使用不同的消费者组即可不同消费者组消费到的位置单独记录互不影响。 但是Paritition模型还是限制了消费者数量不能多于分区数。因此又有了另外一种消费模型笔者称之为Transfer模型如下图所示 生产者还是将消息发送到Topic中针对一个Topic可以创建多个通道这里称之为channel。与分区不同的是发送到Topic中的每条消息都会转发到每个channel因此每个channel都有这个Topic的全量数据。当然没有必要把真的把消息体完整的拷贝一份到channel中可以只记录一下消息元数据表示有一条放到这个channel中了。消费者在消费消息时必须指定从哪个channel消费。多个消费者消费同一个channel时每条消息只会有一个消费者消费达到这一点与PTP模型类似。事实上我们可以认为消费了同一个channel的消费者就自动组成了一个消费者组。但是与Partition模型不同的是这里没有分区的概念因此消费者的数量可以是任意的。事实上GO语言编写的NSQ消息中间件采用的就是这种模型。当然这种模型与PTP一样也不能保证被消息有序除非通过类似于”专用消费者”的概念。 最后 面试是跳槽涨薪最直接有效的方式马上金九银十来了各位做好面试造飞机工作拧螺丝的准备了吗 掌握了这些知识点面试时在候选人中又可以夺目不少暴击9999点。机会都是留给有准备的人只有充足的准备才可能让自己可以在候选人中脱颖而出。 如果你需要这份完整版的面试笔记只需你多多支持我这篇文章。 ——对文章进行点赞评论关注我然后再点击这里免费领取 ava-p7)** [外链图片转存中…(img-RgGVc8BW-1626176201274)]

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/914370.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

做的漂亮的家居网站做网站业务员

计算机基础知识同步练习题一、判断题下列各题中,您认为对的请在括号中填入“是” ,错的填入“非” 。1. 世界上第一台电子计算机是 1946 年在美国研制成功的。 ( )2. 电子计算机的用途是进行各种科学研究的数值计算。 ( )3. 电子计算机的计算速度很快但计…

太原做网站直通车17网站一起做网店优势与劣势

一、自定义信号,信号emit 1、自定义信号 在头文件中 加入signals: 就可以编写信号 2、emit emit的作用是通知信号发生 二、跨UI控件传参 每次按Dialog添加按钮主控件数字会增长 // .h private slots:void on_btnAdd_clicked(); signals:void sign…

凡科建设网站怎样收录百度政务网站建设需求

JWT(JSON Web Token)是一种基于 JSON 格式的轻量级令牌(token)协议,它被广泛应用于网络应用程序的身份验证和授权。相较于传统的 session-based 认证机制,JWT 具有更好的扩展性和互操作性,同时也…

营销型网站建设细节网站开发与运用

数据预处理是数据分析过程中至关重要的一步,它涉及到清洗、转换和整理原始数据,以便更好地适应分析模型或算法。以下是一些常见的数据预处理方法和规则: 数据清洗: 处理缺失值:检测并处理数据中的缺失值,可…

自己做的网站如何在网络上展示软件开发交付流程

文章目录 前言    文章目录 前言 一、指针运算 1.指针-整数 2.指针-指针 3.指针关系运算 二、野指针 1.概念 2.野指针的成因 1.未初始化 2.指针越界访问 3.指针指向的空间释放 3.避免野指针 1.指针初始化 2.小心指针越界 3. 指针变量不再使用时,及时置NULL 总结 …

网站建设能赚多少钱优化方案2022

前言 由于用户越来越注重 Web应用 的使用体验,随之而来的是 Web应用 需要提供了更加完善的 Web 动画 效果来实现以平滑的状态贯穿于用户的整个使用过程中。现在,这已经是司空见惯了,用户潜意识是希望可以获得更快的反馈响应和更友好的用户界…

如何做二级域名网站网络营销推广策划的步骤

一、Condition Condition 是在 Spring 4.0 增加的条件判断功能,通过这个可以功能可以实现选择性的创建 Bean 操作。比如说,只有满足某一个条件才能创建这个 Bean,否则就不创建。 SpringBoot 是如何知道要创建哪个 Bean 的?比如 Sp…

情侣博客网站模板下载微营销平台

关于导入三方SDK.framework之后,启动崩溃之后如下报错的解决方式: 截屏2020-10-14 上午9.55.09.png 在正常导入framework之后,做如图示操作, image.png 以上步骤之后,重新启动运行xcode,即可成功运行。

人设生成器网站做移动端活动页面参考网站

日期/时间类型是一种数据类型,用于表示日期和时间的值。在PostgreSQL数据库中,日期/时间类型通常包括以下几种形式: 名字存储大小描述最低值最高值最小单位timestamp [(p)][without time zone]8字节日期和时间(无时区公元前4713年294276 AD1…

手机网站建设品牌好html网页设计大赛作品

文章目录 1. 动静分离的好处2. 分离静态文件3. 修改 Nginx 配置文件4. location 命令修饰符优先级 1. 动静分离的好处 Apache Tocmat 严格来说是一款java EE服务器,主要是用来处理 servlet请求。处理css、js、图片这些静态文件的IO性能不够好,因此&…

新手学做网站pdfwordpress外贸建站怎么加左侧边栏

字节码指令简介 Java虚拟机指令由操作码(Opcode)和跟随其后的零至多个操作数(Operand)组成。 操作码:一个字节长度的,代表某种特定操作含义的数字。 操作数:操作码需要的参数。 字节码与数据…

临平做网站重庆微信网站作公司

博主主页:猫头鹰源码 博主简介:Java领域优质创作者、CSDN博客专家、阿里云专家博主、公司架构师、全网粉丝5万、专注Java技术领域和毕业设计项目实战,欢迎高校老师\讲师\同行交流合作 ​主要内容:毕业设计(Javaweb项目|小程序|Pyt…

isEmpty/isNotEmpty/isNotBlank/isBlank-isAnyEmpty/isNoneEmpty/isAnyBlank/isNoneBlank

#isEmpty系列 StringUtils.isEmpty() >>>是否为空. 可以看到 " " 空格是会绕过这种空判断,因为是一个空格,并不是严格的空值,会导致 isEmpty(" ")=falseStringUtils.isEmpty(null) = tru…

NetCore+Web客户端实现gRPC实时推送

之前出过websocket推送,sse推送,grpc的推送应该更具性价比,虽然前端要求复杂了一点点。下面快速的一步一步完成一个netcore服务端+web客户端的推送。 后端项目结构 GrpcRealtimePush/├── Services/│ └── C…

做网站选什么系统站长工具名称查网站

:: 是 Java 8 引入的方法引用(Method Reference)操作符。 方法引用是一种更简洁地表示特定方法的Lambda表达式的方式。它允许直接通过方法的名称引用已经存在的方法,而不是像Lambda表达式那样提供一个匿名函数。使用方法引用可以使代码更加简…

网站备案 拨测花多少钱能把网站做到页面

官方版本 现在能阅读电子教材的官方网站挺多的,例如 人民教育出版社-电子教材,还有 国家中小学智慧教育平台 ,其他还有很多可在阅读的网站。由于平台的原因不能直接贴链接,大家可以通过搜索关键词找到网站。 如何下载 据我所知…

网站建站中关键字搜索怎么弄wordpress怎么删回复

转载自 Java8-本地缓存这里我将会给大家演示用ConcurrentHashMap类和lambda表达式实现一个本地缓存。因为Map有一个新的方法可以在key为Null的时候自动计算一个新的value值。非常完美的实现cache。来看下代码:12345678910111213141516publicstatic void main(String…

搜狗提交网站入口采购软件

一个优秀的网络熔断机制(Circuit Breaker),可以有效提高应用的稳定性和响应性,特别是在面对不可靠的网络服务时。网络熔断机制的核心思想是防止系统在面对不可用的服务时不断地进行失败的请求,从而保护系统资源和提高用…

网站图片一般分辨率做多大在线爬取网页源码

前言 在前两篇《Spring Cloud构建微服务架构:服务容错保护(Hystrix服务降级)》和《Spring Cloud构建微服务架构:服务容错保护(Hystrix依赖隔离)》中,我们对Hystrix提供的服务降级和依赖隔离有了…