如何做到服务器虚拟化_尽可能地做到无服务器,但不止于此

如何做到服务器虚拟化

毫无疑问,如果您一直关注技术趋势,那么您会看到“无服务器”的兴起。 在某些情况下,“无服务器”被称为“下一个应用程序体系结构”样式。 我什至听说有人说“您不需要技术X,因为无服务器是未来的方式”或“技术X是红鲱鱼,因为无服务器”等。在本期中,我们将了解为什么它与“微服务与无服务器”。

到目前为止,我对无服务器的最佳描述来自Patrick Debois在他的“无服务器到完整服务”演讲中 。 在该演讲中,他为“无服务器”提供了一个定义,并实际上定义了什么是什么,而不是什么不是 。 专注于它不是什么(即,没有服务器!!!!)实际上会分散任何真实含义(当然,还有服务器!!)。 通过集中的事实,它更多的是使用作为提供的服务(想事情像SQS,DynamoDB时,Gmail,谷歌日历,SalesForce公司,快速度等),将它们订在一起,以提供某种功能,我们可以得出一个更有趣的定义 :

将核心基础架构服务外包给服务提供商,并通过API(和功能)将它们组合在一起以提供业务价值

在许多方面,“利用现有服务并在其之上构建”的想法并不新鲜。 这是“面向服务的体系结构”背后的精神的化身:

微服务与无服务器

如果我们可以利用现有的服务来降低进入门槛(即注册一个API而不是购买硬件,设置安全性/网络/ DNS /操作系统等),那么我们可以为我们的客户更快地构建有趣的东西。 这是什么是无服务器的一部分。 第二部分是您不必拥有来自这些不同服务的所有技术的事实。 也就是说,您需要支付使用费(计量)和SLA,而您不拥有并且必须解决棘手的技术问题才能使用提供业务价值的功能。 Ben Kehoe 在最近的播客中很好地传达了这一点。 我完全赞同这个。

因此,当客户问我“如果无服务器是应用程序体系结构的下一个发展趋势,我是否应该跳过微服务和容器”? 答案:

尽可能地做到无服务器,但不止于此。

让我们剖析一下。

作为技术专家,我们被技术和任何新的闪亮趋势所吸引。 无服务器,容器等都很重要。 但归根结底,我们作为技术专家的作用是帮助企业发现和利用企业价值,并且比竞争对手更快地做到这一点。

如果我们处于应用程序生命周期的“探索”部分(就像所有初创公司一样),我们想要做的就是Swift使关于将为客户创造价值的假设失效,并同样Swift地找到能够为客户创造价值的假设。 客户在看到价值之前就无法明确表达其价值。 最好通过将服务摆在它们前面来快速进行试验,并观察它们的响应方式。 如果某件事对客户的兴趣不大,最好抛弃它并继续前进。 为此,我们不能在建立基础设施,开发成本,合作伙伴等方面投入大量资金。我们必须尽可能便宜地运行这些实验,而“无服务器”方法为实现这一目标提供了绝好的机会。 我们可以利用现有的技术服务为客户创建数字资产,而无需大量投资,而且至关重要的是:我们可以随行付款。 如果我们对新产品/服务的兴趣为零,那么花费不多。 如果我们最初有一些不可预测的棘手的兴趣,那么我们可以提供一个平台(服务+ FaaS),可以快速扩展而不会造成很多麻烦。

如果我们偶然发现确实能够提供客户价值的产品(即产品/市场适应性),那么我们希望在此基础上进行扩展,扩展并围绕其构建有利润的产品。 此时,您可能会发现自己想要采用部分无服务器且部分非无服务器的体系结构来解决此问题。 您将不得不面对以下两个技术决策:“我应该拥有多少堆栈才能实现业务价值和差异化”,以及“我愿意将SLA,法规遵从性,价格和路线图外包给我的服务提供商” ? 在探索阶段,将所有内容外包给服务提供商可能很好。 但是随着业务的成熟,关于这些决定如何影响组织(结构,运营,TCO等)的真实讨论。 这是一个影响我们客户的非常实际的问题。

当您开始为新产品/服务找到可预测的模式,决定要优化某些部分时(包括成本和技术因素,例如延迟,尾部延迟等),您可能会认为无服务器方法过于昂贵,并且可能值得拥有更多堆栈部分的所有权。 看一下无服务器及其周围基础设施的这种情况,对于使用模式更可预测的应用程序来说,它变得太昂贵了

