反应式、流和NoSQL是现如今的重要概念,它们非常有用,但是,在阅读网文时,Vaughn Vernon有时候会有这样的感觉,就是如果公司要想获得云原生应用程序的全部好处,就必须使用这些概念。他在一篇博文中强调,这不是真的,并且指出,不把所有的东西重新构建,也是很有可能从云中受益的。

\\

Vernon是《实现域驱动设计》和《基于Actor模型的反应式消息传递模式》一书的作者。在试图阐明有关云原生和反应式的技术现状时,他回应了自己读过而又特别在意的六种言论。

\\

信息是一种原始格式的实时流数据库

\\

在Vernon看来,当你需要快速响应业务变化时,流数据是一种非常有用的技术,目前,它是实时处理数据的最佳方式。不过,他指出,数据总是在云中流动的说法并不准确。大多数业务系统仍然使用静止的持久化状态数据。

\\

他还指出,在处理流时,有一些智能解决方案可以帮助解析流数据,并且对缺少这类工具的技术栈发出了警告。

\\

传统Java工场的技能集不利于基于云的现代化应用程序

\\

Vernon强调,可以把富有经验的开发人员的技巧用在反应式架构中。公司不用因为采用新的技术栈就用新人替换现有的开发人员和架构师,那样会把核心业务置于风险之中。

\\

Vernon指出,为了帮助开发人员提高,应该给他们提供现代化的工具,比如支持并发和并行的硬件,这是现如今非常有用的东西。

\\

数据不是永久的,总是在变化

\\

Vernon认为那不是真的;数据是持久化的,就像几十年来一直在做的那样。如果出现中断,而数据没有持久化,那么公司最有价值的资产就会丢失。通常,对于流而言,情况就是如此。当然,有一些例外。有时候,只需要对流中的数据进行抽样,在这种情况下,流中的部分数据可以丢失,而且没有任何影响。

\\

\

当情况需要时,你不能认为使用RDBMS低级。在某些情况下,RDBMS可能无法满足特定应用场景的扩展性需求。另外有些时候,它并不是当前任务的最佳选择,而随意忽略这样一种技术选择会导致许多不必要的复杂性。

\

\\

在Vernon看来,重要的是要理解何时需要持久化,他还指出,大多数专家和开发人员都可以推断出来,做出可靠的决策。

\\

数据是一个流,你无法对它执行SQL查询

\\

就流本身而言,是这样的,但通常,数据流可以进入允许使用SQL进行查询的存储。查询实时流数据的其中一个例子是被称为连续查询的技术,Vernon指出,这项技术已经推出很长时间了。

\\

反应式是一种构建应用程序的新方法,单体应用无法从云中获益

\\

包括单体应用程序无法从云中获益在内,这些言论对于Vernon而言都很常见,但是错误的,他提到了一项称为“lift and shift”的技术,可以在保留遗留系统的同时从云中获益。在Vernon看来,一个恰当模块化的单体比一大堆强耦合的微服务要强多了。相反,问题来自脆弱的架构和糟糕的模块化,那通常会导致大泥球模式。

\\

Vernon建议,当不同业务域的变化速率存在明显的差别时,考虑一下微服务,并且指出,知道在什么情况下优先选择应用程序微服务架构或单体架构非常重要。

\\

当使用Java时,你必须改变做事方法,并采用反应式方法从而利用云的优势

\\

Vernon认为,Java或另外一门JVM语言非常适合创建反应式应用程序以及实现实时、流式、数据驱动的场景。他还认为,Java有一个光明的未来,并援引了Bjarne Stroustrup的话:

\\

\

只有两种[编程]语言:人们抱怨的语言和没人用的语言。

\

\\

为了帮助构建Java原生、反应式应用程序,Vernon已经开始致力于开源平台vlingo的开发,旨在从反应式、事件驱动的微服务架构中获益。该平台以领域驱动设计和角色模型的思想为基础,现在已经提供下载。

\\

查看英文原文:Vaughn Vernon: The Reality of Being Cloud-Native and Reactive

