上云无忧 > 文档中心 > 腾讯云消息队列 CMQ 版实战教程 - 在线图片处理案例
消息队列 CMQ 版
腾讯云消息队列 CMQ 版实战教程 - 在线图片处理案例

文档简介:
某美图公司在腾讯云搭建了在线图片处理服务,该服务可以让用户上传照片,并指定需要对这些照片执行的操作,例如裁剪、红眼处理、牙齿美白、重新着色、对比度调节、生成缩略图等。
*此产品及展示信息均由腾讯云官方提供。免费试用 咨询热线:400-826-7010,为您提供专业的售前咨询,让您快速了解云产品,助您轻松上云! 微信咨询
  免费试用、价格特惠
某美图公司在腾讯云搭建了在线图片处理服务,该服务可以让用户上传照片,并指定需要对这些照片执行的操作,例如裁剪、红眼处理、牙齿美白、重新着色、对比度调节、生成缩略图等。用户上传图片后,提交任务,然后等待图片处理完,下载处理后的图片。不同的操作会耗费不同的处理时间,从几秒到几分钟不等,而且用户可能一次上传几张也可能是几十张甚至几百张图片,所以总的处理时间就跟上传的图片个数、图片的大小、用户选择的操作有关。

使用 TDMQ CMQ 版实现了上述需求,用户的图片存储在腾讯云存储中(CBS/COS等),用户的每一个操作请求都会作为一个消息存入请求队列(Request Queue)中,消息内容为:图片索引,由图片名称+用户请求的操作类型+图片存储的位置索引 key 等组成。
运行在 CVM 的图片处理服务从 Request Queue 中获取消息(图片索引),图片处理服务器从云端下载数据,并进行图片编辑,完毕后把处理结果发送到结果队列(Response Queue)中,结果图片存储到云存储中。流程结束,客户已将原图片、编辑处理后的图片,都存储在云端存储,可随时下载使用。
可扩展的、高可靠的进一步思考:
如果因为 bug 或其他原因导致图片处理服务暂时不可用。但是系统利用 TDMQ CMQ 版使得错误对用户透明,一方面用户可以继续上传照片,web server 可以继续发消息到 Request Queue,消息会被保存在队列中直到图片处理服务可用后取走;另一方面。图片处理服务在实现时不用记住崩溃前在处理的消息,而且其崩溃时处理的消息还可以被重新处理。因为 TDMQ CMQ 版提供的接收消息(包括接收顺序队列消息和接收并发队列消息)特性保证消息在接收后仍然在队列中,直到消息的接收者显式来删除它。本特性保证了图片处理服务与图片上传服务的解耦。
如果单个图片处理服务不能满足用户需求(用户虽然能够上传照片,但是却长时间拿不到处理的结果),利用 TDMQ CMQ 版并启动多个图片处理服务便可以满足不断增长的用户访问需求。 TDMQ CMQ 版的两个特性让这个需求成为可能:
单个 TDMQ CMQ 版队列是可以让多个 server 同时共享访问的(即发送消息、接收并发队列消息、删除并发队列消息功能)。
一个消息不会同时被多个服务接收,这是通过针对消息的短暂锁来保证的,消息的接收者可以指定消息被锁定的时间,接收者处理完消息需要主动删除消息,如果接收者处理消息失败,那么另一个服务可以在这个消息的锁失效后重新获得这个消息。
这两个特性保证了处理服务器的数量可以随着负载的变化而动态加减。
相似文档
  • 春晚红包活动涉及四个大型系统的联动,包括微信、微信支付、红包系统和财付通系统。以下简单介绍各个系统: 红包系统:个人红包的发、抢、拆和列表查看; 财付通系统:包括支付订单、异步入账流水的高性能存储,用户余额和账单的实时展示;
  • 与微信支付紧密合作的第三方移动金融支付解决方案提供商,如深圳威富通等,促进了全国各行各业的线下商铺的发展,通过微信支付,提高效率,免除现金结算的低效率。
  • 阅文集团旗下的起点文学网,使用 TDMQ CMQ 版满足了3个核心需求: 1. 『仗义书财』的运营系统,里面抢红包月票的功能,消费者入账的时候是异步的。入账信息会先写到 MQ 里。 消费者过来拉,且消费者确认已成功消费后,回调接口把 MQ 里的信息删掉。
  • 投递描述: CMQ 通过发送 POST 请求将主题消息推送到订阅的 HTTP Endpoint 端,消息格式支持两种:JSON 格式和 SIMPLIFIED 精简格式。 JSON 格式:推送的 HTTP 请求 Body 包含消息的正文和消息的属性信息。Content-type 为 text/plain。
  • 新版 CMQ 与原 CMQ 参数差异说明: 新版 CMQ 在数据流(消息收发)SDK 的用法和语法上与原 CMQ 一致,但有些参数与特性会和原 CMQ 有一定的差异。这些差异新版 CMQ 会通过特殊设置这些参数来保证在您迁移之后不会改变原有的生产消费逻辑,但如果是新建的队列或主题则尽可能参考新 CMQ 的逻辑进行设置。
官方微信
联系客服
400-826-7010
7x24小时客服热线
分享
  • QQ好友
  • QQ空间
  • 微信
  • 微博
返回顶部