最后,对于确实能产生大量收益的现有应用程序,您不能仅仅将其全部神奇地转移给服务提供商。 但是,您可以尝试对其中的某些部分进行现代化改造,以参与公司的一些较新的数字计划。 我们看到组织通过对基于容器和Kubernetes构建的服务体系结构(微服务/ API / SOA等)进行现代化升级,朝着更高性能的IT迈进了巨大的步伐,如果将其扩展到其逻辑结论,则可以将其构建为组织服务的平台,从而实现组织的各个部分都变得“无服务器”。 也就是说,组织的一部分(从事探索性工作的人)可以利用企业的其余部分,而不必严格“拥有”整个实施方案。

企业资产组合的不同部分以及应用程序开发生命周期的不同范围要求使用不同的工具和方法,所有这些工具和方法都旨在“在当前环境下,最快实现价值的最佳方法是什么?”。 我们应该更加专注于发掘我们真正的“背景”,并在此基础上做出关于投资,所有权,技术等的最佳决策。

问你自己:

  • 您在产品生命周期中处于何处?
  • 您应该拥有什么技术来解决业务问题?
  • 您的团队目前对现有技术有多满意?
  • 您正在考虑采用“无服务器”功能的功能对您的业务有多么战略和“核心”?

很高兴在评论中或Twitter @christianposta上发表分歧或想法

尽可能做到无服务器,但不要超过 2018年9月14日发布的服务器。

翻译自: https://www.javacodegeeks.com/2018/09/be-as-serverless-as-you-can-but-not-more-than-that.html

如何做到服务器虚拟化

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/332951.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

MAC启动redis的目录

找到目录 cd /redis-6.2.1/src ./redis-service

Linux/MacOS 安装 Oh my zsh

文章目录安装curl 安装wget 安装卸载安装 安装方法有两种,可以使用 curl 或 wget,看自己环境或喜好 curl 安装 sh -c "$(curl -fsSL https://raw.githubusercontent.com/robbyrussell/oh-my-zsh/master/tools/install.sh)"curl 是下载文件的…

pc 图片预览放大 端vue_企业为什么需要建设PC+手机微信三合一全网营销的网站呢...

随着信息时代的发展,手机一步步的进入了我们的生活,渐渐的有很多东西都在从pc端过渡到手机端,我们在网购的时候会发现一系列的活动,比如说下载手机客户端就能免减多少钱或者抽奖这样的活动,这样在一定的程度上推动了人…

