首页 > 解决方案 > 消息少但多次的 Java 字符串搜索性能

问题描述

我有一个处理大量消息的服务(这些消息最多 100 个字符)。

要做的任务之一是检测消息是否包含字符串,该字符串始终相同。以下哪一项可以更快?正则表达式、预编译正则表达式、IndexOf、包含或任何其他?

标签: javastringperformance

解决方案


只需使用contains: 如果您是第一次看到该消息,则基本上您无能为力,因为您必须至少查看一次消息的内容。但是当你在寻找的时候,你可以同时检查它是否contains是特殊的关键字。

您可以(并且可能应该)做的是并行处理多条消息,因为您的任务在消息数量上似乎是令人尴尬的并行。


推荐阅读