QQ会员活动运营平台(AMS),是QQ会员增值运营业务的重要载体之一,承担海量活动运营的Web系统.在过去四年的时间里,AMS日请求量从200-500万的阶段,一直增长到日请求3-5亿,最高CGI日请求达到8亿.在这个过程中,AMS在架构方面发生了大幅度的调整和变迁,我们走过了一段非常难忘的技术历程. 本文将会分享QQ会员活动运营平台的架构设计实践,希望对做技术的同学有所帮助.   一.海量活动运营的挑战和我们的应对思路 一个产品业务的发展总是离不开运营二字,而运营的表现形式很多会体现到活动需求…
升级到php7相关问题,日请求过亿QQ会员活动平台PHP7升级实践 日请求过亿:QQ会员活动平台PHP7升级实践http://mp.weixin.qq.com/s?__biz=MjM5MjAwODM4MA==&mid=2650686562&idx=1&sn=52d6a5f88dc0cdfe51d277ae2f04ed9d&scene=23&srcid=0601WtyqrhmQ6rwabIjWsOpP#rd http://url.cn/2IG4KnF 腾讯部分高流量的…
作者:徐汉彬链接:https://zhuanlan.zhihu.com/p/21493018来源:知乎著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注明出处. QQ会员活动运营平台(AMS),是QQ会员增值运营业务的重要载体之一,承担海量活动运营的Web系统.AMS是一个主要采用PHP语言实现的活动运营平台, CGI日请求3亿左右,高峰期达到8亿.然而,在之前比较长的一段时间里,我们都采用了比较老旧的基础软件版本,就是PHP5.2+Apache2.0.尤其从去年开始,随着AMS业务随…
QQ会员活动运营平台(AMS),是QQ会员增值运营业务的重要载体之一,承担海量活动运营的Web系统.AMS是一个主要采用PHP语言实现的活动运营平台, CGI日请求3亿左右,高峰期达到8亿.然而,在之前比较长的一段时间里,我们都采用了比较老旧的基础软件版本,就是PHP5.2+Apache2.0(2008年的技术).尤其从去年开始,随着AMS业务随着QQ会员增值业务的快速增长,性能压力日益变大. 于是,自2015年5月,我们就开始规划PHP底层升级,最终的目标是升级到PHP7.那时,PHP7尚处于…
版权声明:本文由PHP7升级项目组原创文章,转载请注明出处: 文章原文链接:https://www.qcloud.com/community/article/74 来源:腾云阁 https://www.qcloud.com/community QQ会员活动运营平台(AMS),是QQ会员增值运营业务的重要载体之一,承担海量活动运营的Web系统.AMS是一个主要采用PHP语言实现的活动运营平台, CGI日请求3亿左右,高峰期达到8亿.然而,在之前比较长的一段时间里,我们都采用了比较老旧的基础软件版本…
大数据分析的下一代架构--IOTA架构设计实践[下] 原创置顶 代立冬 发布于2018-12-31 20:59:53 阅读数 2151  收藏 展开 IOTA架构提出背景 大数据3.0时代以前,Lambda数据架构成为大数据公司必备的架构,它解决了大数据离线处理和实时数据处理的需求.典型的Lambda架构如下:Lambda架构的核心思想是:数据从底层的数据源开始,经过各样的格式进入大数据平台,然后分成两条线进行计算.一条线是进入流式计算平台,去计算实时的一些指标:另一条线进入批量数据处理离线计算…
1.写在前面 1.1.引言 如果在没有太多经验可借鉴的情况下,要设计一套完整可用的移动端IM架构,难度是相当大的.原因在于,IM系统(尤其是移动端IM系统)是多种技术和领域知识的横向应用综合体:网络编程.通信安全.高并发编程.移动端开发等,如果要包含实时音视频聊天的话,则还要加上难度更大的音视频编解码技术(内行都知道,把音视频编解码及相关技术玩透的,博士学位都可以混出来了),凡此种种,加上移动网络的特殊性.复杂性,设计和开发难度不言而喻. 本文分享了一套完整的海量在线用户的移动端IM架构设计,来…
作者简介 孔维乐,七牛云客户端团队 Android 平台高级开发工程师,专注音视频,图形图像领域.OpenGL 专家,先后参与直播推流及连麦 SDK 的开发,主导短视频 SDK 的架构设计与实现, 对客户端架构设计及性能优化有丰富经验. 短视频发展史 图 1 图 1 所示是短视频及直播的发展史,众所周知,2016 年是直播元年,在这期间诞生了很多直播平台,比如熊猫.映客.斗鱼等:而在 2017 年,短视频的火爆程度并不亚于直播,可能大家都以为短视频是从 2017 年开始火爆起来的,但其实早在 2…
一.缘起 什么是session? 服务器为每个用户创建一个会话,存储用户的相关信息,以便多次请求能够定位到同一个上下文. Web开发中,web-server可以自动为同一个浏览器的访问用户自动创建session,提供数据存储功能.最常见的,会把用户的登录信息.用户信息存储在session中,以保持登录状态. 什么是session一致性问题? 只要用户不重启浏览器,每次http短连接请求,理论上服务端都能定位到session,保持会话. 当只有一台web-server提供服务时,每次http短连接…
PHP7版本尚未普及,对于前辈们为了性能提升有勇气探索新技术敢于尝螃蟹的精神十分敬佩,倍受鼓舞. PHP7升级面临的风险和挑战 对于一个已经现网在线的大型公共Web服务来说,基础公共软件升级,通常是一件吃力不讨好的工作,做得好,不一定被大家感知到,但是,升级出了问题,则需要承担比较重的责任.为了尽量减少升级的风险,必须先弄清楚我们的升级存在挑战和风险. 以下是前辈们整理的升级挑战和风险列表: (1)Apache2.0和PHP5.2这两个2008-2009年的基础软件版本比较古老,升级到Apach…
一.开篇 前期我们针对架构准备阶段及需求分析这块我们写了2篇内容<HRMS(人力资源管理系统)-从单机应用到SaaS应用-架构分析(功能性.非功能性.关键约束)-上篇><HRMS(人力资源管理系统)-从单机应用到SaaS应用-架构分析(功能性.非功能性.关键约束)-下篇>内容来展开说明. 本篇主将详细的阐述架构设计过程中概要架构设计要点来和大家共同交流,掌握后续如何强化概要架构设计在架构设计中作用,帮助我们快速确认架构的方向及核心大框架. 在阐述具体的概要架构工作方法之前,还请大家…
本文由ITPub根据封宇在[第十届中国系统架构师大会(SACC2018)]现场演讲内容整理而成. 1.引言 瓜子业务重线下,用户网上看车.预约到店.成交等许多环节都发生在线下.瓜子IM智能客服系统的目的是要把这些线下的活动搬到线上,对线下行为进行追溯,积累相关数据.系统连接用户.客服.电销.销售.AI机器人.业务后台等多个角色及应用,覆盖网上咨询.浏览.预约看车.到店体验.后服.投诉等众多环节,各个角色间通过可直接操作的卡片传递业务. 例如,用户有买车意向时,电销或AI机器人会及时给用户推送预约…
本文原题为“一套高可用群聊消息系统实现”,由作者“于雨氏”授权整理和发布,内容有些许改动,作者博客地址:alexstocks.github.io.应作者要求,如需转载,请联系作者获得授权. 一.引言 要实现一整套能用于大用户量.高并发场景下的IM群聊,技术难度远超IM系统中的其它功能,原因在于:IM群聊消息的实时写扩散特性带来了一系列技术难题. 举个例子:如一个2000人群里,一条普通消息的发出问题,将瞬间写扩散为2000条消息的接收问题,如何保证这些消息的及时.有序.高效地送达,涉及到的技术问…
Web信息架构——设计大型网站(第3版)(久负盛名经典再现,信息架构设计领域基石之作!) [美]]Peter Morville(彼得·莫维尔)  Louis Rosenfeld(路易斯·罗森菲尔德)  著 陈建勋译 ISBN 978-7-121-21533-9 2013年10月出版 定价:99.00元 540页 16开 编辑推荐 在由Wiki.Folksonomy及Mashup所构成的后Ajax化的Web 2.0世界中,精心设计的信息架构显得格外重要.你该如何向众人展现大量的信息,从而使他们能迅…
1.引言   达达创立于2014年5月,业务覆盖全国37个城市,拥有130万注册众包配送员,日均配送百万单,是全国领先的最后三公里物流配送平台. 达达的业务模式与滴滴以及Uber很相似,以众包的方式利用社会闲散人力资源,解决O2O最后三公里即时性配送难题(2016年4月,达达已经与京东到家合并). 达达的业务组成简单直接——商家下单.配送员接单和配送,也正因为理解起来简单,使得达达的业务量在短时间能实现爆发式增长.而支撑业务快速增长的背后,正是达达技术团队持续不断的快速技术迭代的结果,本文正好借…
本文内容整理自公众号腾讯Bugly,感谢原作者的分享. 1.问题背景 对于Android应用来说,内存向来是比较重要的性能指标.内存占用过高,会影响应用的流畅度,甚至引发OOM,非常影响用户体验.因此,内存优化也向来是行业内的重点工作项和难点工作项. 手Q在很早之前就开发了很多内存优化技术: 1)自研内存泄露检测系统 LeakInspector天网: LeakInspector是一套完整内存泄露检测系统:能够自动检测应用内存泄露问题:并提供兜底回收以及自动提单功能: 2)图片引用大图告警: 能够…
C#7.2——编写安全高效的C#代码 2018-11-07 18:59 by 沉睡的木木夕, 123 阅读, 0 评论, 收藏, 编辑 原文地址:https://docs.microsoft.com/zh-cn/dotnet/csharp/write-safe-efficient-code?view=netcore-2.1值类型的优势能避免堆分配.而劣势就是往往伴随的数据的拷贝.这就导致了在大量的值类型数据很难的最大化优化这些算法操作(因为伴随着大量数据的拷贝).而在C#7.2 中就提供了一种机…
WeTest 导读 你听过HTTPS.HTTP2.0.SPDY,但是这些应用层协议都是基于可靠的传输层协议TCP来实现的.那么,基于高效的UDP协议有没有一种相对可靠的应用层协议呢? Why QUIC? 你听过HTTPS.HTTP2.0.SPDY,但是这些应用层协议都是基于可靠的传输层协议TCP来实现的.那么,基于高效的UDP协议有没有一种相对可靠的应用层协议呢? 图1 why quic? What is QUIC? Quick UDP Internet Connection(QUIC)协议是G…
GitHub:https://github.com/iccb1013/Sheng.WeixinConstruction因为个人精力时间有限,不会再对现有代码进行更新维护,不过微信接口比较稳定,经测试至今没有变化,功能依然全部可用,你可以在此基础上,二次开发,完成你的业务功能,也可以抽取本平台中的代码复用在你的项目中,请遵循 MIT 开源协议保留我的版权声明和网站链接即可. GitHub:https://github.com/iccb1013/Sheng.WeixinConstruction.We…
在深入学习zookeeper我想先给大家介绍一个和zookeeper相关的应用实例,我把这个实例命名为远程调用服务.通过对这种应用实例的描述,我们会对zookeeper应用场景会有深入的了解. 远程调用是系统与系统之间的通信机制,它的另一种理解就是进程间的通信.做分布式系统的开发,远程调用技术是其核心技术.远程调用技术可以将一组计算机系统形成一个网络系统,对外提供整体服务,那么这一群的计算机系统就构成了一个更大型,性能更高的计算机系统. 我在前面的博客里介绍了一种分布式网站的架构设计,其中就有一…
Flume(NG)架构设计要点及配置实践   Flume NG是一个分布式.可靠.可用的系统,它能够将不同数据源的海量日志数据进行高效收集.聚合.移动,最后存储到一个中心化数据存储系统中.由原来的Flume OG到现在的Flume NG,进行了架构重构,并且现在NG版本完全不兼容原来的OG版本.经过架构重构后,Flume NG更像是一个轻量的小工具,非常简单,容易适应各种方式日志收集,并支持failover和负载均衡. 架构设计要点 Flume的架构主要有一下几个核心概念: Event:一个数据…
欢迎大家前往云加社区,获取更多腾讯海量技术实践干货哦~ 作者简介:xianmau,2015 年加入腾讯 TEG 架构平台部,一直负责 QQ 相册平台的维护和建设,主导相册上传架构重构和容灾优化等工作.主要研究方向为口语对话系统.分布式系统架构设计和优化,发表对话系统相关学术论文 3 篇,系统架构相关专利 2 篇. 本文由腾讯技术工程官方号发布在云加社区. 写在前面 QQ 相册作为重量级资深业务,稳定运营.有效容灾,一直是相册团队追求的目标.QQ 相册架构一直在演变进化,本文重点介绍相册最新的一次…
FROM : http://www.csdn.net/article/2014-08-20/2821302-interview-tencent-b-qq-shuai-wang 对比IaaS和PaaS,SaaS得到的关注显然要少一些.究其根本,不仅因为SaaS关注的是功能方面的探索,更偏向于某个领域或层面的实际应用,还归结于相较前两者,软件的云化已基本趋于成熟,些许突破并不能带来产业上的变革.然而,较少的关注并不意味着缺乏明星产品:放眼国外,企业级SaaS服务已成为许多公司的一项重要收益来源,比如…
Atitit  文件上传  架构设计 实现机制 解决方案  实践java php c#.net js javascript  c++ python 1. 上传的几点要求2 1.1. 本地预览2 1.2. 2 无刷新2 1.3. 3 进度显示2 1.4. 断点续传2 1.5. 跨bs  cs2 1.6. 带进度条2 1.7. 完成提示动画效果..2 2. 标准化api属性2 3. 实现原理利用FormData对象,你可以使用一系列的键值对来模拟一个完整的表单,然后使用XMLHttpRequest发…
Atitit.数据库表的物理存储结构原理与架构设计与实践 1. Oracle和DB2数据库的存储模型如图: 1 1.1. 2. 表数据在块中的存储以及RowId信息3 2. 数据表的物理存储结构 自然数序,与btree存储结构3 2.1. 普通表中记录的存储顺序随机顺序存储3 2.2. 数据库以B树格式储存, 4 3. 分区4 4. 行记录的物理结构 以及 RowId4 5. Oracle中具有如下几类数据结构:5 6. 参考7 1. Oracle和DB2数据库的存储模型如图: Oracle和D…
朱晔的互联网架构实践心得S2E6:浅谈高并发架构设计的16招 概览 标题中的高并发架构设计是指设计一套比较合适的架构来应对请求.并发量很大的系统,使系统的稳定性.响应时间符合预期并且能在极端的情况下自动调整为相对合理的服务水平.一般而言我们很难用通用的架构设计的手段来解决所有问题,在处理高并发架构的时候也需要根据系统的业务形态有针对性设计架构方案,本文只是列出了大概可以想到一些点,在设计各种方案的时候无非是拿着这些点组合考虑和应用. 有很多高并发架构相关的文章都是在介绍具体的技术点,本文尝试从根…
Java生鲜电商平台-会员积分系统的设计与架构 说明:互联网平台积分体系主要用于激励和回馈用户在平台的消费行为和活动行为,一个良好的积分体系可以很好的提升用户的粘性及活跃度. 一.互联网平台积分体系设计必要性 互联网平台积分体系是一个独立.完整的系统模块,主要用于激励和回馈用户在平台的消费行为和活动行为,通过积分体系可以激发与引导用户在平台的活跃行为,逐步形成用户对平台的依赖性和习惯性,提升用户对平台的黏度和重复下单率. 积分体系在保持系统独立性的同时,又与平台会员系统.商品系统.订单系统等具有…
2017年8月12日,袋鼠云首席架构师正风在“网易博学实践日:大数据与人工智能技术大会”进行<淘宝架构演进背后——零售业务中台架构设计探讨及实践>演讲分享.传统零售行业如何选择应对新经济模式下的IT系统建设? 如今零售行业面临的困局有:信息不对称被打破,消费者主权时代到来.互联网/移动互联网.社交应用的高速发展,万物更易互联:商品.商业行为不对称已经被打破,传统营销已经失效.传统渠道扩展野蛮生长模式已经过去.租金成本.人力成本.制造成本不断上涨,行业集团陷入关店潮.运营效率低,高库存.高缺货.…
对象存储概念及特性 在介绍 QingStor️对象存储内部的的架构和设计原理之前,我们首先来了解一下对象存储的概念,也就是从外部视角看,对象存储有什么特性,我们应该如何使用. 对象存储本质上是一款存储产品,与其他的存储,如文件存储.块存储,功能是类似的,主要的功能都是数据的读和写.最大的不同在于对象存储是把数据作为对象进行管理,这是它最主要的特征,所有的数据在这里面都当做一个对象处理. 对象存储有一些非常鲜明的特点: 它的结构是扁平的,不像文件存储那样有目录层级,在读写数据时不需要对目录进行层层…
一.前言 随着商城业务渠道不断扩展,促销玩法不断增多,原商城v2.0架构已经无法满足不断增加的活动玩法,需要进行促销系统的独立建设,与商城解耦,提供纯粹的商城营销活动玩法支撑能力. 我们将分系列来介绍vivo商城促销系统建设的过程中遇到的问题和解决方案,分享架构设计经验. 二.系统框架 2.1 业务梳理 在介绍业务架构前我们先简单了解下vivo商城促销系统业务能力建设历程,对现促销能力进行梳理回顾.在商城v2.0中促销功能存在以下问题: 1. 促销模型不够抽象,维护混乱,没有独立的活动库存: 2…