Redis集群实现原理探讨

Redis集群是一个distribute、faulttolerant的Redis实现,主要设计目标是达到线性可扩展性、可用性、数据一致性。线性拓展 官方推荐最大的节点数量为1000,由于Cluster架构中无Proxy层,Master与Slave之间使用异步replication。数据一致性 客户端容忍一定程度的数据丢失,集群尽可能保存Client write操作的数据,保证数据一致...
阅读全文

深入理解PHP opcode优化

1.概述====PHP(本文所述案例PHP版本均为7.1.3)作为一门动态脚本语言,其在zend虚拟机执行过程为:读入脚本程序字符串,经由词法分析器将其转换为单词符号,接着语法分析器从中发现语法结构后生成抽象语法树,再经静态编译器生成opcode,最后经解释器模拟机器指令来执行每一条opcode。在上述整个环节中,生成的opcode可以应用编译优化技术如死代码删除、条件常量传播、函数内联...
阅读全文

Java元编程及其应用

首先,我们且不说元编程是什么,他能做什么.我们先来谈谈生产力.同样是实现一个投票系统,一个是python程序员,基于djangoframework,用了半小时就搭建了一个完整系统,另外一个是标准的SSM(SpringSpringMVCMybatis)Java程序员,用了半天,才把环境刚刚搭好.可以说,社区内,成功的web框架中基本没有不强依赖元编程技术的,框架做的工作越多,应用编写就越轻松...
阅读全文

异步网络模型

异步网络模型======异步网络模型在服务开发中应用非常广泛,相关资料和开源库也非常多。项目中,使用现成的轮子提高了开发效率,除了能使用轮子,还是有必要了解一下轮子的内部构造。这篇文章从最基础的5种I/O模型切入,到I/O事件处理模型,再到并发模式,最后以Swoole开源库来做具体分析,逐步深入。文中提到的模型都是一些通用的模型,在《linux高性能服务器编程》中也都有涉及。文章不涉及模...
阅读全文

有赞订单管理的三生三世与“十面埋伏”

有赞订单管理主要承接有赞所有订单搜索及详情展示功能,系统随着业务的不断发展经历了多次飞升之路。下面简单介绍下有赞订单管理系统的三生三世与“十面埋伏”。第一世:凡人飞升小仙之路分库分表=================随着业务发展,单库单表所能承载的数据量局限性越发严重。 历劫:单库单表数据量承载局限 渡劫:分库分表 分库分表的维度针对系统买卖家查询的需求,分片键为买家id和店...
阅读全文

有赞订单管理的三生三世与“十面埋伏”

有赞订单管理主要承接有赞所有订单搜索及详情展示功能,系统随着业务的不断发展经历了多次飞升之路。下面简单介绍下有赞订单管理系统的三生三世与“十面埋伏”。第一世:凡人飞升小仙之路分库分表=================随着业务发展,单库单表所能承载的数据量局限性越发严重。 历劫:单库单表数据量承载局限 渡劫:分库分表 分库分表的维度针对系统买卖家查询的需求,分片键为买家id和店...
阅读全文

有赞新交易之设计以及背后的思考

背景:成长的烦恼在开始下面的话题之前,我们先看一看有赞原有的核心交易架构。 初步看去,这套架构方案似乎看不出什么问题。事实情况也这样,我们做这套交易方案支持了百万级笔数的交易规模,取得了很不错的成果。在2016年,公司经历了飞速的成长, 整体团队人员扩张了数倍, 公司整体业务线从单一的微商城电商交易型态扩张到支持多个垂直行业。交易团队也碰到了很多尴尬的情况: 垂直行业接入交易...
阅读全文

有赞大数据实践: 敏捷型数据仓库的构建及其应用

前言==互联网公司一般发展迅速. 一方面, 业务飞速发展, 当前应用的形式和模型每天都在变化; 企业的产品也在经历不断的下线上线过程. 数据仓库如何拥抱变化, 是难点之一.互联网的运营人员从了解经营状况转化为精细化运营, 这就于要求数据仓库具有提供高效明细数据能力, 数据仓库如何在庞大数据量的前提下, 实现满足不同层次的数据提出和分析, 是难点之二.数据经过ETL最终到达使用数据者手...
阅读全文

有赞线上故障管理实践初探

线上故障是指提供给客户使用的IT服务全部或部分不可用,包括服务性能的降低,如:服务延迟导致用户体验变差。在创业前期,为了抢占市场先机,产品新功能的发布速度追求往往优先于其质量,埋下了很多技术债务,部分技术债务的爆发会引起线上故障,造成客户的体验下降或经济损失。故障管理的目标是“尽快恢复服务到正常运行,并且最小化对业务运营的不利影响,从而尽可能地保证服务质量和可用性的水平”。在故障发生后,故障紧...
阅读全文

预发布环境中本地前端文件的调试方法

一般在开发环境中对项目进行功能测试后,公司要求必须在预发布环境上连接真实的线上环境的数据,进行回归测试。对于前端开发人员来说,也可能在预发布环境测试中遇到本地未曾遇到的问题。这时前端人员必须具备在预发布环境中,快速定位问题的能力。而预发布环境中压缩的文件无疑造成了极大的困难,必须将资源文件对应到本地未压缩的原始文件进行调试和问题排查。一、PC端的预发布环境调试方法有赞的预发布环境中全站的...
阅读全文