Linux系统下祼机安装mysql8.0和docker mysql 8.0 性能差异对比~

环境准备

准备两台服务器环境,配置相同,分别安装Centos7,mysql8.0,docker mysql 8.0

Linux系统下祼机安装mysql8.0和docker mysql 8.0 性能差异对比~

Linux系统下祼机安装mysql8.0和docker mysql 8.0 性能差异对比~

Linux系统下祼机安装mysql8.0和docker mysql 8.0 性能差异对比~

准备测试代码

    public class Chat     {         public static long Count = 0;         public Chat() {         }         public static void AddChat()         {             var context = new IM.Data.MySQLContext();             while (true)             {                 var chat = new IM.Data.ChatRecordTb                 {                     UserId = "F62E97C5-98E0-4473-B933-08D7787382C",                     UserHeadPortrait = "http://www.baidu.com/2023-3-13/952824521354142234544.jpg",                     UserName = "测试用户",                     TextType = 1,                     ChatText = "*****************很长的文字**********************",                     FileSrc = "",                     ThumbnailSrc = "",                     CreateTime = DateTime.Now                 };                 context.ChatRecordTb.Add(chat);                 context.SaveChanges();                 context.ChatRecordTb.Entry(chat).State = EntityState.Detached;                  //+1                 Interlocked.Increment(ref Count);             }         }     }

使用ORM框架(EF)进行数据库操作,ORM部分就不展示,在控制台进行调用

//多线程添加,10个线程 for (var i = 0; i < 10; i++) {     var task = new Task(ConsoleApp1.Chat.AddChat);     task.Start(); }  while (true) {     var startCount = ConsoleApp1.Chat.Count;     System.Threading.Thread.Sleep(10000);     var endCount = ConsoleApp1.Chat.Count;     Console.WriteLine($"10秒一共写入{endCount - startCount}行条数据,总行数:{endCount}"); }

祼机mysql性能

mysql的性能是随着配置不同,逞现不同性能,这是的性能是指当前配置下的性能。

Linux系统下祼机安装mysql8.0和docker mysql 8.0 性能差异对比~

Linux系统下祼机安装mysql8.0和docker mysql 8.0 性能差异对比~

Linux系统下祼机安装mysql8.0和docker mysql 8.0 性能差异对比~

Linux系统下祼机安装mysql8.0和docker mysql 8.0 性能差异对比~

应该是硬盘IO达到瓶颈,线程多与少己经没不能引起写入性能的大性幅提升,平均性能大概在2000条/S

Docker mysql 性能

Linux系统下祼机安装mysql8.0和docker mysql 8.0 性能差异对比~

Linux系统下祼机安装mysql8.0和docker mysql 8.0 性能差异对比~

Linux系统下祼机安装mysql8.0和docker mysql 8.0 性能差异对比~

Linux系统下祼机安装mysql8.0和docker mysql 8.0 性能差异对比~

相同的代码在docker下的mysql 相比之下似乎稳定很多, 无论是控制台数据统计,ESXI的数据统计,都可以看到docker下的mysql 很顺滑,同样CPU消耗明显略高,数据库写入速度大概为2500条/S

结尾

两者的mysql版本相同均为:8.0.32,相比之下感觉dokcer下写入更稳定,性能之间似乎没有什么明显的区别。

 

 

发表评论

相关文章