201810-19 携程实时用户行为系统实践 携程实时用户行为服务作为基础服务,目前普遍应用在多个场景中,比如猜你喜欢(携程的推荐系统),动态广告,用户画像,浏览历史等等。以猜你喜欢为例,猜你喜欢为应用内用户提供潜在选项,提高成交效率。旅行是一项综合性的需求,用户往往需要不止一个产品。作为一站式的旅游服务平台,跨业务线的推荐,特别是实时推荐,能实际满足用户的需求,因此在上游提供打通各业务线之间的用户行为数据有很大的必要性。携程原有... 继续阅读 >
201804-08 微服务中 Dubbo 和 Spring Cloud 架构技术路线对 微服务架构是互联网很热门的话题,是互联网技术发展的必然结果。它提倡将单一应用程序划分成一组小的服务,服务之间互相协调、互相配合,为用户提供最终价值。虽然微服务架构没有公认的技术标准和规范或者草案,但业界已经有一些很有影响力的开源微服务架构框架提供了微服务的关键思路,例如Dubbo和SpringCloud。各大互联网公司也有自研的微服务框架,但其模式都于这二者相差不大。微服务主要的优势如下:1、降低复杂... 继续阅读 >
201803-04 Apache Ignite 事务架构:并发模型和隔离级别 在本系列的第一篇文章中,我们研究了2阶段提交协议,以及Ignite如何处理各种类型的集群节点,下面是在剩下的文章中要覆盖的主题:并发模型和隔离级别故障转移和恢复Ignite持久化层中的事务处理(WAL、检查点及其他);第三方持久化中的事务处理在本文中,我们会聚焦并发模型和隔离级别。大多数现代多用户应用允许并发数据访问和修改。为了管理此功能,并确保系统从一个一致状态切换到另一个一... 继续阅读 >
201711-25 Twitter 架构如何支持上亿用户 谈到设计Twitter,我们首先要问一个本质问题:设计Twitter的基本方法论是什么?其实是我们计算机设计最基本的方法:分治法(DivideandConquer)。什么是分治法呢?就是把问题不断的拆解,拆解到你可以解决为止,它的艺术在于,从哪个维度来拆解非常考验我们能力。如果要求一周开发出Twitter,你会怎么做?你的架构是什么样的呢?相信你一定不会给出复杂的架构。前端是各种各样的业务逻辑,后端... 继续阅读 >
201711-20 现代IM系统中消息推送和存储架构的实现-博客-云栖社区-阿里云 前言IM全称是『InstantMessaging』,中文名是即时通讯。在这个高度信息化的移动互联网时代,生活中IM类产品已经成为必备品,比较有名的如钉钉、微信、QQ等以IM为核心功能的产品。当然目前微信已经成长为一个生态型产品,但其核心功能还是IM。还有一些非以IM系统为核心的应用,最典型的如一些在线游戏、社交应用,IM也是其重要的功能模块。可以说,带有社交属性的应用,IM功能一定是必不可少的。IM系统在互联网初期即存... 继续阅读 >
201711-16 直击阿里双11神秘技术:PB级大规模文件分发系统“蜻蜓” 导读:2017天猫双11,交易峰值32.5万/秒,支付峰值25.6万/秒,数据库处理峰值4200万次/秒,成交额1682亿数字的背后是50+神秘技术!其中,阿里集团基础设施蜻蜓,在双11期间,对上万台服务器同时下发5GB的数据文件,让大规模文件分发靠蜻蜓系统完美实现。蜻蜓,通过解决大规模文件下载以及跨网络隔离等场景下各种难题,大幅提高数据预热、大规模容器镜像分发等业务能力。月均分发次数突破20亿次,分发数据量3.4PB。其中容器... 继续阅读 >
201709-20 OkHttp3 架构分析 我们都知道在OkHttp3中,其灵活性,很大程度上体现在,我们可以intercept其任意一个环节,而这个优势便是okhttp3整个请求响应架构体系的精髓所在:在OkHttp3中,每一个请求任务都封装为一个Call,其实现为RealCall。而所有的策略几乎都可以通过OkHttpClient传入所有全局策略与数据,除了存储在允许上层访问的OkHttpClient实例以外,还有一部分是存储在只允许包可见的Internal.instance中(如连接... 继续阅读 >
201709-16 如何打造一个日均PV千万级别的大型系统? 作者介绍周金桥,具有丰富的系统规划、设计、开发、运维及团队组织管理工作经验,熟悉.Net、J2EE技术架构及应用。微软2008-2012五届最有价值专家(MVP),2009年单独著有《ASP.NET夜话》一书,2010年与人合著《程序员的成长之路》。至今活跃在多个技术社区。本文系作者原创投稿,未经 DBAplus社群 允许,不得擅自转载和使用。本文我选定的方向是如何开发一个大型系统,在这里我对大型系统的定义为日... 继续阅读 >
201707-13 浅谈 MVC、MVP 和 MVVM 架构模式 谈谈MVX中的Model谈谈MVX中的View谈谈MVX中的Controller浅谈MVC、MVP和MVVM架构模式这是MVX系列的第四篇文章,在前面的文章中,我们先后介绍了iOS中的Model、View和Controller的现状,对比了其他平台中的设计,最后给出了作者理想中的结构。而在这一篇文章中,作者会依次介绍MVC、MVP以及MVVM架构模式以及不同平台对它们的使用;虽然参考了诸多资料,不过文中观点难... 继续阅读 >
201706-07 软件架构设计中要注意的六个方面 今天和师弟聊天聊到他们项目开发,有些同事总是提前考虑性能优化,需求变更又是一大堆的重写,让我想起了DonaldKnuth提到的:对软件的过早地优化是万恶的根源。这里就简单的说几条重要的软件名人哲学。1:软件中唯一不变的就是变化。在软件开发过程中需求是不停的变化,随着客户对系统的认识,和现有开发功能和软件的认识,也许以开始他提出的需求就是背离的。记得网上有一句笑话,师说需求变化的:程序员XX... 继续阅读 >
201705-31 美团点评酒旅数据仓库建设实践 在美团点评酒旅事业群内,业务由传统的团购形式转向预订、直连等更加丰富的产品形式,业务系统也在迅速的迭代变化,这些都对数据仓库的扩展性、稳定性、易用性提出了更高要求。对此,我们采取了分层次、分主题的方式,本文将分享这一过程中的一些经验。技术架构随着美团点评整体的系统架构调整,我们在分层次建设数据仓库的过程中,不断优化并调整我们的层次结构,下图展示了技术架构的变迁。我们把它们简称为... 继续阅读 >
201705-23 滴滴出行海量数据背后的高可用架构 作者介绍许令波,花名君山,现任滴滴出行技术研究员,从事容器化和资源调度方面的技术建设。曾在淘宝工作七余载,经历了淘宝网PV从1到50亿的增长历程。其中涉及端与管道、应用层代码级、应用架构和端到端等全链路的优化,架构方面从单个应用到分布式、无线多端、中台以及国际化的演进。这些积累的经验同时也在滴滴得到应用实践。挑战高可用架构建设的流量与业务复杂性何为高可用?原则有三:故... 继续阅读 >
201705-12 十亿级视频播放技术优化揭密 QCon是由InfoQ主办的全球顶级技术盛会,每年在伦敦、北京、东京、纽约、圣保罗、上海、旧金山召开。自2007年3月份首次举办以来,已经有超万名高级技术人员参加过QCon大会。QCon内容源于实践并面向社区,演讲嘉宾依据热点话题,面向5年以上工作经验的技术团队负责人、架构师、工程总监、高级开发人员分享技术创新和最佳实践。4月18日性能优化面面观专题会议上,腾讯研发总监王辉以“十亿级视频播放技术优化揭秘”为主题,... 继续阅读 >
201704-21 借助性能优化促进用户数增长 2015年上半年,Pinterest的工程师进行了一次实验,借此将移动Web首页的页面加载性能提升了60%,同时移动注册转化率提升了40%。然而该实验使用了一种极为烦琐的解决方案,用到了大量“抄近道”的方法,例如提供预先生成的HTML页面,而没有使用内部模版渲染引擎或其他通用资源(JS、CSS)。为了将实验学到的经验实用化,整个前端引擎、所有页面模版,以及通用元素都必须重写。这是一项繁重的工作,为此我们首先需要构建一个强壮的... 继续阅读 >