NIO非堵塞IO教程

     

Gain 是一个完全用 Go 编写的高性能 io_uring Web框架

514

Gain 是一个完全用 Go 编写的高性能网络框架。它使用 io_uring——一种新的 Linux 异步 I/O API,由 Facebook 的 Jens Axboe 创建。目前仅支持 Linux.

bbeaupain/hella-http:基于nio_uring的Hella快速Java HTTP服务器库

638 1 2K

hella-http是一个用于 Java 的 hella 快速 HTTP 库,它使用nio_uring进行 I/O。它具有非常小的代码库,是当今可用于 Java 的最具扩展性的 HTTP 服务器之一。.

FusionAuth/java-http:开源非阻塞 NIO Java HTTP Server

919 2K

该项目的目标是在不使用任何库的情况下,用纯 Java 构建功能齐全的 HTTP 服务器和客户端。客户端和服务器将使用非阻塞 NIO 以提供可能的最高性能。要将此库添加到您的项目中,您可以在 Maven.

Java NIO和NIO.2有什么区别? | baeldung

1429 1 5K

在本教程中,我们将介绍 Java IO 功能以及它们在不同 Java 版本中的变化。首先,我们将介绍初始 Java 版本中的java.io包。接下来,我们将回顾Java 1.4 中引入的java.ni.

使用Java NIO 和 NIO2实现文件输入/输出

1556 1 10K

当您需要快速移动大量文件数据或套接字数据时,请使用这些低级 Java API。本文是关于在文件输入/输出方面实现高性能的。高性能不仅意味着快速执行 I/O 操作,而且还消耗(或占用)JVM 和其他地方.

在反应式编程中使用BlockHound检查调用链的堵塞 - frankel

1009 2K

反应式Reactive编程是基于异步消息传递。不同的框架/库在它们的方法上会有所不同:例如,在 Project Reactor 中,API 调用不是阻塞请求-响应调用,而是对发布者将在未来交付的消息的.

在响应式SpringBoot中使用WebCLient避免堵塞? - Randal

2311 10K

响应式编程的关键是做出反应。你不会说“现在就做”,而是说“什么时候做”。“何时”适用于您有工作要做的时间。工作以事件的形式出现:消息总线上的消息或 HTTP 请求。首先,我应该解释响应式编程很重要的原.

JDK 17的外部存储器访问和Nio通道异步化 – Inside.java

951

当前Java平台的NIO通道仅支持同步通道上的I / O操作,这些通道具有在受限内存段上的字节缓冲区视图。尽管有一定的局限性,但这反映了一种实用的API约束解决方案,同时推动了外部存储器访问API本身.

Java16的Unix域Socket教程 - nipafx

1731 8K

Java 16的套接字Socket/服务器套接字通道API可以使用Unix域套接字在同一主机上进行更快,更安全的进程间通信。Java的SocketChannel/ ServerSocketChanne.

Netty支持Http3版本发布

1756

一周前我们刚刚宣布http3编解码器的初始版本之后,今天很高兴宣布下一个版本。此版本修复了各种错误,现在完全通过了h3spec http3测试。除了错误修复,我们还升级到netty 4.1.60.Fi.

Netty启动对HTTP/3的孵化器支持

3563 10K

经过一个多月的开发,我们终于可以发布我们的第一个孵化器版本Netty / Incubator / Codec / Quic。为了能够在不“影响”网络核心的情况下开发令人兴奋的新功能,我们决定在“孵化器.

如何在Java中查找可用端口? - Baeldung

1852 2K

在本快速教程中,我们将研究如何检查特定的端口状态以及如何使用自动分配的端口状态。我们将研究如何使用普通的Java和Spring框架完成此操作。我们还将研究其他一些服务器实现,例如嵌入式Tomcat和J.

Java UDP服务器和客户端源码 -javarevisited

1483 7K

Java中的DatagramPacket和DatagramSocket类支持在应用程序级别利用UDP套接字通信。让我们用Java编写一个简单的服务器和一个客户端,它们使用UDP套接字通信相互通信。在此.

如何在Java中使用文件操作API: java.nio.file.Path?- marcobehler

2543 1 23K

本文有关学习如何在Java中使用文件:从读取和写入文件到观察目录和使用内存文件系统。Java有两个文件API。 原始java.io.File API,自Java 1.0(1996)起可用。 java..

Spring WebFlux的明显陷阱 - ŁukaszKyć

