有赞零售跨平台打印库方案

作者: 鱼干(林昊) 前言 之前我们介绍了有赞零售小票打印跨平台解决方案,详情请见有赞零售小票打印跨平台解决方案。其中涉及到打印库只是做了简单的介绍。从上次文章至今,打印库也经历了从1.0到2.0的变迁,本文将对打印库的设计与变更有更详细的讲述。 背景 打印是商家在日常经营中不可缺失的行为。打印从实际业务中划分可以分为:小票打印、标签打印、电子面单打印等细分业务。小票打印在实际场景中又可以扩展出:购物小票、退货小票、换货小票、拣货小票、发货小票、交班小票、…

Read More

有赞搜索中台的探索与实践

概述 有赞搜索中台作为有赞企业级搜索能力复用平台,在解决各个业务域搜索问题时是如何探索与实践的,这个过程中有哪些心得,本文与大家一起分享探讨下。 问题域 跟绝大多数烟囱式架构面临的问题是相似的,业务自建搜索,独立选型往往会遇到以下问题: 技术选型单一或跟风,比如公司有业务用 ES 做搜索,那我也用,而业务对实时性的要求,准确性的要求都是不一样的。 一致性保障困难,多数据源触发,并发场景下各自尝试的一致性保证方案,参差不齐,有的设计很重。 数据孤岛,领域意识加强后会使得系统间的业务串联变的困难,一个需求支持起来业务双方都找不到发力点。需求支持起来耗时久,…

Read More

有赞 GO 项目单测、集成、增量覆盖率统计与分析

一、引言 我是一名中间件 QA,我对应的研发团队是有赞 PaaS,目前我们团队有很多产品是使用 go 语言开发,因此我对 go 语言项目的单测覆盖率、集成以及增量测试覆盖率统计与分析做了探索。 二、单测覆盖率以及静态代码分析 2.1、单测覆盖率分析 Go 语言自身提供了单元测试工具 go test,单元测试文件必须以 *_test.go…

Read More

有赞移动基础设施建设的实践和思考

移动基础设施的建设已经不用再过多解释,每个涉及移动开发的企业都在一步一步地建设移动基础设施,目标是为了服务移动团队,提供移动开发全流程的技术支撑,减少研发成本、提升开发效率、保障稳定质量。 有赞,是一个商家服务公司。我们帮助每一位重视产品和服务的商家私有化顾客资产、拓展互联网客群、提高经营效率,全面助力商家成功。随着近些年来业务的快速发展,移动领域功能越来越复杂,迭代速度越来越快,我们在移动基础设施方面的建设日益完善。 12月7日,有赞移动技术沙龙向大家介绍了在移动基础建设方面的成果,到场的小伙伴们也十分热情。这里对有赞移动基础建设做一个系统的介绍,也分享一下我们的思考。 下图是目前有赞移动的整体架构图,现在每天需要经历上百次构建,每周迭代一个版本,…

Read More

有赞灰度发布与蓝绿发布实践

背景 近几年,随着有赞用户的迅速增长和业务的快速发展,对业务开发人员要求越来越高,一方面要求为用户提供稳定的服务,一方面要求进行快速业务迭代。然而,随着公司业务复杂度和服务化整体规模的增长,单个业务功能涉及的微服务接口数、服务化调用链路长度都在迅速增加,业务的回归测试越来越难以覆盖到所有的调用链路和业务逻辑,通过仅在测试环境进行业务测试的方式来保证系统稳定性的难度越来越高。 基于系统稳定性和快速业务迭代的综合考虑,业务应用开发团队采取了新版本服务灰度上线的方式,即新版本服务并非全量发布到线上环境,而是发布少数几个实例进行灰度验证,没有问题后再全量发布。在部分核心服务进行接口升级和逻辑迁移时,还会通过在业务逻辑代码中增加黑白名单或者流量百分比控制的方式,逐步将旧版本接口实现迁移至新版本接口实现。该方式较好地权衡了服务稳定性和业务迭代效率,但仍存在以下问题: 需要业务开发人员在服务接口中编码大量与业务逻辑无关的黑白名单或流量百分比控制代码,对业务入侵比较大; 调整黑白名单或流量控制百分比,…

Read More