浅谈架构是为了什么 (上)

本文探讨了软件架构的重要性及其实质,介绍了架构设计的基本方面如物理架构、逻辑架构、数据架构和代码架构,并强调了在不同业务场景下进行合理架构设计的方法。

前言

架构是一款软件从0到100的演变过程。并非是上来就可以承载什么亿级访问的牛x架构什么的。本篇写给那些想要成为架构师或者正在尝试成为架构师的朋友。

  • 陕西的城墙有架构,阻挡外来攻击
  • 兵马俑黄陵有架构,避免根基倒塌

这是硬性架构,在初期就应考虑清楚其稳定性。

  • 餐厅的人员配置,菜谱的交替更换以及管理的不断完善。

这是软性架构,考虑扩展性。

why

为什么要做架构?有一部分人是这样说的

  • 做软件就需要架构
  • 没架构的软件不靠谱
  • 我是架构师这软件我必须做架构
  • 我在学习架构,所以我接手的项目要做架构

各位朋友,生活如此多娇,不必互相残害。架构是要做。实际每日的工作中,你一直在架构,感觉到了吗?例如下面的一些日常工作

  • 这块的业务响应速度有些慢,我们需要想办法提升速度
  • PHP线程经常挂掉,单机配置到极限,我们需要方案去解决
  • 数据库经常出现死锁,查看哪块业务造出的并提出解决方案
  • 这块的业务耦合太高了。我们开会讨论如何做。

是日常工作中,你无时无刻的在架构,而你与架构师唯一的区别是你是遇到问题再想解决方案,而架构师会提前想好,例如这种方案可以去解决某个问题,但也需要考虑其弊端,弊端出现的方案是什么样的。实际程序员与架构师不分家。

设计

架构设计覆盖一款应用运行的各个方面。包括

  • 物理架构
  • 逻辑架构
  • 数据架构
  • 代码架构

在项目开发初期,没必要将这四个名次想的过于复杂。举个例子

物理架构

作为一个创业公司,公司资金不足,业务也不是太多,数据也不多。那就可以选择

阿里云ECS 4M带宽 4G内存 

就完全可以解决实际需求。多整几台服务器做负载、主从完全没必要。

逻辑架构

业务不复杂,将C层,V层,M层分清楚即可。不必要玩什么子系统,例如消息子系统,用户子系统,支付子系统。不仅没帮上什么忙。反而整的自己乱七八糟。很多程序员认为如果在前期不全部设计好,后期很难维护。这其实是一个错误的想法。人无完人,备不住前期设计的还不如后期设计的好呢?

数据架构

在前期数据量不大的时候,完全可以使用单机数据库去存储,玩各种主从,主主你自己不嫌累吗。当然也有例外,对安全特别看重的一系列业务还是需要做主从的。

代码架构

在模块设计上井然有序就可以了。不要出现伪代码,烂代码。

扩展

扩展这个事一直是束缚我“放肆”的一把刀。下篇文章我们会讲这把刀的神秘之处。

致谢

感谢你看到这里,能看到这里你一定是希望提升自己的能力,也希望自己做的每一个项目都能像巨人一样强大。当然我也希望这样。我相信每个程序员都有一个改变世界的梦想。架构并不是一个多么神秘的职业。请等待我下篇文章给朋友们去演示我公司的架构演变。虽然敌不过大厂的架构。但很实用。谢谢

我的博客即将搬运同步至腾讯云+社区,邀请大家一同入驻:https://cloud.tencent.com/developer/support-plan?invite_code=hbjeggsrtt0l

MES制造执行系统以其专门面向生产车间的优势,在整车及配件行业被广泛应用。它能助力企业适应市场需求,在竞争中获取优势,通过提高生产效率、优化供应链、加强质量管理等发挥重要作用[^1]。 从核心系统建设角度来看,大型车企数字化智能工厂涉及多方面架构设计,虽未详细提及MES系统架构,但可以推测其与整体架构紧密相关。例如在环境安全管理方面,MES系统可能需要与智能感知设备交互,获取环境数据以保障安全生产;在智慧物流与仓储中,MES系统要和物流车辆预约、调度系统以及自动化仓储设备信息系统协同,实现生产与物流的高效衔接;管理运营指挥中心的全局监控和管理也离不开MES系统提供生产数据支持;网络与安全方面,MES系统需融入基础网络架构,同时遵循工控安全防护体系标准保障稳定运行;数据中心与智能化建设中,MES系统的数据要在超融合架构的数据中心存储和处理,并且遵循智能制造实施方法论进行建设和优化[^1][^2][^5]。 以小鹏肇庆工厂MES项目为例,其适配多种车型混线生产,对接多个系统,构建了完整的过程质量管理体系与产品档案追溯流程。这表明MES系统架构需要具备高度的灵活性和兼容性,能够适应不同车型的生产需求,与企业其他信息系统实现数据交互和共享,同时要支持质量管理和追溯等关键业务流程[^3]。 在实际应用中,MES系统架构可能包括生产计划与调度模块,负责根据订单和产能制定合理的生产计划,并对生产任务进行调度安排;过程监控模块,实时采集生产过程中的数据,如设备状态、生产进度、质量数据等,以便及时发现和解决问题;质量管理模块,对生产过程中的质量进行管控,包括质量检测、质量分析和质量追溯等功能;物料管理模块,管理生产所需的物料,确保物料的及时供应和合理使用;设备管理模块,对生产设备进行管理和维护,保障设备的正常运行。 ```python # 以下是一个简单的MES系统架构模块类的Python示例 class MESSystem: def __init__(self): self.production_planning = ProductionPlanning() self.process_monitoring = ProcessMonitoring() self.quality_management = QualityManagement() self.material_management = MaterialManagement() self.equipment_management = EquipmentManagement() class ProductionPlanning: def make_plan(self): print("Making production plan...") class ProcessMonitoring: def monitor_process(self): print("Monitoring production process...") class QualityManagement: def control_quality(self): print("Controlling production quality...") class MaterialManagement: def manage_materials(self): print("Managing production materials...") class EquipmentManagement: def maintain_equipment(self): print("Maintaining production equipment...") # 使用示例 mes = MESSystem() mes.production_planning.make_plan() mes.process_monitoring.monitor_process() ```
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值