https://github.com/alibaba/COLA https://gocn.vip/topics/10388 在微服务下挣扎过 需要了解 DDD 和COLA架构思想 本篇文章围绕业务架构进行讨论 前言 公司在开始探索微服务架构时,使用的是三层架构(controller/service/model)。随着时间的推移,发现三层业务架构在微服务架构下越来越不适用,主要体现在下面 2 点: 业务逻辑离散在 service 层,不能很好的复用和表达能力差 业务代码和技术实现进行了强耦合,导致调试和测试困难 针对以上问题,我们开始探索新的业务架构,整理形成我们自己研发的业务框架:Esim (Make everything simple)。 我对业务架构的思考,来自一道比较经典的面试题:什么是 MVC?估计刚毕业的同学,都避免不了这道面试题。当然时间总是飞逝的,从毕业到现在,经历了 PC 时代,移动时代,到现在的微服务时代的技术变迁。技术的层出不穷,让我应接不暇。在回顾这个变迁的过程中发现一些比较有趣的事情,所以拿出来分享: 架构一直在演进
https://gocn.vip/topics/10382 随着云原生人工智能(Cloud Native AI)的兴起,灵活的计算存储分离架构大行其道。在此背景下,用户在云上训练大规模深度学习模型引发的数据缓存需求日益旺盛。为此,阿里云容器服务团队与 Alluxio 开源社区和南京大学顾荣老师等人通力合作寻找相关解决方案,当前已经提供 K8s 上运行模型训练数据加速的基础方案,包括容器化部署、生命周期管理以及性能优化(持续中),从而降低数据访问高成本和复杂度,进一步助力云上普惠 AI 模型训练。
https://www.cyningsun.com/05-11-2020/proto-marshal-panic.html 背景介绍 在斋月节大促压测期间,有一个业务压测发现,有一个RPC调用,在高并发的情况下出现panic,而panic的位置是在微服务框架序列化的位置(proto.Marshal)。但是由于框架在近期没有做什么变更,而且业务最近也没上线什么新的需求。所有的Panic仅在并发量较高的时候偶然出现,并且被框架的recover捕获,因此判定此问题已经在线上很久,只是由于出现的概率较低没有被发现。
http://team.jiunile.com/blog/2020/05/go-debug-practice.html 场景1: 如何分析程序的运行时间与CPU利用率情况? shell内置time指令 这个方法不算新颖,但是确很实用。 time是Unix/Linux内置多命令,使用时一般不用传过多参数,直接跟上需要调试多程序即可。