[TiDB Usage Environment] Production Environment
[TiDB Version] v7.1.2
[Reproduction Path] Changed the database connection of the business’s Spring Boot application to TiDB on server 222. When opening the page, there is a noticeable issue with interface processing.
[Encountered Problem: Phenomenon and Impact] When opening the page and checking with F12, the interface initially shows all as “append,” then changes to processed status in batches of 2-3. Switching back to MySQL noticeably speeds things up.
[Resource Configuration] Three servers: 8 cores, 32GB RAM, 512GB storage (IP: 183); 16 cores, 64GB RAM, 2TB storage (IP: 222); 16 cores, 64GB RAM, 2TB storage (IP: 201). Disks are XFS with write speeds up to tens of thousands of IOPS, all deployed on a gigabit internal network. Each node has db, pd, and kv deployed. Server 201, as the main controller, has monitoring services deployed. Currently in the trial phase, real-time incremental synchronization of MySQL data from server 222 to server 201 is set up using DM.
[Attachment: Screenshot/Log/Monitoring]
It seems that there aren’t too many SQL queries, and the concurrency isn’t very high, but the SQL isn’t running very fast. Let’s optimize those top ones; they are already at the second level.
It is best not to place PD and TiKV on the same machine. If they are mixed, the memory parameters need to be adjusted.
If the stability issue is not resolved, testing is actually not very meaningful. No matter how high the performance, the system will crash, and these values will be meaningless. It is better to prioritize resolving the stability issue.
It’s normal. TiDB is only compatible with MySQL, but that doesn’t mean if MySQL runs without issues, TiDB will too. They are fundamentally different databases, and different databases may require different approaches to achieve optimal performance.
It won’t crash. The crash might have been due to using DM for data synchronization at the time, with a large volume of data being written, causing the crash.
However, it’s not just that using 3 machines isn’t faster than running on a single machine, it’s actually slower than a single machine. This is not normal. Is there any configuration that can increase concurrency?