高性能编程指南

     

Java中使用大页面提升性能 - kstefanj

2532 6K

大页面是一种减少处理器TLB缓存压力的技术。这些缓存用于加快将虚拟地址转换为物理内存地址的时间。大多数体系结构支持多种页面大小,通常基页大小为 4 KB。对于使用大量内存的应用程序,例如大型 Java.

JVM上高性能数据格式库包Apache Arrow入门和架构介绍 – Gkatziouras

4471 12K
Apache Arrow是是各种大数据工具(包括BigQuery)使用的一种流行格式,它是平面和分层数据的存储格式。它是一种加快应用程序内存密集型。数据处理和数据科学领域中的常用库: Apache A.

最新测试:Java在gRPC吞吐量性能上胜过C ++,Rust,C#和Golang

2295 1

基准测试点击标题。测试基于Intel(R) Xeon(R) CPU E5-1650 v3 @ 3.50GHz, 32G RAM,在一个CPU 两个CPU和三个CPU情况下测试Java都是冠军.这些基准.

低延迟系统请选择Java而不是C++ - stackoverflow

1970 4K

在开发低延迟的软件系统时,人们普遍认为,除了C ++之外,您使用其他任何语言是疯狂的,因为其他任何语言都具有很高的延迟。但是,我在这里是要说服您使用相反的、违反直觉的、几乎是异端的概念:在软件系统中实.

Ruby 3.0.0发布:Ruby3将比Ruby2快3倍

3109 1 3K
从2015年开始,我们朝着Ruby 3进行了艰苦的开发,其目标是性能、并发性和类型三方面提升。Matz特别提到性能,“ Ruby3将比Ruby2快3倍”,也就是Ruby 3x3。借助Optcarrot.

NATS消息传递与REST性能比较 | Vinsguru

2518 1

在本教程中,向您展示NATS消息传递与基于REST的微服务的性能。NATS是高性能云本机消息传递服务器。NATS可以帮助现代分布式系统体系结构中的服务发现,负载平衡,微服务间通信等。我们这里的主要目标.

gRPC与REST性能比较:gRPC双向流性能提升是巨大的 | Vinsguru

4335 3

是GRPC真的快于REST?让我们同时开发基于gRPC和REST的微服务,并进行gRPC与REST  性能比较。我们这里的主要目标是提出一个应用程序–具有2种不同的实现(REST和gRPC),以实现完.

为什么选择Java语言用作高频交易?-Jad

1812 4 4K

在高频交易的世界中,自动化应用程序每天处理数亿个市场信号,并在全球各个交易所发送成千上万的订单。为了保持竞争力,反应时间必须始终保持在微秒内,特别是在异常高峰(例如“黑天鹅”事件)期间。在典型的体系结.

Facebook现在大部分流量都使用QUIC和HTTP/3

2593 6K

我们用QUIC代替了互联网已经使用了数十年的事实上的协议,QUIC是我们为优化网络协议而采取的最新,最彻底的步骤,旨在为使用我们服务的人们创造更好的体验。今天,我们超过75%的互联网流量使用QUIC和.

量子计算的未来:面临的挑战竟然来自传统的电气工程 - eetimes

1460 3K

Quantum Machines公司为量子处理器的控制和操作提供了经典硬件和软件的结合。该公司称其为量子编排平台。QOP是用于编程的软件界面。Quantum Machines是一家以色列初创公司,由B.

无服务器召唤师:我们已经进入了无服务器超级计算机的时代 - David Wells

1525 1 3K

当今高性能计算挑战性的问题之一是:大多数软件都设计为在单台计算机上运行,​​并且并行化可能会被限定于本地可用的计算机核心或线程数量。想象一个应用程序在一台机器上通常运行需要1个小时……如果在一个全新环.

如何在Java中制作自己的基准测试? - Ben Weidig

1695 7K

制作有用的基准测试很难,但是有一些工具和模式可以帮助您。几乎每个开发人员都知道Donald Knuth在1974年提出的“ 过早的优化是万恶之源 ” 。但是我们应该如何知道什么值得优化呢?从那时起,我.

深入研究Spring Cloud负载平衡器 – Piotr

6284 5 13K
Spring Cloud当前即将发生大的变化。虽然几乎所有的Spring Cloud Netflix组件都将在下一版本中删除,但最大的变化似乎是将Ribbon客户端替换为Spring Cloud Lo.

什么是单主数据库复制? -Vlad Mihalcea

2285 1 2K

本文解释什么是单主数据库复制,以及如何使用它来提高应用程序可用性和扩展只读事务。数据库服务器是企业系统的核心部分,如果发生故障,服务可用性可能会受到影响。如果数据库服务器在单个服务器上运行,那么我们将.

抢拍神器的关键:优化提升Java线程局部随机数ThreadLocalRandom高并发技巧 - alidg

2135 13K

在本文中,探讨将Java随机数算法优化为高吞吐量和低延迟的各种技巧。技巧包括更有效的对象分配,更有效的内存访问,消除不必要的间接访问以及机械同情。(对于分布式环境的抢拍很重要)Java 7引入了,Th.

