一.  vertx是什么?   答:lib工具包

二.  为什么要使用vertx

答:

  1. 异步和非阻塞:Vert.x 采用了事件驱动和非阻塞的编程模型,可以处理大量并发请求而不会阻塞线程,提供更好的响应性能和吞吐量。

  2. 多语言支持:Vert.x 支持多种语言,包括 Java、Kotlin、Scala、Groovy 和 JavaScript,使开发人员可以使用他们熟悉的语言来构建应用程序。

  3. 响应式编程:Vert.x 基于响应式编程模型,可以更容易地处理异步操作和数据流,帮助开发人员构建高效的并发应用程序。

  4. 内置网络支持:Vert.x 提供了强大的网络支持,包括 TCP、UDP、HTTP 和 WebSocket 等协议,开发人员可以方便地构建网络应用程序和微服务。

  5. 模块化设计:Vert.x 提供了模块化的设计和丰富的插件生态系统,开发人员可以选择所需的功能模块,以满足自己的需求。

  6. 当然以上5点都是百度的,对于我而言就是无所事事,就单纯玩着

三、异步和响应式的关系

1.响应式必定是异步的,而异步不一定是响应式

异步指的是在程序执行过程中,某个操作可以独立于主程序的执行进行。异步操作不会阻塞主程序的执行,可以提高程序的并发性和响应性能力。在异步操作中,程序可以继续执行其他任务,而不必等待当前任务完成。

响应式指的是系统对事件的即时响应能力。在响应式编程中,应用程序通过观察(订阅)事件流并定义响应逻辑来实现高效的事件处理。响应式编程使应用程序能够根据事件的到达和发生,实时地做出反应。

四、为什么无法避免使用分布式系统

  1. 可扩展性:分布式系统可以通过增加计算机节点来提高处理能力和吞吐量。在大规模的数据处理和高并发请求的情况下,单个计算机往往无法满足需求,需要采用分布式系统来分担负载。

  2. 容错性:分布式系统可以通过冗余备份和容错机制来提高系统的可靠性和容错能力。当某个节点发生故障时,系统可以自动将任务切换到其他正常的节点上,从而保证系统的连续性和可用性。

  3. 数据局部性:分布式系统可以将数据分布存储在不同的节点上,使得数据更加接近于使用它的计算节点。这样可以减少数据传输的成本和延迟,并提高系统的性能。

  4. 地理分布:分布式系统可以将计算资源部署在不同地理位置的节点上,实现多地域的协同工作。这对于全球化企业、跨国合作和应对灾难恢复等方面都具有重要意义。

五、vertx的替代方案

  1. Spring Boot:Spring Boot 是一个用于构建 Java 应用程序的开发框架。它提供了简化的配置和开发流程,并且具有丰富的生态系统和良好的社区支持。

  2. Node.js:Node.js 是一个基于 Chrome V8 引擎的 JavaScript 运行环境,可用于构建高性能的网络应用程序。它采用事件驱动、非阻塞IO模型,非常适合构建实时应用和高并发系统。

  3. Akka:Akka 是一个构建高并发、分布式和容错应用程序的工具包和运行时环境。它使用 Actor 模型来处理并发和消息传递,并提供了强大的容错机制。

  4. Django:Django 是一个用于构建 Web 应用程序的 Python 开源框架。它提供了强大的模型-视图-控制器(MVC)架构、ORM(对象关系映射)和丰富的功能插件。

  5. Express.js:Express.js 是一个简洁、灵活的 Node.js Web 应用程序框架,它提供了一组强大的功能和中间件,可用于构建灵活的 Web 应用程序。

