java数据库层面大数据量处理方式(面试)

今天想写这篇文章的原因是我在没有进现在公司(目前就职的公司)之前一直很想了解的如何处理数据量大的问题,这里说的是实际的业务数据量大的时候如何处理,你们想知道的java对高并发的处理,不是我这里说的,当然我稍微写下自己的高并发的理解大概罗列下锁涉及到技术

1:Nginx 分发到各个服务器上

2:接下来到服务器端,通过dubbo实现查找服务

3:使用zokkeeper 进行服务注册

4:对数据库的操作,使用mycat实现数据库路由

5:数据库层面使用分库分表

这四点不展开写,这五个部分连起来就可以搭建一个分布式的系统,这个只是主要流程,还需要考虑很多其他方面的,我暂时只能了解这些,这五个方面每个里面都有大量的知识点,需要一个长时间的积累,我想对这些有实际的操作过,应该就可以做个架构师了,这个也是我后面努力的方向,说多了,回到标题想写的东西

当业务数据量大的时候,我们要采取

  • 业务数据分库保存(分库的路由规则,根据具体业务来定,可以根据hash ,)
  • 每个库的数据量大的话,采用转表操作
  • 转表后数据量还是很大,采用建立索引

使用上面的三种方式我的理解大概就可以处理java层面的数据量大的问题!总结的比较片面,就我目前所掌握知识做的总结,也许还有其他更好的方法,还有一些点我没有想到和考虑到的,同学可以留言一起讨论!

你可能感兴趣的:(常见问题)