7010 2 4K

几个月前,我们开始了一个新项目。我们的目标是设计一个可以处理许多并发连接的微服务。我们预测该应用程序将花费大量时间等待多个并行I / O操作。理想的体系结构解决方案似乎使用了非阻塞方法。经过简短的调查.

Vert.x的介绍!这是目前最快的Java框架

20911 4 5K

如果您最近使用Google搜索“最佳网络框架”,您可能会偶然发现Techempower基准测试,其中排名超过300个框架。在那里你可能已经注意到Vert.x是排名最高的之一。Vert.x是一个多语言W.

异步编程:协作性多任务处理

1993 2K

如何确保同时处理多个请求,我们可以使用线程或进程进行多任务处理实现,但还有一个选择 - 协作性多任务处理。这个选项是最困难的。在这里我们说操作系统当然很酷,它有调度程序/计划程序,它可以处理进程,线程.

用Java构建反应式REST API - Kalpa Senanayake

2195 10K

本文的重点是使用Java构建RESTFul API,同时受益于反应式编程模型。但与大多数关于此主题的其他文章不同,本文不会急于直接编写代码。它将指导您完成此编程范例的主干,以便您对其有充分的了解。然后.

RSocket将在spring框架5.2中提供

3328

RSocket是一种用于多路复用流的协议,在交互模型方面可与gRPC相媲美,但与传输无关(TCP,WebSockte,HTTP / 2,Aeron)以及协议级支持Reactive Streams背压,.

Ratpack可快速开发异步响应式的Java Web应用

8 8651 8 2K
Ratpack是一款类似Node.JS但是更强的基于JVM多线程多核的Java Web框架,可以快速有效地开发基于Http异步的高性能Web应用,它使用Netty作为其事件驱动引擎。Ratpack主要.

线程等待两种方法的唤醒的效率比较

3 2035

一直认为无锁比有锁快,性能更高,可是以下这个线程等待测试结果,却跟自己想得不一样:public class CallResult { private volatile boolean noFi.

java-dirty是一个只追加数据的数据存储

1491
java-dirty是一个轻量的只追加 append-only的数据存储,该存储用于记录保存事件,适合EventSourcing的存储。存储介质是文件,使用的Java NIO MappedByteBu.

非堵塞的几个Web框架性能测试

1330

有好事者将Tomcat7的Servlet-BIO与Servlet-NIO以及Node.js、Node.js-sync和Scala的Spray几个框架的性能测试,测试结果显示这几个框架的响应时间都差不多.

Haskell进入生产(Hasura.io)

3147 1

Hasura.io使用haskell作为核心编程语言建立微服务平台,并分享了一些实践经验,如默认同步异步使用GHC等。详见:From Zero to HIPster (Haskell In Produ.

SimpleReact: 基于Java 8简单的FRP Fluent API

1 2744 3

SimpleReact来自AOL的一个小型的支持并发的库包,其直接基于Java 8的CompletableFuture, JDK函数接口和Streams API构建,它的Fluent API能够提供解.

H2O是性能超过Nginx的开源Http服务器

4399 1
H2O是一个优化支持Http 1.x和Http2的HTTP服务器,可以作为单独服务器或库包。Github项目地址基于非常高效的HTTP1分析器PicoHTTPPaser构建的H2O在性能上远超过Ngi.

Tumblr推出开源微服务框架Colossus

1 3740 2 2K
Tumblr面临的最大挑战是如何正确地组织和扩展持续增长的基础设施作为一个平台。微服务架构已经是非常有前途的一个策略。 微服务这些都是将小而专的应用封装设计成一个组件,而不是一个个单独的应用程序,其中.

asynchttpclient 使用的一点疑问

1762 2

最近在使用apache的asynchttpclient 过程中,发现如果需要发送大量的http请求,1000+甚至更多,asynchttpclient 就会抛出异常:Request cannot be.

为什么要使用Node.js

2 7732 5
这是一篇几个月前转发量特别大的博文:Node.js闪耀点是:它是一个基于WebSocket推送技术的实时web应用程序。为什么说这和革命性有关?在过去的20多年内无状态Web都是基于无状态的请求 - .

Play框架与NodeJS的简单比较

3785 2 5K

Play框架是使用Iteratees, Enumerators, 和 Enumeratees之类抽象以一种函数式编程方式进行流处理,如Comet, chunked responses分块响应, Web.