vertx的学习总结1的更多相关文章

  1. vert.x学习(八),用JDBCClient配合c3p0操作数据库

    今天学习了下vert.x的JDBCClient,我这里将今天的学习笔记记录下来.这次学习中使用了c3p0. 用使用JDBCClient和c3p0得现在pom.xml文件里面导入对应的依赖,下面贴出xm ...

  2. vert.x学习(七),使用表单获取用户提交的数据

    在web开发中,用的最多的就是表单了,用户通过表单提交数据到系统后台,系统又可以通过表单传递的数据做业务分析.那么这章就学习在vert.x中怎么使用表单,获取表单的参数值. 编写一个表单模板代码res ...

  3. vert.x学习(六),动态模板与静态文件的结合

    这篇学习在动态模板里面引入css,把动态模板与静态文件结合起来使用. 编写DynamicReference.java package com.javafm.vertx.helloworld; impo ...

  4. vert.x学习(五),用StaticHandler来处理静态文件

    做web开发,css.js.图片等静态资源是必不可少的,那么vert.x又是怎么来加载这些静态资源呢.请看StaticHandler 编写HelloStaticResource.java packag ...

  5. vert.x学习(四),使用模板解析器ClassLoaderTemplateResolver

    在vert.x中使用模板解析,可以为我们带来很多方便.我这里学习了一下ClassLoaderTemplateResolver的简单使用.这次工程配置与上篇一样,不需要做任何多的配置.直接编写代码就可以 ...

  6. vert.x学习(一),开篇之hello world

    今天决定学习下vert.x这个框架,记录下学习笔记. 下面列下我的开发环境: Java版本 1.8 maven版本 3.3 IDEA版本 2016 在idea中使用vert.x不用下载或安装其他东西了 ...

  7. 学习Spring框架等技术的方向、方法和动机

    学习Spring框架最早学习Spring框架是在大二的时候,当时看了几本书,看了一些视频,主要是传智播客的.更多的,还是写代码,单独写Spring的,也有与Struts和Hibernate等框架整合的 ...

  8. Vertx Future 异常处理

    Vertx Future 异常处理 异常发生 ​ 在使用Vertx进行开发的时候,必不可免使用Future异步编程框架.通过Future的 compose ,可以轻松实现不同异步任务的组合. ​ 但是 ...

  9. Vert.x(vertx) 认证和授权

    每个线上系统几乎都是离不开认证和授权的,Vert.x提供了灵活.简单.便捷的认证和授权的支持.Vert.x抽象出了两个核心的认证和授权的接口,一个是 AuthProvider,另一个是User.通过这 ...

  10. Vert.x学习第一天

    昨天看了下异步,然后就开始了Vert.x相关知识的学习. Vert.x是当下非常流行的一套全异步框架,其优势在于轻量级.高效.非常适合作为移动端后台或是企业应用. 当然对于第一天接触这个框架的人(没错 ...

随机推荐

  1. Mybatis-Plus+Nacos+Dubbo进行远程RPC调用保姆级教程

    默认你已经看过我之前的教程了,并且拥有上个教程完成的项目, 之前的教程 https://www.cnblogs.com/leafstar/p/17638782.html 1.在bank1的pom文件中 ...

  2. 《最新出炉》系列初窥篇-Python+Playwright自动化测试-12-playwright操作iframe-中篇

    1.简介 按照计划今天就要用实际的例子进行iframe自动化测试.经过宏哥长时间的查找,终于找到了一个含有iframe的网页(QQ邮箱和163邮箱),别的邮箱宏哥就没有细看了.所以今天这一篇的主要内容 ...

  3. [ABC150F] Xor Shift

    2023-03-10 题目 题目传送门 翻译 翻译 难度&重要性(1~10):6 题目来源 AtCoder 题目算法 KMP,Z函数 解题思路 首先是按位确定,令 \(t(i,j)\) 表示 ...

  4. .NET开源最全的第三方登录整合库 - CollectiveOAuth

    前言 我相信很多同学都对接过各种各样的第三方平台的登录授权获取用户信息(如:微信登录.支付宝登录.GitHub登录等等).今天给大家推荐一个.NET开源最全的第三方登录整合库:CollectiveOA ...

  5. Node.js 使用 officecrypto-tool 读取加密的 Excel (xls, xlsx) 和 Word( docx)文档

    Node.js 使用 officecrypto-tool 读取加密的 Excel (xls, xlsx) 和 Word( docx)文档, 还支持 xlsx 和 docx 文件的加密(具体使用看文档) ...

  6. java中有哪些并发的List?只知道一种的就太逊了

    java中有很多list,但是原生支持并发的并不多,我们在多线程的环境中如果想同时操作同一个list的时候,就涉及到了一个并发的过程,这时候我们就需要选择自带有并发属性的list,那么java中的并发 ...

  7. Docker部署中间件

    Docker 安装 1. 卸载旧版本 sudo yum remove docker \ docker-client \ docker-client-latest \ docker-common \ d ...

  8. C51单片机开发

    C51单片机开发笔记 定时器 C51中的定时器和计数器是同一个硬件电路支持的,通过寄存器配置不同,就可以将他当做定时器 或者计数器使用. 确切的说,定时器和计数器区别是致使他们背后的计数存储器加1的信 ...

  9. CF1352D

    题目简化和分析: 这题可以直接按照题意进行模拟,当然有些细节需要注意. 翻译的不足:这里的回合指任意一个人吃掉都算,而不是双方一个回合,最后一个人即使不满足也算一个回合. 我们可以采用两个指针模拟两个 ...

  10. 基于matomo实现业务数据埋点采集上报

    matomo是一款Google-analytics数据埋点采集上报的平替方案,可保护您的数据和客户的隐私:正如它官网的slogan: Google Analytics alternative that ...