cola 微服务业务架构的探索

Posted by 夏泽民

https://github.com/alibaba/COLA https://gocn.vip/topics/10388 在微服务下挣扎过 需要了解 DDD 和COLA架构思想 本篇文章围绕业务架构进行讨论 前言 公司在开始探索微服务架构时,使用的是三层架构(controller/service/model)。随着时间的推移,发现三层业务架构在微服务架构下越来越不适用,主要体现在下面 2 点: 业务逻辑离散在 service 层,不能很好的复用和表达能力差 业务代码和技术实现进行了强耦合,导致调试和测试困难 针对以上问题,我们开始探索新的业务架构,整理形成我们自己研发的业务框架:Esim (Make everything simple)。 我对业务架构的思考,来自一道比较经典的面试题:什么是 MVC?估计刚毕业的同学,都避免不了这道面试题。当然时间总是飞逝的,从毕业到现在,经历了 PC 时代,移动时代,到现在的微服务时代的技术变迁。技术的层出不穷,让我应接不暇。在回顾这个变迁的过程中发现一些比较有趣的事情,所以拿出来分享: 架构一直在演进



基于 Alluxio 数据缓存的大规模深度学习训练性能优化

Posted by 夏泽民

https://gocn.vip/topics/10382 随着云原生人工智能(Cloud Native AI)的兴起,灵活的计算存储分离架构大行其道。在此背景下,用户在云上训练大规模深度学习模型引发的数据缓存需求日益旺盛。为此,阿里云容器服务团队与 Alluxio 开源社区和南京大学顾荣老师等人通力合作寻找相关解决方案,当前已经提供 K8s 上运行模型训练数据加速的基础方案,包括容器化部署、生命周期管理以及性能优化(持续中),从而降低数据访问高成本和复杂度,进一步助力云上普惠 AI 模型训练。

  1. 背景介绍 近些年,以深度学习为代表的人工智能技术取得了飞速的发展,正落地应用于各行各业。随着深度学习的广泛应用,众多领域产生了大量强烈的高效便捷训练人工智能模型方面的需求。另外,在云计算时代,以 Docker、Kubernetes 以主的容器及其编排技术在应用服务自动化部署的软件开发运维浪潮中取得了长足的发展。Kubernetes 社区对于 GPU 等加速计算设备资源的支持方兴未艾。鉴于云环境在计算成本和规模扩展方面的优势,以及容器化在高效部署和敏捷迭代方面的长处,基于 “容器化弹性基础架构 + 云平台 GPU 实例” 进行分布式深度学习模型训练成为了业界生成 AI 模型的主要趋势。


go race 排查 protobuf Marshal Panic

Posted by 夏泽民

https://www.cyningsun.com/05-11-2020/proto-marshal-panic.html 背景介绍 在斋月节大促压测期间,有一个业务压测发现,有一个RPC调用,在高并发的情况下出现panic,而panic的位置是在微服务框架序列化的位置(proto.Marshal)。但是由于框架在近期没有做什么变更,而且业务最近也没上线什么新的需求。所有的Panic仅在并发量较高的时候偶然出现,并且被框架的recover捕获,因此判定此问题已经在线上很久,只是由于出现的概率较低没有被发现。



调试golang的bug以及性能问题的实践方法

Posted by 夏泽民

http://team.jiunile.com/blog/2020/05/go-debug-practice.html 场景1: 如何分析程序的运行时间与CPU利用率情况? shell内置time指令 这个方法不算新颖,但是确很实用。 time是Unix/Linux内置多命令,使用时一般不用传过多参数,直接跟上需要调试多程序即可。



Go替代Python在生产环境中进行数据分析

Posted by 夏泽民

目前,计算机领域正在从IT时代向DT时代迅速演进。



Search

Popular posts

Anything in here will be replaced on browsers that support the canvas element

Recent posts

This blog is maintained by 夏泽民

Get in touch with me at 465474307@qq.com

Subscribe to our mailing list

* indicates required