深入理解大型项目服务器部署与数据库优化策略

我们先了解一下大概的数据量:

复杂的数据库语句:Mysql每秒大概可以执行100-200个

一台服务器就可以做到每秒几十个并发(配置:4核8G)

一万块钱的服务器的配置:16核32g内存+4T硬盘

如果是微型的服务,我们是不需要其他操作的,但是如果我们公司想开发一个大型的项目,那么将所有的内容都部署到一台服务器上是不太现实的,这个时候就需要虚拟化组件将这些服务器统一组织起来

虚拟化:很多台变为一台    一台变为很多台

通常情况下,一般会将多台服务器合并之后,再进行分割,这个再次分割的大小通常为4核8g。

为什么4核8g:我们的项目是使用Java语言的,对于jvm来说需要定时的进行垃圾回收,垃圾回收时会产生卡顿。如果空间过大,一次垃圾回收会特别的慢,空间小的话,触发频繁,回收快一些。

对于单台服务器:

条件:每秒几百次访问

每秒访问的次数不是一定的,存在流量高峰时段,每秒访问次数可达几百万,那么每天可以几十到几百万次访问。

这意味着数据库存储量很大,前端浏览器加载页面也需要下载,大量访问会产生带宽不足,所以为了解决这个问题,采取了前后端分离

长久的使用,一个表中的数据量很多,最先出现的问题是,我们进行磁盘io读取数据库数据时,需要几秒的时间,此时我们虽然仍可以使用该表,但是读取时间过长,所以我们此时挑出一列作为索引文件列以及地址形成b树

这样读取的速度变快了,但是数据量过大时,索引文件也能达到几百兆,这样也有可能送不过去,所以我们仍然需要限制数据量,在五百万条左右,所以我们需要对数据库分表。

此时数据库暂时解决了,但是如果只有一台服务器,负担五十个表,也是非常困难的,所以我们可以将这五十个表分到不同的服务器上,这就是分库分表思想。

相关推荐

  1. 深入理解服务器进程管理优化

    2024-04-13 02:00:02       60 阅读
  2. 优化大型语言模型表现的策略方法

    2024-04-13 02:00:02       48 阅读
  3. 深入探索 MongoDB:高级索引解析优化策略

    2024-04-13 02:00:02       26 阅读
  4. 深入解析:MySQL连接超时问题排查优化策略

    2024-04-13 02:00:02       34 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-04-13 02:00:02       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-04-13 02:00:02       101 阅读
  3. 在Django里面运行非项目文件

    2024-04-13 02:00:02       82 阅读
  4. Python语言-面向对象

    2024-04-13 02:00:02       91 阅读

热门阅读

  1. 朝花夕拾 - 写在 29

    2024-04-13 02:00:02       34 阅读
  2. js的包装类型

    2024-04-13 02:00:02       33 阅读
  3. SpringFramework实战指南(八)

    2024-04-13 02:00:02       32 阅读
  4. springboot项目如何配置跨域?

    2024-04-13 02:00:02       33 阅读
  5. 关于pr的第一次听写的笔记

    2024-04-13 02:00:02       37 阅读
  6. 数据结构-树状数组

    2024-04-13 02:00:02       35 阅读
  7. 【蓝桥杯-牛客冲刺题单】

    2024-04-13 02:00:02       49 阅读
  8. 动态规划(Dynamic Programming)详解

    2024-04-13 02:00:02       31 阅读
  9. iframe嵌入Vue页面实现免登方法

    2024-04-13 02:00:02       35 阅读
  10. 什么是感知器 怎么学习感知器

    2024-04-13 02:00:02       35 阅读
  11. 2、ipex-llm(原bigdl-llm)应用聊天

    2024-04-13 02:00:02       39 阅读