arrays.sort(._Arrays.hashCode(Object [])与Objects.hash(Object…)

arrays.sort(.从JDK 1.5开始 , Arrays类提供了名为“ hashCode ”的重载static方法。 大多数重载方法都接受特定原始类型的数组,但是Arrays.hashCode(Object [])方法可用于计算引用类型数组的int哈希码。 自从JDK 1.7诞生以来 &am…

windows系统SSH证书设置

在客户端终端运行命令 ssh-keygen -t rsa 然后就会显示这两行: Generating public/private rsa key pair. Enter file in which to save the key (/c/Users/16627/.ssh/id_rsa): 这是让你输入一个文件名,用于保存刚才生成的 SSH key 代码。为了避免麻烦…

肺功能曲线图怎么看_【家装干货】有人说是鸡肋,有人说是功能升级,卫生间装双人洗漱台,你怎么看?...

家里如果是2人甚至4人以上共同居住,为了使用方便,安装双人洗漱台是值得尝试的,毕竟刷牙、洗脸、饭前洗手,或是梳妆、卸妆都会在这里进行。不过是否能安装,需要对双人洗漱台的尺寸有一定掌握,根据卫生间的大…

Linux命令中的$()和${}的区别

文章目录$()${}$() $() 小括号里面是 Linux 命令,作用就是执行里面的命令后返回执行的结果;和 (反引号)作用一样。 $() 与 (反引号)都是用来作命令替换的。命令替换与变量替换差不多,都是用来…

feign rest_与Feign客户轻松进行REST通信

feign rest在这个例子中,我们将向您展示如何使用Feign客户端开发一个简单的Spring Boot Application,以使用Weather REST服务。 Spring Boot是基于Java的框架,可简化Web和企业应用程序的构建。 Spring Boot具有嵌入式Tomcat,提供…

Properties常用方法

一、概念 java.util.Properties 继承于Hashtable ,来表示一个持久的属性集。它使用键值结构存储数据,每个键及其对应值都是一个字符串。该类也被许多Java类使用,比如获取系统属性时,System.getProperties 方法就是返回一个Proper…

linux 丢包多少正常_Linux 问题故障定位,看看这篇

转自:Lucien_168https://www.jianshu.com/p/0bbac570fa4c1、背景有时候会遇到一些疑难杂症,并且监控插件并不能一眼立马发现问题的根源。这时候就需要登录服务器进一步深入分析问题的根源。那么分析问题需要有一定的技术经验积累,并且有些问题…

zsh 主题的下载和安装

文章目录agnostergalloisspaceshipPowerlevel10kzsh 主题列表: https://github.com/ohmyzsh/ohmyzsh/wiki/Themes https://github.com/robbyrussell/oh-my-zsh/wiki/themes agnoster agnoster 是比较常用的 zsh 主题之一,但是该主题是依赖于 Powerline…

spock 集成测试_使用Spock 1.2简化对遗留应用程序的集成测试

spock 集成测试了解如何利用Spock 1.2切片传统应用程序的Spring上下文,编写集成测试。 您是否曾经想过,要开始使用一些遗留应用程序,编写一些测试以了解正在发生的事情,并可能收到有关回归的通知? 当您想实例化单个类时…

Stream流的基本使用方法

Stream流的基本使用方法 0.常用方法 在介绍的各种方法中,凡是返回值仍然为Stream接口的为函数拼接方法,它们支持链式调用;而返回值不再为Stream接口的为终结方法,不再支持链式调用。如下表所示: 方法名方法作用方法…

iTerm2主题

iTerm2 最常用的主题是 Solarized Dark theme,下载地址:http://ethanschoonover.com/solarized 下载的是压缩文件,你先解压一下,然后打开 iTerm2,按 Command , 键,打开 Preferences 配置界面,…

包包各部位名称图解_品尝烤肉必备!日本和牛各部位名称中日翻译对照 点餐更轻松...

谈到日本美食,又怎么能少了在全球首屈一指的和牛?但是日本大部分烤肉餐厅里的菜单都是日语,而且肉的部分众多,点餐时一定傻傻分不清,一脸懵逼了!今天小T为大家分享日本和牛肉各部位名称的中日语对照&#x…

Java程序开发三步骤:编写、编译、运行

1.Java语言跨平台原理 1.1Java虚拟机——JVM JVM(Java Virtual Machine ):Java虚拟机,简称JVM,是运行所有Java程序的假想计算机,是Java程序的 运行环境,是Java 最具吸引力的特性之一。我们编写…

corda_Corda服务的异步流调用

corda如何使流程更快? 如果您与Corda合作已有一段时间,那么您很有可能已经考虑过这一点。 您可以通过以下几方面进行合理的调整以提高性能:事务大小,优化查询并减少整个Flow执行过程中所需的网络跃点数。 在某种程度上&#xff0c…

Powerline专用字体安装_PowerFonts字体库安装_Meslo LG字体安装

文章目录单独下载某个 Meslo LG 字体通过命令方式安装全部 Meslo LG 字体zsh 如果使用主题 agnoster,而该主题依赖于 Powerline,而 Powerline 的正常显示有依赖于字体 Meslo LG,要不然会出现乱码的情况,如下所示:单…

delphi7 中文注释字体_使用nerd-font/font-patcher为字体添加字体图标

Nerd-fonts常用来在终端下显示各种图标,这个项目的github repo下提供了许多Nerd Font字体,图标使用效果如图。由于目前Windows Terminal还不支持设置第二字体,要想使用nerd font就必须替换掉原有字体。Nerd font的github页面下提供了许多常见…

Mybatis框架(待完善)

框架 框架(Framework)是整个或部分系统的可重用设计,表现为一组抽象构件及构件实例间交互的方法;另一种定义认为,框架是可被应用开发者定制的应用骨架。前者是从应用方面而后者是从目的方面给出的定义。 简而言之&a…