工作流引擎在有赞 DevOps 中的实践

一、 背景 随着有赞规模的增长, 运维的事务也日益复杂, 如何能更加高效的协调好开发, 运维, 工具与流程之间的关系, 把运维人员从低效率, 高强度, 易犯错的人工操作中彻底解放出来,让他们的能力与精力有更大程度的发挥, 是一个很大的挑战. 有赞 DevOps 平台的工作流引擎 Opsflow 经过两年时间的演进, 从最开始的仅支持简易的固定顺序加定制脚本的系统, 慢慢演化到可以通过 GUI 操作的, 无需编码的, 高度定制化的, 可视化的, 可感知进度的工作流引擎,…

Read More

Service Mesh在有赞的实践与发展

Service Mesh的概念自2017年初提出之后,受到了业界的广泛关注,作为微服务的下一代发展架构在社区迅速发酵,并且孵化出了诸如Istio等广受业界关注的面向于云原生(Cloud Native)的微服务架构。目前阿里、华为云、腾讯云都在Service Mesh上投入了大量精力进行研发和推广。阐述和讨论Service Mesh架构的文章目前网络上已经非常丰富,在此不再赘述。本文主要阐述Service Mesh架构在有赞是如何一步步发展和落地的,期望能够给读者带来一定的思考和借鉴意义,并对Service Mesh架构能够解决的问题和应用场景有进一步的了解。同时,有赞Service Mesh架构发展的过程也正是有赞微服务架构的演进过程,期待能够给正在进行微服务改造的团队带来一定的启发和思考。 缘起…

Read More

有赞零售 App 离线切换技术方案

一、离线模式的价值 有赞零售客户端的用户是需要经营线下门店的商家,在商家的经营时间内,如果软件不能保证正常使用会导致经营效率下降,甚至客户流失。因此除了不断优化软件性能,降低崩溃率,还要做好异常情况的降级处理,比如遇到网络故障和服务器故障等情况时,软件要保证核心功能的可用性,此时软件的工作模式被称为离线模式。 在离线模式下,客户端不能和服务端进行正常的数据通信,所有的数据存储和计算逻辑都要客户端独立完成。目前有赞零售客户端在离线模式下支持登录、收银支付、订单管理、会员积分、部分营销活动等核心功能,即使在极端情况下,有赞零售客户端依然保证商户的经营活动正常进行。 在客户端离线解决方案中主要有两个问题: 1、如何准确及时的触发或退出离线模式。…

Read More

有赞移动助手App 本地抓包方案

一、概述 有赞移动助手(下面简称助手App)网关切换功能(&mid=2455759791&idx=1&sn=46960e44ca7d9437e1ac85c106a0d98a&chksm=8c686d8abb1fe49c0b022c69044b932adaf43d2d5d9218e39facdd7369694388ef40ddbf8605&mpshare=1&scene=1&srcid=…

Read More

有赞NSQ多集群多机房设计

Overview 从有赞双机房开始到金融云架构,针对业务方在多机房的应该部署以及消息发送订阅需求,需要NSQ针对双机房以及多机房部署提供消息发送与订阅服务。本文主要介绍了NSQ双机房以及多机房设计以及经验总结。 场景和需求 下图1是一个机房内基本的NSQ消息生产和消费的部署。一个机房内生产者往NSQ集群发消息,多个消费者订阅消息。 双机房场景下,业务的生产和消费在两个机房都有部署,也有可能部署在不同机房中,如下图2。 对于生产者和消费者,在满足升级房生产消费的同时,NSQ的双机房方案需要做到业务方无感知,尽量降低业务方的使用成本。同时,NSQ的双机方案署要能够实现topic切换,当某一机房不可用时,通过切换机房能够尽快恢复消息生产和消费。 NSQ双机房设计 我们结合NSQ中的服务发现组件nsqlookupd的功能实现NSQ的双机房功能。nsqlookupd是NSQ组件中用于topic生产以及channel订阅的额服务发现的组件,消息生产者/…

Read More