最新文章

Java提示找不到或无法加载主类怎么解决?

Java提示找不到或无法加载主类怎么解决?

Java系列 3年前 (2021-03-28) 浏览: 1239 评论: 0

一旦您编写了一个Java程序,您需要使用javac命令来编译它,这将显示发生的编译时错误(如果有的话)。 一旦解析它们并成功编译程序,将在当前文件夹中生成一个与类名同名的可执行文件,扩展名为.class。 然后需要使用java命令执行它,如: java class_name 在执行时,当JVM找不到具有指定名称的.class文件时,会出现运行时错误,错误为"Could not found or l

下一代虚拟机-GraalVM

下一代虚拟机-GraalVM

相关技术 3年前 (2021-03-27) 浏览: 558 评论: 0

GraalVM是一个高性能运行时,它在应用程序性能和效率方面提供了显著的改进,这是微服务的理想选择。它是为java、JavaScript、LLVM等语言编写的,如C++和C++语言,以及其他动态语言。它消除了编程语言之间的隔离,并在共享运行时启用互操作性。它可以独立运行,也可以在OpenJDK的上下文中运行,Node.js或者Oracle数据库。 对于Java程序 对于现有的Java应用程序,Gr

Dolt-一个具有Git特性的关系数据库

Dolt-一个具有Git特性的关系数据库

相关技术 3年前 (2021-03-26) 浏览: 1106 评论: 0

Dolt是一个SQL数据库,您可以像git存储库一样进行分叉、克隆、分支、合并、推送和拉取。连接到Dolt就像任何MySQL数据库一样,使用SQL命令运行查询或更新数据。使用命令行界面导入CSV文件、提交更改、将更改推送到远程服务器或合并队友的更改。 你所知道的Git的所有命令对Dolt的作用完全相同。Git版本文件,Dolt版本表。就像Git和MySQL生了个孩子一样! 我们还建立了DoltHu

领域驱动设计中的限界上下文和Java9的Module关系

领域驱动设计中的限界上下文和Java9的Module关系

Java系列 3年前 (2021-03-25) 浏览: 615 评论: 0

领域驱动设计(Domain-Driven Design,DDD)是一套帮助我们设计有效的软件体系结构以提供更高业务价值的原则和工具。有界上下文(Bounded Context)是将整个应用程序域划分为多个语义一致的部分,从而将体系结构从一个大泥球中解救出来的核心和基本模式之一。 同时,利用java9模块系统,我们可以创建强封装的模块。 在本文中,我们将创建一个简单的存储应用程序,并了解如何利用Ja

下一代分布式KV存储框架:RocksDB

下一代分布式KV存储框架:RocksDB

相关技术 3年前 (2021-03-24) 浏览: 1923 评论: 0

什么是RocksDB? RocksDB是一个用于快速存储的可嵌入持久键值存储。ROCKSDB也可以是客户机-服务器数据库的基础,但我们目前的重点是嵌入式工作负载。 RocksDB构建在LevelDB之上,可以在具有许多CPU核心的服务器上运行,可以高效地使用快速存储,支持IO绑定、内存中和一次写入的工作负载,并且可以灵活地进行创新。 性能如何比较? 我们对LevelDB进行了基准测试,发现它不适合

Micronaut是什么?

Micronaut是什么?

相关技术 3年前 (2021-03-23) 浏览: 523 评论: 0

Micronaut:现代的JVM微服务框架 一个现代的、基于JVM的、全栈框架,用于构建模块化的、易于测试的微服务应用程序micronaut.io Micronaut是Grails团队在2018年Greach大会上正式宣布的一个全新的全栈框架。它专注于模块化、最小的内存占用和启动时间,这使得它成为运行在AWS lambda或类似环境中的完美解决方案。用Java编写的服务器需要不到1秒的时间来启动8

Netflix开源GraphQL框架DGS介绍

Netflix开源GraphQL框架DGS介绍

相关技术 3年前 (2021-03-22) 浏览: 1848 评论: 0

Netflix开源了领域图形服务 Domain Graph Service (DGS)框架,DGS简化了框架的独立性和联合GraphQL服务的实现。 通过开源项目,希望对Java和GraphQL社区做出贡献,并向所有使用该框架的人学习和合作,使其变得更好。 DGS框架的主要功能包括: 基于注解的Spring-Boot编程模型 将查询测试编写为单元测试的测试框架 Gradle代码生成插件,可以从Gr

