Skip to content

Latest commit

 

History

History
97 lines (59 loc) · 6.6 KB

File metadata and controls

97 lines (59 loc) · 6.6 KB

零、前言

今天的企业发展如此之快,以至于他们正在借助云的弹性来提供一个平台来构建和部署其高度可扩展的应用。这意味着开发人员现在面临着构建云原生应用的挑战。为此,他们需要了解他们编码所针对的环境、工具和资源

本书首先解释了云应用的驱动因素,并向您展示了云部署与标准数据中心上常规应用部署的区别。您将了解特定于云中运行的应用的设计模式,并了解如何使用 RESTAPI 在 JavaSpring 中构建微服务。

然后,您将深入了解以最大自动化程度构建、测试和部署应用的生命周期,以缩短部署周期时间。逐渐地,您将继续配置 AWS 和 Azure 平台,并使用它们的 API 部署您的应用。最后,您将了解 API 设计关注点及其最佳实践。您还将学习如何将现有的单片应用迁移到分布式云原生应用中。

最后,您将了解如何构建和监控始终可用且容错的可伸缩、弹性和健壮的云原生应用。

这本书是给谁的

希望构建针对基于云部署的弹性、健壮和可伸缩应用的 Java 开发人员会发现本书很有帮助。关于 Java、Spring、web 编程和公共云提供商(AWS 和 Azure)的一些知识应该足以让您读完这本书。

充分利用这本书

  1. 这本书从介绍开始,然后以一个简单的服务为基础,一步一步地,通过章节。因此,读者将受益于遵循书的流程,除非他们正在寻找一个特定的主题。
  2. 下载代码并运行它总是很诱人的。但是,当您键入代码时,尤其是在最初的章节中,您将受益更多。这本书的写作方式使得重要的概念和代码出现在这一章中,从而阻止了您回头看源代码。
  3. 话虽如此,请尝试代码示例并运行它们。它使原则更具体,更容易掌握
  4. 我希望您已经投资了一台好的台式机/笔记本电脑,因为您将在您的机器上运行容器和虚拟机,这需要资源,所以最好有一台强大的设备来运行
  5. 参考章节中提到的文档链接,以扩展本书中讨论的框架和技术的知识。
  6. 云是一种变化非常迅速的技术。因此,本书强调概念,并通过代码演示它们。例如,CQRS 作为一个概念很重要,因此我们展示了 MongoDB 和 Elasticsearch 的实现。但是,您可以在任何其他数据库集上尝试该模式。

下载示例代码文件

您可以从您的账户www.packtpub.com下载本书的示例代码文件。如果您在其他地方购买了本书,您可以访问www.packtpub.com/support并注册,将文件通过电子邮件直接发送给您。

您可以通过以下步骤下载代码文件:

  1. 登录或注册www.packtpub.com
  2. 选择“支持”选项卡。
  3. 点击代码下载和勘误表。
  4. 在搜索框中输入图书名称,然后按照屏幕上的说明进行操作。

下载文件后,请确保使用以下最新版本解压或解压缩文件夹:

  • WinRAR/7-Zip for Windows
  • 适用于 Mac 的 Zipeg/iZip/UnRarX
  • 适用于 Linux 的 7-Zip/PeaZip

该书的代码包也托管在 GitHub 上的https://github.com/PacktPublishing/Cloud-Native-Applications-in-Java 。我们的丰富书籍和视频目录中还有其他代码包,请访问**https://github.com/PacktPublishing/** 。看看他们!

下载彩色图像

我们还提供了一个 PDF 文件,其中包含本书中使用的屏幕截图/图表的彩色图像。您可以在这里下载:https://www.packtpub.com/sites/default/files/downloads/CloudNativeApplicationsinJava_ColorImages.pdf

使用的惯例

本书中使用了许多文本约定。

CodeInText:表示文本中的码字、数据库表名、文件夹名、文件名、文件扩展名、路径名、虚拟 URL、用户输入和 Twitter 句柄。下面是一个例子:CrudRepository接口附带了一组默认方法来实现最常见的操作

代码块设置如下:

-- Adding a few initial products
insert into product(id, name, cat_Id) values (1, 'Apples', 1) 
insert into product(id, name, cat_Id) values (2, 'Oranges', 1) 
insert into product(id, name, cat_Id) values (3, 'Bananas', 1) 
insert into product(id, name, cat_Id) values (4, 'Carrot', 2) 

当我们希望提请您注意代码块的特定部分时,相关行或项目以粗体显示:

public class Product implements Serializable {

任何命令行输入或输出的编写方式如下:

mongoimport --db masterdb --collection product --drop --file D:datamongoscriptsproducts.json 

粗体:表示一个新术语、一个重要单词或您在屏幕上看到的单词。例如,菜单或对话框中的单词出现在文本中,如下所示。下面是一个示例:“接下来,我们单击左侧的 Deployment credentials 链接。”

警告或重要提示如下所示。

提示和技巧如下所示。

联系

我们欢迎读者的反馈。

一般反馈:发送电子邮件feedback@packtpub.com并在邮件主题中提及书名。如果您对本书的任何方面有疑问,请发送电子邮件至questions@packtpub.com

勘误表:尽管我们已尽一切努力确保内容的准确性,但还是会出现错误。如果您在本书中发现错误,如果您能向我们报告,我们将不胜感激。请访问www.packtpub.com/submit-errata,选择您的书籍,点击 errata 提交表单链接,然后输入详细信息。

盗版:如果您在互联网上发现我们作品的任何形式的非法复制品,请您提供我们的位置地址或网站名称,我们将不胜感激。请通过copyright@packtpub.com与我们联系,并提供该材料的链接。

如果您有兴趣成为一名作家:如果您对某个主题有专业知识,并且您有兴趣撰写或贡献一本书,请访问authors.packtpub.com

评论

请留下评论。一旦你阅读并使用了这本书,为什么不在你购买它的网站上留下评论呢?然后,潜在读者可以看到并使用您的无偏见意见做出购买决策。此外,我们在 Packt 可以理解您对我们产品的看法,我们的作者可以看到您对他们的书的反馈。非常感谢。

有关 Packt 的更多信息,请访问packtpub.com