微服务架构下架构师角色的转变与实践
1. 微服务带来的挑战与架构师角色转变
微服务为我们带来了众多选择,同时也带来了大量决策难题。例如,应使用多少种不同技术、是否允许不同团队采用不同编程风格、是否拆分或合并服务等。随着架构变化节奏加快、环境更加灵活,架构师的角色也必须做出改变。
架构师的工作至关重要,他们负责确保有统一的技术愿景,以帮助交付客户所需的系统。然而,这个角色难以准确定义,且常受到比其他角色更多的批评。我们的行业尚年轻,常借鉴其他职业来解释自身工作,称自己为软件“工程师”或“架构师”,但实际上我们与传统建筑师和工程师有很大不同。
传统建筑师和工程师有着严谨的规范和纪律,其职业重要性在社会中得到广泛认可,且有明确的资质要求。而我们的软件不受物理规则的严格约束,需要根据用户需求灵活适应和演变。将自己与传统建筑师或工程师进行类比,可能会对各方造成损害。因此,我们需要重新定义架构师在我们行业中的含义。
2. 架构师的进化愿景
我们的需求、工具和技术的变化速度比建筑设计师更快。软件投入生产后会随着使用方式的改变而持续演变,所以架构师应从追求完美的最终产品转变为专注于创建一个框架,让合适的系统能够在其中自然涌现并不断发展。
可以将 IT 架构师的角色类比为城市规划师。城市规划师会综合考虑多种信息,优化城市布局以满足市民当前和未来的需求。他们通过划分区域来影响城市发展,而不是规定具体建造哪座建筑。城市会随着居民使用方式和外部力量的变化而演变,规划师虽尽力预测变化,但也明白直接控制一切是徒劳的。
在软件领域也是如此,我们无法预见所有情况,应避免过度细化规划,而是要为变化留出空间。系统不仅要满足用户需求,
超级会员免费看
订阅专栏 解锁全文
337

被折叠的 条评论
为什么被折叠?



