近期,阿里巴巴CTO线卓越工程小组举办了阿里巴巴第一届单元测试比赛《这!就是单测》并取得了圆满成功。本人有幸作为评委,在仔细地阅读了各个小组的单元测试用例后,发现了两大单元测试问题: 1、无效验证问题: 不进行有效地验证数据对象、抛出异常和调用方法。 2、测试方法问题: 不知道如何测试某些典型案例,要么错误地测试、要么不进行测试、要么利用集成测试来保证覆盖率。比如: 错误地测试:利用测试返回节点占比来测试随机负载均衡策略; 不进行测试:没有人针对虚基类进行单独地测试; 利用集成测试:很多案例中,直接注入真实依赖对象,然后一起进行集成测试。 针对无效验证问题,在我的文章《那些年,我们写过的无效单元测试》中,介绍了如何识别和解决单元测试无效验证问题,这里就不再累述了。在本文中,作者收集了一些的Java单元测试典型案例,主要是为了解决这个测试方法问题。
严选在前期发展过程中,为了快速交付需求,绝大部分系统采用的都是单体架构。本文将主要针对严选交易DB如何进行数据源独立以及在数据源切换整体流程的解决方案以及实施迁移的过程中遇到的一些问题解决思路作为经验分享给大家,希望对后续业务团队在进行相关工作开展有所帮助。
除夕夜,是全国人民阖家团圆的日子,也是鹅厂这帮技术人最紧张的时刻——一年一度的春节重保。 在这辞旧迎新的重要节点,全球十多亿用户通过微信和QQ拜年、发红包,在朋友圈、QQ空间分享心情,通过微信视频号、腾讯视频等观看春晚直播。 这些“新年俗”带来的是秒级内增长几十倍甚至数百倍的流量洪峰,就像传说中每年如约而至的“年兽”,稍有不慎,鹅厂系统就有被流量打崩的风险。 今年是腾讯自研业务全面上云之后的首个春保,相比往年,不仅顺利完成了护航任务,而且效率更高、质量更好、成本更低。 究其原因,这与腾讯自研业务全面上云、云原生技术的大规模应用,以及多部门的统一协调密不可分。
先来说下在 WebAssembly(后续称WASM) 官网上的介绍,主要有四点: 高效:WASM 有一套完整的语义,实际上 WASM 是体积小且加载快的二进制格式, 其目标就是充分发挥硬件的能力以达到原生语言的执行效率 安全:WASM 运行在一个内存安全,沙箱化的执行环境中,甚至可以在现有的 JavaScript 虚拟机中实现。在 Web 环境中 ,WASM 将会严格遵守同源策略以及浏览器安全策略 开放:WASM 设计了一个非常规整的文本格式用来、调试、测试、实验、优化、学习、教学或者编写程序。可以以这种文本格式在 Web 页面上查看 WASM 模块的源码 标准:WASM 在 Web 中被设计成无版本、特性可测试、向后兼容的。WASM 可以被 JavaScript 调用,进入 JavaScript 上下文,也可以像 Web API 一样调用浏览器的功能。WASM 不仅可以运行在浏览器上,也可以运行在非 Web 环境下(如 Node.js、Deno、物联网设备等。
作为有丰富国内电商技术沉淀的团队,在服务全球化电商业务中,一方面会自然传承国内电商技术体系去解决电商业务通用问题。另一方面,面对业务、技术、组织、文化、政策等维度差异,促使我们演进新的或更合适的技术体系。比如,国际电商业务发展的阶段特征、海外基础设施特征、国际业务区别国内业务的特征、用户和文化特征、以及更不可控的政策和合规等。在我们摸索多年形成的技术体系中,我们上一篇分享讲解了开发技术和架构相关经验,在本文中,我们想分享技术领域不可或缺的另一大块,安全生产和质量保障相关的经验。 分享技术经验以前,我们先把所服务的全球化电商这个对象,在一些关键维度稍作拆解,也是多年经验对全球化电商的一些关键特征的理解,而这些理解对我们的技术构建是至关重要的。
说到热点问题,首先我们先理解一下什么是热点? 热点通常意义来说,是指在一段时间内,被广泛关注的物品或事件,例如微博热搜,热卖商品,热点新闻,明星直播等等,所以热点产生主要包含2个条件:1.有限时间, 2流量高聚。
对绝大多数网站来说,从宏观视角上看主要有两个因素影响最终的网站业务效益: 用户的整体规模 用户在网站内的转化率 业务效益 = 用户规模 * 转化率 所以为了提升业务效益,需要提升用户规模以及转化率。