您的技术对您的业务有何评价?
已发表: 2021-12-22公司经常通过更多的创新和财务收益而努力变得更好。 在识别可能的企业问题时,组织通常会着眼于更大的视野,将公司视为全面而缓慢地向内寻求。 事实上,利用公司的技术从杂草中起步,可以提供更广泛、更全面、更深入地熟悉这张更大的照片。
随着公司在大流行之后迅速发展并尝试电子转换任务,其中很大一部分无法正确完成,重要的是要熟悉您使用您的技术设计的结论将如何帮助或阻碍发展。
我们可以从他们的技术创新中具体了解一家企业的哪些信息?
团体如何组装、互动和相互表演会对您商品的其余风格产生深远影响。 我们将此称为康威规则——软件的构建会不经意间反映开发它的劳动力的交互模型。 可以说,公司的业务是规划产品或服务时要考虑的主要因素。
组织程序和架构具有内在联系——表明它们相互影响和相互制约。 在诊断任何可能出现的问题时,我们应该牢记这一点,并利用这些知识来深入了解公司的结构、为什么会出现困难以及我们如何克服它们。 如果您的工程人员没有实现他们的目标,那么可能值得研究一下如何安排工作人员,以及这对于获得期望的结果可能意味着什么。
单体与微服务架构
根据组的排列方式,可以生成几种不同的架构结构。 微小的分布式组更有可能生成模块化的、以微服务为中心的架构。 如果工作人员规模较大且与项目架构的某些部分不一致,他们可能会制作整体架构。 很多人都熟悉单体架构,因为常见的 IT 程序或公司目的通常都是以这种方式创建的。 对于同样种类的架构,需要考虑到重要的优点和缺点。
对于已经开始从事数字化转型工作的团队来说,这项工作的组成部分可能是将遗留的单一应用程序分开,以支持新的现代微服务。 这种布局的多样性具有显着优势,因为它将允许更高的整体灵活性来实施没有中断的调整,并有助于更好的可扩展性。 即便如此,单体架构的使用和部署要简单得多。 这通常会使其成为更小、非常简单的应用程序开发的最大偏好,并且通常在早期初创企业中被发现。 与微服务相比,单体架构在扩展方面更具挑战性,因为这项工作需要在具有许多目标的不同群体之间保持一致。 完全错误地获取员工组成可能会降低风格方法并引发更多挑战。
一个组织的蓬勃发展或微服务架构的不成功部署揭示了他们设计的大量结论,以及业务中的通信结构是否存在任何根深蒂固的问题。 在考虑是否必须拆分单体架构并转向微服务架构时,必须确保公司的解剖结构将有助于您选择追求的任何架构。

援助膨胀
在某些情况下,很可能会发现微服务的数量大于工程师的范围。 这被认为是辅助膨胀——这是有问题的,因为它会导致开发人员的速度和可用性降低。 这是一个重要的解释,为什么在没有非常仔细的结构和保证团队建设支持这种方法的情况下构建微服务是有风险的。
辅助膨胀是团队没有应用周到的架构镜头的标志——它表明对每个服务如何依赖另一个服务知之甚少。 这通常会导致微服务反样式,这会降低可用性并在尝试推出新功能时触发延迟。 最好没有组织愿意以这种情况结束。
进行架构漫步
除了使用组织解剖结构及其对架构的影响之外,评估任何事物的连接方式以识别产品可能出现问题的根源也很重要。 为此,请执行简单的架构漫游。 要进行架构漫游,您需要查看每件小事是如何从设备或软件连接到数据层的,然后再返回响应。 在进行架构漫步时,有几件重要的事情需要继续记住:
- 必须搜索孤立的故障点、在运行时相互依赖的供应商以及不会随着需求的增加而扩展的组件。
- 考虑状态性——这包括分析从一个会话到另一个涉及人的会话的事实存储位置以及这些事实是如何保存的。
- 密切关注未分片的大型数据库,以及作为公共云或自托管事实中心的元素跨地点制造的呼叫。
- 出现使用平台即服务 (PaaS) 或云数据库作为支持 (DBaaS) 正是在公共云故障创建跨区域电话呼叫的地方。
所有高于以上的因素只是需要考虑修复您产品的任何机会障碍的一些部分。 真正采用的时机应该只考虑功能和架构需求,以获得理想的可行成功。
高级产品工程师对此需要了解什么?
高级项目工程领导者的重点需要是在一个共同的基础上进行某些可扩展性和可用性组织和复杂的金融债务清点,以便在潜在困难出现之前对其进行故障排除。 解决方案架构师或少量高级工程师应制定规则,产品团队可以使用这些规则来设计和设计适当的规模和高可用性水平。
像 CodeScene 这样的工具可以用来检测供应商之间的依赖关系,并帮助解决代码库行为方面的挑战。 通知积压的重构需要和专门的信用卡债务的好处支持。
随着企业不断发展以适应快速发展的科技行业的需求,充分了解您的技术知识泄露了早期选择的内容至关重要。 然后可以利用这些学习来判断和减少将来发生的非常相似的故障,就像帮助您的团队了解如何将他们的团队设计用作帮助实现目标和达到新高度的工具一样完美。
Dave Berardi,丈夫或妻子, AKF Partners