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


    环境准备

    准备两台服务器环境,配置相同,分别安装Centos7,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的性能是随着配置不同,逞现不同性能,这是的性能是指当前配置下的性能。

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

    Docker mysql 性能

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

    结尾

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

     

     

  • 相关阅读:
    uniapp跳转H5外部链接
    AndroidStudio使用superSUAPK ROOT(失败)
    Vue2(十二):Vuex环境搭建、Vuex工作原理、几个配置项、多组件共享数据、Vuex模块化
    docker更新正在运行中的容器内存
    喜马拉雅项目调整
    (web前端网页制作课作业)使用HTML+CSS制作非物质文化遗产专题网页设计与实现
    【AOP系列】5.错误处理
    第九章 泛型编程
    学习 go-admin 框架(2)
    哈夫曼树哈夫曼编码知识点
  • 原文地址:https://www.cnblogs.com/netcore3/p/17215527.html