返回介绍

本书的目标读者

发布于 2024-08-24 16:53:18 字数 859 浏览 0 评论 0 收藏 0

如果你开发的应用具有用于存储或处理数据的某种服务器/后端系统,而且使用网络(例如,Web 应用,移动应用或连接到互联网的传感器),那么本书就是为你准备的。

本书是为软件工程师,软件架构师,以及喜欢写代码的技术经理准备的。如果您需要对所从事系统的架构做出决策 —— 例如您需要选择解决某个特定问题的工具,并找出如何最好地使用这些工具,那么这本书对您尤有价值。但即使你无法选择你的工具,本书仍将帮助你更好地了解所使用工具的长处和短处。

您应当具有一些开发 Web 应用或网络服务的经验,且应当熟悉关系型数据库和 SQL。任何您了解的非关系型数据库和其他与数据相关工具都会有所帮助,但不是必需的。对常见网络协议如 TCP 和 HTTP 的大概理解是有帮助的。编程语言或框架的选择对阅读本书没有任何不同影响。

如果以下任意一条对您为真,你会发现这本书很有价值:

  • 您想了解如何使数据系统可扩展,例如,支持拥有数百万用户的 Web 或移动应用。
  • 您需要提高应用程序的可用性(最大限度地减少停机时间),保持稳定运行。
  • 您正在寻找使系统在长期运行过程易于维护的方法,即使系统规模增长,需求与技术也发生变化。
  • 您对事物的运作方式有着天然的好奇心,并且希望知道一些主流网站和在线服务背后发生的事情。这本书打破了各种数据库和数据处理系统的内幕,探索这些系统设计中的智慧是非常有趣的。

有时在讨论可扩展的数据系统时,人们会说: 你又不在谷歌或亚马逊,别操心可扩展性了,直接上关系型数据库 。这个陈述有一定的道理:为了不必要的扩展性而设计程序,不仅会浪费不必要的精力,并且可能会把你锁死在一个不灵活的设计中。实际上这是一种 过早优化 的形式。不过,选择合适的工具确实很重要,而不同的技术各有优缺点。我们将看到,关系数据库虽然很重要,但绝不是数据处理的终章。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文