Java9 Flow-Reactive Stream

Java9 Flow-Reactive Stream

Java系列 3年前 (2021-03-21) 浏览: 991 评论: 0

Java9反应流允许我们实现非阻塞异步流处理。这是将反应式编程模型应用于核心java编程的一个重要步骤。 RxJava和Akka流是反应流的流行实现。现在Java9通过java.util.concurrent.Flow API。 Java 9 Reactive Streams 反应流是关于流的异步处理,所以应该有一个发布者和一个订阅者。发布者发布数据流,订阅者使用数据。 有时我们必须在发布者和订阅

内存级高性能分布式数据库Apache Ignite

内存级高性能分布式数据库Apache Ignite

相关技术 3年前 (2021-03-20) 浏览: 1468 评论: 0

介绍 Apache Ignite是一个开源的以内存为中心的分布式平台。我们可以将其用作数据库、缓存系统或内存中的数据处理。 该平台使用内存作为存储层,因此具有令人印象深刻的性能。简单地说,这是目前生产中使用的最快的原子数据处理平台之一。 官网地址:https://ignite.apache.org/ 安装 我们将要构建的应用程序的Maven依赖关系: <dependency> <

Java高性能缓存库Caffeine简介

Java高性能缓存库Caffeine简介

相关技术 3年前 (2021-03-19) 浏览: 758 评论: 0

介绍 在本文中,我们将看一看Caffeine—一个针对Java的高性能缓存库。 缓存和映射之间的一个基本区别是缓存淘汰/过期策略。 逐出策略(缓存淘汰策略)决定应在任何给定时间删除哪些对象。此策略直接影响缓存的命中率—缓存库的一个关键特性。 Caffeine使用Window TinyLfu逐出策略,它提供了一个接近最佳的命中率。 maven依赖 我们需要把Caffeine的依赖添加到我们项目的中p

WheelTimer哈希轮计时器介绍

WheelTimer哈希轮计时器介绍

相关技术 3年前 (2021-03-18) 浏览: 711 评论: 0

Hashed wheel timers介绍 哈希轮计时器是一种非常有趣的数据结构,在网络服务器中得到了广泛的应用。它们的低内存开销和合理的效率保证非常适合处理数百万个连接的服务器,每个连接都有一个计时器。我们不会花太多时间描述它们是如何工作的,相反,我们将研究一些实现,并尝试评估它们的相对权衡。 让我们快速回顾一下哈希轮计时器的基本数据结构: 基本的数据结构看起来像一个hashmap,带有单独的链

使用JCTools实现Java并发程序

使用JCTools实现Java并发程序

Java系列 3年前 (2021-03-17) 浏览: 1730 评论: 0

  概述 在本文中,我们将介绍JCTools(Java并发工具)库。 简单地说,这提供了许多适用于多线程环境的实用数据结构。 非阻塞算法 传统上,在可变共享状态下工作的多线程代码使用锁来确保数据一致性和发布(一个线程所做的更改对另一个线程可见)。 这种方法有许多缺点: 线程在试图获取锁时可能会被阻塞,在另一个线程的操作完成之前不会取得任何进展—这有效地防止了并行性 锁争用越重,JVM处理

ActiveMQ与RabbitMQ的区别

ActiveMQ与RabbitMQ的区别

相关技术 3年前 (2021-03-16) 浏览: 5110 评论: 0

ActiveMQ与RabbitMQ的区别 ActiveMQ与RabbitMQ是流行的开源消息代理。消息代理通过将定义的消息共享给各种应用程序来帮助计算机彼此交互,从而支持电信系统。消息代理帮助将发送方消息的格式转换为接收方标准的格式。RabbitMQ是AMQP协议的最佳实现。它执行一个代理体系结构,其中消息在发送到目的地之前在中心节点上排队。ActiveMQ工作在中间地带,使用代理和P2P架构进行

简单明了的介绍Kafka与消息队列的区别

简单明了的介绍Kafka与消息队列的区别

