Bringing together the Apache Cassandra experts from the community and DataStax.

Want to learn? Have a question? Want to share your expertise? You are in the right place!

Not sure where to begin? Getting Started

 

question

pramod.dba31_92912 avatar image
pramod.dba31_92912 asked ·

Why am I seeing high CPU usage?

Hi,

I am seeing high CPU usage multiple times.

Errors from log:

ERROR [MessagingService-Incoming-/1.1.x.x] 2020-11-09 08:31:30,785  MessagingService.java:809 - java.util.concurrent.RejectedExecutionException while receiving WRITES.WRITE from /1.1.x.x, caused by: null

Please help.

performance
10 |1000 characters needed characters left characters exceeded

Up to 8 attachments (including images) can be used with a maximum of 1.0 MiB each and 10.0 MiB total.

1 Answer

Erick Ramirez avatar image
Erick Ramirez answered ·

In my experience, the most common cause of high CPU utilisation on nodes is JVM garbage collection.

This is usually a result of:

  • nodes being overloaded,
  • disks not able to keep up with IO requests,
  • or both.

You've provided very limited info but my best guess is that the commitlog disk is overloaded with writes because the node is overloaded.

Our general recommendation is to use SSDs on the nodes and where practical, to place the data and commitlog directories on separate disks (unless nodes have NVMe SSDs) to make sure that reads are not competing for the same IO as writes.

If your cluster has hit its maximum capacity, you need to review the size of your cluster and consider adding more nodes to increase throughput. Cheers!

Share
10 |1000 characters needed characters left characters exceeded

Up to 8 attachments (including images) can be used with a maximum of 1.0 MiB each and 10.0 MiB total.