• 多租户应用能让不同客户端通过同一应用程序访问不同的隔离的数据库,客户端之间无法查看彼此的数据。这意味着我们必须为每个租户建立一个单独的数据存储。但是如果我们想对数据库进行一些统一的更改,这是针对为每个租户数据库都需要进行的统一修改。本文展示了一种方法,该方法如何使用每个租户的数据源来 icon
  • 恭喜从单点故障变成多点故障! 拥有长期支持成本的架构中的所有决策之间存在平衡。在43个技术堆栈上拥有43个服务不仅要在可操作性方面而且还要在劳动力的发展和可替代性方面付出长期成本。 43比在线银行monz icon
  • 企业正在迅速采用微服务架构来创建灵活,可扩展的应用程序,这些应用程序可以快速迭代,具有较高的容错能力和较低的停机时间。您如何构建正确的微服务架构?尽管确切的架构会有所不同,但是有一些最佳实践可以帮助设计有效和最佳的微服务架构。 icon
  • 由于许多新应用程序是作为微服务系统构建的,因此双重写入已成为一个普遍的问题。它们是导致数据不一致的最常见原因之一。更糟的是,许多开发人员甚至都不知道双重写入是什么。 什么是双重写入?双重写入描述了您在两个个 icon
  • Revolut需要记录每个与金钱有关的事件,它们都很重要的;这是一个水晶球,我们必须小心接住并处理。此类事件包括汇款,更改用户数据,任何卡操作等。与处理财务操作相关的所有事情都需要100%的一致性,金钱是非常敏感的事情。同时,我们每天必须跟上成千上万新用户的步伐。指数级放大还影响功能交付。我 icon
  • 在为微服务通信构建服务网格的Istio社区中,控制平面的实现将 icon
  • 在使用JAX-RS,Spring Boot或任何其他技术的RESTful Web服务中,必须使用机器可读且人性化的自定义业务错误代号。假设您正在编写订单处理系统,客户可能没有资格使用某种付款方式下订单,您想通过Web前端或HTTP API调用的结果向用户反馈这种问题。可以通过查看ht icon
  • 现在我们的工业终于从大众的错觉(微服务将是未来)中恢复过来了,又掉入了一个更大的错觉:无服务器Serverless将提供万能的拯救。试图从无服务器的基础上制作整个应用程序,例如Basecamp或Shopify或GitHub或几乎任何东西,无服务器沿着微服务所有坏主意继续挖坑,并说“但 icon
  • 性能调优通常遵循以下步骤: 出现性能问题 有经验的人知道可能是什么原因,并提出具体的建议 确定基准性能,应用更改,然后再次测量性能 如果与基准相比性能有所改善,请保留更改,否则恢复更改 如果现在认为性能已经足够,那么您就完成了。如果不是,请返回 icon
  • 使用微服务模式构建应用程序并将这些服务部署到Kubernetes上已成为当今运行云原生应用程序的实际方法。在微服务架构中,单个应用程序被分解为多个微服务。每个微服务由一个小团队拥有,该团队有权并负责为特定的微服务做出正确的决策。这种责任通常从用户请求到达的系统边缘开始,一直到服务的业 icon
  • “容器”一词已成为一个非常频繁的名词,常常引起混乱。这里试图精确定义,意味着四个意思:一:以容器为隔离机制。在Linux上,这是可用于隔离进程或进程组的cgroup,seccomp和friends的集合。二:容器作为包装机制。最流行的是Docker,涉及获取一些代码并关闭其依 icon
  • 构建微服务很容易,难点是:-找到微服务之间适当的界限-集成服务(消息传递与RPC)-错误处理(弹性)-Sociotechno社会技术的关注(团队划分界限,组织变更)   icon
  • 在本文中,我将探讨2007年Windows Vista发行失败后Microsoft Research的发现。Microsoft决定深入研究并找出问题出在哪里。Microsoft Research提出了一个AI模型来预测代码库中的错误数量,而按准确性排序的主要预测指标是: icon
  • 此存储库包含使用CQRS和事件源构建基于微服务的系统时可能需要的工具和服务的集合。 icon
  • 通往地狱的道路充满了良好的愿望。希望您可以从我们的错误中学习并发现为什么在开始下一个项目时应该考虑极简主义。在Spaceship,Voyager应用程序后端的第一个迭代很大程度上依赖于Kafka。我们的意图是崇高的:创建一个应用程序,随着我们的客户群的增长,该应用程序将具有可审核性, icon
  • 人们通常不知道微服务需要独立的自治。例如各种服务共享一个数据库;另一个问题是,服务之间通过RPC/Restful进行网络之间的同步调用链太长。这些都是分布式意大利面条一样的糨糊结构,这种架构并没有引起人们的注意,这种面条糨糊的结构可能是由于各种相互调用的服务紧密耦合而引起的。设计微服 icon