当前位置: 首页 > news >正文

望京 网站开发去大连需要下载哪些软件

望京 网站开发,去大连需要下载哪些软件,佛山网站建设公司哪个性比价好些,上海app网站开发价值一、消息丢失的时机? 生产端消息丢失 问题:因为网络异常导致消息发送失败,此时可能会产生消息丢失的情况,重试后可能产生消息重复生产的情况。 解决:超时重试,并在消费端保证幂等性。 消息队列中消息丢失 …

一、消息丢失的时机?

  1. 生产端消息丢失
    问题:因为网络异常导致消息发送失败,此时可能会产生消息丢失的情况,重试后可能产生消息重复生产的情况。
    解决:超时重试,并在消费端保证幂等性。

  2. 消息队列中消息丢失
    问题:如kafka是将数据存储在磁盘,如果每条消息写入时都立马存储在磁盘中会产生很多随机IO,随机IO耗时很高,因此数据是先写入缓冲区中,再根据特定的时机刷新到磁盘中,减少随机IO的开销。假设还未刷新到磁盘就出现宕机情况,则会产生消息丢失的情况。
    解决:可以考虑以集群方式部署Kafka服务,通过部署多个副本备份数据保证消息尽量不丢失。

  3. 消费端消费时丢失
    问题:消费者消费消息的进度是记录在消息队列集群中的,而消费的过程分为三步:接收消息、处理消息、更新消费进度。消费端网络抖动或者消费端业务逻辑异常导致中断,此时会产生消息丢失的情况。
    解决:一定要等到消息接收和处理完成后才能更新消费进度,但是这也会造成消息重复的问题,比方说某一条消息在处理之后消费者恰好宕机了,那么因为没有更新消费进度,所以当这个消费者重启之后还会重复地消费这条消息。

二、如何避免重复消费?

  1. 生产端重复发送
    kafka支持生产端幂等,这种特性保证消息虽然可能在生产端产生重复,但是最终在消息队列存储时只会存储一份。
    它的做法是给每一个生产者一个唯一的ID,并且为生产的每一条消息赋予一个唯一ID,消息队列的服务端会存储<生产者ID,最后一条消息ID>的映射。当某一个生产者产生新的消息时,消息队列服务端会比对消息ID是否与存储的最后一条ID一致,如果一致就认为是重复的消息,服务端会自动丢弃。

  2. 消费端幂等
    解决1:在生产时定义一个全局的唯一id,在消费端判断id是否被处理过。
    解决2:数据库增加版本字段,执行sql时会有乐观锁。

三、减少消息延迟的方式?

  1. 优化消费端耗时逻辑。
  2. 增加消费者数量,在kafka中一个partition只能被一个消费者消费,所以单纯增加消费者数量对kafka来说是无用的,可以增加partition。
http://www.yayakq.cn/news/64259/

相关文章:

  • 服务器上的网站自己建的网站如何做海外推广
  • 湖南广源建设工程有限公司网站手机网站优势
  • 阿里云代理网站怎么做wp系统网站如何做seo
  • 网站建设方案和报价p2p理财网站开发
  • 石家庄网站建设外包公司wordpress 微信 抓取
  • 网站设计汕头响应式网站开发流程
  • asp程序设计做网站企业营销型网站建设费用
  • 网站开发具体是干什么的视差效果网站
  • 网站广告费一般多少钱wordpress 首页添加图片
  • 网站制作现状解决方案邯郸做网站流程
  • 网站后台编码天津微信小程序开发公司
  • 企业站seo案例分析品牌建设方式有哪些?
  • 互联网创意网站有哪些方面做游戏门户网站要注意什么
  • 东莞网站优化昆明平台网站开发
  • 如何让网站长尾关键词有排名郑州权威发布
  • 来广营做网站苏州网站开发费用详情
  • 金属建材企业网站建设方案广州的互联网公司
  • 建设网站要备案吗无限责任公司
  • 哪里有免费 建设网站的地址营销型网站建设公司电话
  • 网站被收录后又被提出了全网网络营销系统
  • 数字创意设计包括哪些案例整站优化系统厂家
  • 做网站制作较好的公司crm管理系统怎么用
  • 产品介绍网站如何做seo营销型网站建设市场
  • 可以随意建国际商城的网站吗手机商城网站如何
  • 如何做设计网站页面wamp网站开发视频教程
  • 做任务领积分兑换别的网站上的会员手机新手学做网站
  • 企业网站轮播图怎么做松江做移动网站
  • 阿里云网站搭建教程pc端和移动端的网站
  • 工信部网站备案的需要幕布南京建设企业网站
  • 网站建设中期怎么入账大连哪家科技公司做网站好