取代传统log4j/SLF4J日志库,Zerolog是JVM更快地超低开销日志记录 - codeburst

1806 1 14K
本文将探讨Zerolog(缩写为Zlg)—一种对性能敏感的Java应用程序的超低开销日志记录外观。Zlg的目标是双重的-超低开销,可抑制日志记录。换句话说,在禁用该级别的日志记录时调用日志记录方法的成.

Java线程池newCachedThreadPool()与newFixedThreadPool()区别 | Baeldung

2876 3K

当涉及线程池实现时,Java标准库提供了很多选择。在这些实现中,固定线程池和缓存线程池非常普遍。缓存线程池newCachedThreadPoolExecutors.newCachedThreadPoo.

spacejam/sled:使用Rust语言编写的嵌入式数据库

4824

sled是一个嵌入式数据库,可利用现代的无锁索引和闪存友好型存储功能。使用Rust语言编写,Rust号称最好的数据库语言。特点: 类似于并发线程安全的BTreeMap 可序列化的多键和多树交互事务,涉.

幽默:软件工业的吐槽和醒悟 - tonsky.me

3215 8 6K

我已经编程了15年了。最近,我们行业对效率,简单性和卓越性的缺乏开始真正引起我的注意,以至于我对自己的职业和IT感到沮丧。(banq注:有一个笑话,一位高血压三高患者复诊,内科医生问他一天喝几两酒?他.

沃达丰希腊公司用Quarkus代替Spring Boot - quarkus

4245 2 3K

沃达丰希腊公司是希腊第二大电信公司,为超过600万订户提供固定和无线电话服务。沃达丰希腊分公司在本地和云上运行许多应用程序,因此云资源消耗成本对其极为重要。其体系结构的一个组成部分是数字体验层(DXL.

基于队列的负载均衡(Queue based load leveling)

1478 20K
问题云中的许多解决方案都涉及运行调用服务的任务。在这种环境中,如果服务遭受间歇性重负载,则可能导致性能或可靠性问题。如果同时运行的多个任务使用相同的服务,则可能难以预测在任何给定时间点服务可能经受的请.

性能竟然再提升一倍!Redis的一个实例有多快?- keydb.dev

3026 2
Redis被称为最快的数据库之一。但是如果删除了一些限制,那么独立实例的速度会变得多快?我们经常听说Redis可能会在受到CPU性能限制之前受限于网络或内存。根据您的设置,它可以是任何这些。在本文中,.

比Java NIO的ByteBuffer性能更快的Chronicle-Bytes!

1723 7K
如图,红色的Bytes比蓝色的ByteBuffer在序列化等方面性能要高得多!使用Bytes设置具有远程过程调用(RPC)和API的整个框架很容易,它支持写入和重放事件。这是一个简短的例子,其中MyP.

幽默:服务架构的两难与矛盾之处

923

服务架构有时是两极分化的。我们半数的行业正在尝试使用用户级TCP堆栈来降低每一盎司的延迟(提升网络性能),而另一半人则使用Ruby&Kubernetes和覆盖网络(overlay network)来降.

从数据库读取许多实体,JAVA 8流或反应流哪个有更好的性能?

1021

吞吐量性能取决于底层实现。在返回Stream之前将所有行收集到List的查询可能比从ResultSet中按元素读取要慢。Reactive目前会有更多开销,因此较小的结果会产生更高的总查询持续时间。当有.

在JDK11上GraalVM的JavaScript性能是Nashorn的两倍

1 9694 2 2K

GraalVM是一个运行时平台,它支持Java和其他基于Java字节码的语言,但也支持其他语言,如JavaScript,Ruby,Python或LLVM。我们坚信,正如我们目前所知,它是语言虚拟机的未.

生产中的Vertx - Teemo Tech Blog

4638 34K

Vert.x是一个非常高性能的库,用于实现低延迟服务。它的多反应堆模式使得在几毫秒内每秒处理许多请求成为可能。使用实时出价,我们每秒收到数千个请求,我们必须在不到100毫秒的时间内回答。这就是我们选择.

高性能无服务器工程的6个最佳实践

806 1

当你写下你的前几个lambdas时,性能是你最不想要的,你最关心的是权限,安全性,身份和访问管理(IAM)角色和触发器,这些都是为了进行“hello world”试用之后,让您的第一个无服务器能够部署.

Spring Boot的并发编程

7454 4 2K

使用Spring Boot构建服务时,我们必须处理并发!通常有这样的误解:由于使用Servlet,而Servlet背后是一个线程池支持,线程池会为每个请求分配的新线程,请求之间不存在冲突,因此无需考虑.

高性能软件法则

1255 2

学习如何编写高性能的代码是困难的。这里有一些简单的法律 :1.程序语言 <<程序员的性能意识,编程语言并不重要,重要的是程序员必须意识了解语言的执行情况和相关库包,所有主流编程语言和它们的标准库都已.