千万短信发送量的架构设计

客户端将计费信息(扣的条数、费用…..)提交到计费子系统,计费子系统收到请求,将数据缓存到本地Cache(可以是内存、或者其他Cache,本地缓存数据结构是Key-Quue, key为用户标识,Queue用于存放用户计费信息),并且通知任务分配服务为其分配一个线程处理扣费信息(只分配一次,以后这个线程就出来这个用户),一条处理扣费线程可处理多个用户,但一个用户不能分配到多个处理扣费线程中。通知完后立即返回响应。(由于只有分配一次,所以只有第一次稍后会慢个零点几毫米,后面几乎响应耗时为0)。

处理扣费服务启动后,将根据自己持有处理用户Key,去从本地缓存中获取到该用户Key引用的队列实例,直接从实例中读取该用户的计费信息进行扣费即可,为了处理速度快,可以从队列中批量读取,合计后一次性从数据库中扣除。扣除完成后,更新本地余额缓存。

接口设计:1.提供一个计费接口

2.提供一个获取余额接口

协议类型:通信协议建议采用Socket。

客户校验余额:直接获取内存中的余额,避免对库开销太大。

分布式集群:对本地缓存和任务分配服务设计成共享,即可分布式和集群。

Queue:建议所使用实现“无等待 (wait-free)”算法算法的队列。

处理扣费服务:对处理的用户数量可配,在用户扣费信息量非常非常大时,可设置成一个线程一个用户,用户量少时可以一个线程处理多个用户,以节省资源。(也可以写一个简单的算法去只能判断一下当前的用户计费信息量)

下面看下架构的草图

时间: 2024-07-29 08:02:08

千万短信发送量的架构设计的相关文章

千万PV级别WEB站点架构设计2

在上家公司工作时,设计的千万级PV架构,现在放出来,留做纪念: 至于架构的具体细节,我就不一一解说了,直接看图吧!

短视频SDK架构设计,短视频APP开发目标首选

短视频 SDK 实践中主要做的一些事情,这其中最重要的就是短视频 SDK 的架构设计,包括架构设计理念.架构图.整体数据流程.模块架构设计等.今天小编就简单介绍一下短视频APP开发中,选择什么样的厂家,厂家SDK 架构设计理念.第一点说到 SDK 的设计理念必定要提到命名规范,就跟腾讯的企业理念一样,他们的命名规范是统一.简单并且精炼的,比如他们将对外的核心类统一以 PLShortVideo 为前缀,在录制.编辑以及剪辑等模块的命名:参数配置类则均以 PLxxxSetting 为标准进行命名:接

当前一种先进实用的架构设计

目录 1系统架构图...1 2架构设计...3 2.1项目开发环境...3 2.2运行环境要求:...3 2.3 服务器架构平台:...4 2.4.架构逻辑设计...5 2.4.1 LVS+KEEPLIVED+SQUID+HAPROXY+JBOSS集群...5 2.4.2mysql集群...6 2.4.3fastdfs图片服务器集群...8 2.4.4acveMQ服务器集群...8 3 架构剖析...10 3.1负载均衡器解析...10 3.2 lvs解析...11 3.3keeplived解析

短信群发,随时随地来的更直接

免费就能使用的微信公众平台,因其对用户的强大聚合能力,越来越被商家视为营销好手段,随着微信时代的到来,短信群发服务是不是落伍了呢? 即时通信工具应用热潮的强烈冲击下,手机短信平台面临着史前最严峻的挑战.根据工信部的统计,2012年,全国移动人均短信发送量下滑了9%左右.而相较之下,推出市场短短两年时间的微信,其注册用户已超过3亿.在中国11亿的手机用户中,微信的渗透率达到27.3%. 从上面的种种数据来看,短信行业会逐渐的被社会淘汰.被类似微信等即时通信工具所蚕食吗?短信平台.即时通信,哪种方式

松松短信业务正式上线

在经历了一个月开发,一个月内测,两个月公测之后,松松软文平台的"短信营销"功能模块正式上线.除了自用之外,所有的代理商(含黄金.钻石会员)均可免费使用该功能. 所有的代理商均可免费使用该功能模块,拓展新业务渠道.我们采用"先审后发"的原则,也就是您需要先提交"短信内容模板"又管理员审核之后并"给出报价". 目前我们的短信价格和大概在3分-5分/条之间,营销类短信低于行业水平,具体报价需看内容而定,发展的想法是以营销短信为主.短

2、架构设计 --短信平台开发

二.架构设计 1.网络架构设计 由于单位网络问题,平常使用的内网(管理网)不能直接连接互联网,需要由外联网中介.同时由于安全策略的缘故,外联网与管理网是单向访问(外联网不能访问管理网,管理网可以访问外联网),所以数据库只能放在外联网上. 网站架构图如下 2.下行短信发送 这个流程画时序图比流程图更直观一点. 首先第三方系统调用短信平台的WebService接口,将下行短信数据存入数据库. 然后由外联网的Windows服务循环访问数据库,若有数据则调用移动云MAS组件,将短信信息发送到云MAS平台

从一千万条短信中找出重复次数最多的前10条

题目:      有1千万条短信,有重复,以文本文件的形式保存,一行一条.请用5分钟时间,找出重复出现最多的前10条. struct TNode { BYTE* pText; //直接指向文件映射的内存地址 DWORD dwCount; //计算器,记录此节点的相同短信数 TNode* ChildNodes[256]; //子节点数据,由于一个字母的ASCII值不可能超过256,所以子节点也不可能超过256 TNode() { //初始化成员 } ~TNode() { //释放资源 } }; /

手机验证短信设计与代码实现

手机验证短信设计与代码实现 总体思路 时效限制: [5-10min] 使用次数限制: 1次 IP次数限制: 防止恶意刷手机验证码短信 手机号限制: 防止短信轰炸 跨域请求限制: 进一步限制恶意刷短信 验证码验证: 进一步限制恶意刷短信 数据库设计 (CheckCode) ID mobile(手机号) checkCode(验证码) ip(IP地址) createAt(创建时间) expireAt(时效时间) isUse(是否使用) usingAt(使用时间) 具体代码实现(mongoose + n

收到陌生短信千万不要随意打开网址,小心窃取你的账号密码-速码云

文章来源:http://www.4006026717.com 我们收到任何短信后切勿随便打开短信内容里面的网址,点击短信里的链接后遭受财产损失,类似的事件经常看见媒体报道,短信有风险,打开需谨慎.我们都见识过***的网络手段有多高明,手机里的一条短信就能盗走你的账户.那么,面对一些发到手机上的"钓鱼网站",到底该如何辨别以防上当呢?有国外数据专家做了短信是如何盗取用户的账号信息的过程演示. 在以前,双因子验证方式是相对安全的保护措施因为,当你的账号密码被不法分子盗取了,用户还可以通过其