Vaughn Vernon谈云原生和反应式现状相关推荐

  1. DaoCloud丨云原生边缘计算产业发展现状与趋势展望

    随着万物互联.数字孪生.泛在算力等理念不断推进,边缘计算正在成为越来越多开发者们关注的焦点.云原生边缘计算覆盖哪些应用场景?各行各业云原生边缘计算有何差异?云边协同对 Cloud Native 六大诉 ...

  2. 资深架构师谈云原生生态的基石Kubernetes

    谈到Kubernetes就不得不谈到容器.几年前容器技术大热,现在基本归于平淡,之前大家提到的容器通常是指Docker容器,甚至很多人认为容器就等同于Docker,还有很多人像操作虚拟机一样使用容器. ...

  3. 浅谈云原生架构的 7 个原则

    简介:作为一种架构模式,云原生架构通过若干原则来对应用架构进行核心控制.这些原则可以帮助技术主管和架构师在进行技术选型时更加高效.准确,本文将就这些原则展开具体介绍. 作为一种架构模式,云原生架构通过 ...

  4. 鸟哥谈云原生安全最佳实践

    嘉宾 | 鸟哥   整理 | 孙正印 出品 | CSDN云原生 2022年6月7日,在CSDN云原生系列在线峰会第7期"安全技术峰会"上,鸟哥谈安全公众号作者.某互联网公司云化办公 ...

  5. 鸟哥谈云原生安全最佳实践 | 文末赠书

    嘉宾 | 鸟哥   整理 | 孙正印 出品 | CSDN云原生 2022年6月7日,在CSDN云原生系列在线峰会第7期"安全技术峰会"上,鸟哥谈安全公众号作者.某互联网公司云化办公 ...

  6. 再谈云原生时代的系统软件,创造一个开放、无锁定、低成本的技术体系

    公有云和K8S将成为未来系统软件的标准底座,系统软件将面临非常不同的技术环境,也要考虑公有云垄断资源之后的市场环境.系统软件应采取多云.开源的市场策略,采取跨区域复制.replication-free ...

  7. Vaughn Vernon谈当今软件开发所面临的挑战

    Vaughn Vernon举办了一场演讲,阐述了他所遇到的各种软件开发方面的严重问题,但也为这些问题提出了应对的方案.在他看来,大量的项目与开发团队都深陷设计糟糕的系统中难以摆脱,无数开发者在不停地为 ...

  8. 贾扬清谈云原生-让数据湖加速迈入3.0时代

    简介: 摘要:2021云栖大会云原生企业级数据湖专场,阿里云智能高级研究员贾扬清为我们带来<云原生--让数据湖加速迈入3.0时代>的分享. 摘要:2021云栖大会云原生企业级数据湖专场,阿 ...

  9. 阿里巴巴叔同谈云原生和云计算

    本文系『CSDN云计算』对阿里云云原生应用平台负责人叔同的专访,阿里巴巴中间件受权转载.通过本文,您将了解到云计算时代容器技术的发展路径,阿里云在容器领域的产品矩阵.技术迭代以及未来趋势等方面,以及阿 ...

最新文章

  1. python开发视频播放器_python视频播放器
  2. note 11 字典
  3. element-ui中的loading的实际应用
  4. IOS开发学习记录第2天之熟悉Xcode常用快捷键
  5. SpringBoot 配置多数据源
  6. 部署Linux服务器实验报告,Linux服务器学习----tomcat 服务配置实验报告(一)
  7. c#结合emgucv进行人脸检测_Python实时人脸识别/替换
  8. python pip更改源
  9. NLPIR使用(1)
  10. jms两种模式例子-超越昨天的自己系列(2)
  11. 几种凹凸贴图(Bump Mapping)的学习记录
  12. 都说ApiPost香,它到底香在哪里?
  13. 将雅虎《心香一脉》每天推荐的文章发到咱邮箱(Java版)
  14. linux使用线程实现生产者消费者问题,Linux下生产者与消费者的线程实现
  15. 【总结】1396- 60+个 VSCode 插件,打造好用的编辑器
  16. [golang gin框架] 27.Gin 商城项目-购物车
  17. 压力应力测试软件,管道强度和应力计算软件
  18. 使用Java编写《拳皇97》,致敬经典,还原八神庵大战草稚京
  19. php 7 current time,PHP检查当前时间(PHP check current time)
  20. wlacm 骑马修栅栏 (图的遍历)题解

热门文章

  1. win10+tensorflow-gpu+pycharm+anaconda...的成功安装,顺利在spyder import tensorflow
  2. C语言会场安排问题贪心算法,贪心算法解决会场安排问题多处最优服务次序问题(含源代码).doc...
  3. pca各个向量之间的相关度_详细推导PCA算法
  4. 小甲鱼python课后题简书_MOOC_Python语言程序设计(嵩天)课后练习_第二周
  5. 电脑装oracle服务很卡,oracle11g安装后电脑启动很慢怎么解决
  6. eclipse安装反编译插件:jd-eclipse 查看源码
  7. sendrequest ajax数据返回,jquery ajax 还没有调用send()方法 返回的状态码XMLHttpRequest.status 是0 ,怎么解决?...
  8. 机器人改变生活利弊英语作文_左手建筑右手餐饮,机器人如何改变大众生活? 圆梦人感言...
  9. IE 不支持单引号(')的实体名称(amp;apos;)
  10. 搭建gradle环境