相关技术 3年前 (2021-03-15) 浏览: 940 评论: 0

本文的目的是让大家快速了解Kafka与消息队列的关系,以及为什么会考虑使用它。 Kafka是Linkedin最初开发的一项技术。简而言之,它有点像一个消息队列系统,有一些曲折,使它能够支持pub/sub,扩展到多个服务器,并重放消息。 当您想要采用反应式编程风格而不是命令式编程风格时,这些都是您需要考虑的问题。 命令式编程与反应式编程的区别 命令式编程是一种我们都开始使用的编程类型。有些事情发生了

响应式协议RSocket介绍

响应式协议RSocket介绍

相关技术 3年前 (2021-03-14) 浏览: 606 评论: 0

什么是RSocket? RSocket是一种用于分布式应用程序的二进制点对点通信协议。从这个意义上说,它提供了一种替代HTTP等其他协议的方法。 RSocket和其他协议之间的全面比较超出了本文的范围。相反,我们将关注RSocket的一个关键特性:它的交互模型。 RSocket提供了四种交互模型。考虑到这一点,我们将用一个例子来探讨每一个问题。 Maven依赖项 对于我们的示例,RSocket只需

Java并行流Parallel Streams介绍

Java并行流Parallel Streams介绍

Java系列 3年前 (2021-03-13) 浏览: 2798 评论: 0

Java并行流Parallel Streams是Java8和更高版本的一个特性,用于利用处理器的多个核心。通常,任何java代码都有一个处理流,在这里它是按顺序执行的。然而,通过使用并行流,我们可以将代码分成多个流,这些流在不同的内核上并行执行,最终的结果是各个结果的组合。然而,处理的顺序不在我们的控制之下。 因此,建议在以下情况下使用并行流:无论执行顺序如何,结果不受影响,一个元素的状态不影响另

从微服务到分布式系统:Java开发者生存指南

从微服务到分布式系统:Java开发者生存指南

微服务 3年前 (2021-03-12) 浏览: 353 评论: 0

迁移到微服务体系结构不仅仅是用HTTP请求替换方法调用的问题。欢迎来到容器、反应式的世界。 感觉微服务的大肆宣传正在慢慢落到实处。我们的行业开始意识到,根据微服务背后的架构范例,仅仅在现有组件之上公开一些HTTP接口是不容易创建系统的。我们似乎同意有必要对服务进行优化的基础设施、文化和组织变革,最后但并非最不重要的是这些架构的外部架构或编排。许多Java开发人员似乎仍在努力解决的问题是具体的系统架

intellij idea与Eclipse的区别

intellij idea与Eclipse的区别

相关技术 3年前 (2021-03-11) 浏览: 2403 评论: 0

IntelliJ Idea intellij idea是面向Java开发人员的功能最强大、最流行、功能最全的IDEA,于2001年向公众发布。它由Jet Brains公司开发和维护。它由apache2.0授权。 IntelliJ Idea有两个版本: Community 社区版:免费提供,主要用于Java和Android开发者。它支持大多数语言,如Java、Kotlin、Groovy、Clojur

Java8中的Lambda表达式

Java8中的Lambda表达式

Java系列 3年前 (2021-03-10) 浏览: 413 评论: 0

Lambda表达式基本上表示函数式接口的实例(具有单个抽象方法的接口称为函数接口)。一个例子是(java.lang.Runnable). lambda表达式实现唯一的抽象函数 关于函数式接口参考这篇文章:Java8中的函数式接口 lambda表达式是在java8中添加的,并提供以下功能。 允许将功能视为方法参数,或将代码视为数据。 可以不属于任何类而创建的函数。 lambda表达式可以像传递对象一

Java8中的函数式接口

Java8中的函数式接口

Java系列 3年前 (2021-03-09) 浏览: 424 评论: 0

函数式接口是只包含一个抽象方法的接口。它们只能展示一种功能。从Java8开始,可以使用lambda表达式来表示函数式接口的实例。函数式接口可以有任意数量的默认方法。Runnable、ActionListener和Comparable是函数接口的一些示例。 在Java8之前,我们必须创建匿名的内部类对象或实现这些接口。 // Java program to demonstrate functiona

登录

忘记密码 ?

切换登录

注册