Administrator
发布于 2023-04-18 / 8 阅读
0
0

随笔-8

linux系统简单了解

目录结构:

  • bin (binaries)存放二进制可执行文件

  • sbin (super user binaries)存放二进制可执行文件,只有root才能访问

  • etc (etcetera)存放系统配置文件

  • usr (unix shared resources)用于存放共享的系统资源

  • home 存放用户文件的根目录

  • root 超级用户目录

  • dev (devices)用于存放设备文件

  • lib (library)存放跟文件系统中的程序运行所需要的共享库及内核模块

  • mnt (mount)系统管理员安装临时文件系统的安装点

  • boot 存放用于系统引导时使用的各种文件

  • tmp (temporary)用于存放各种临时文件

  • var (variable)用于存放运行时需要改变数据的文件

常用命令:

常用流程图

  • spring生命周期
  • tcp握手挥手
  • 线程池执行
  • JVM内存结构
  • Java内存模型
  • springMVC执行流程
  • JDBC执行流程
  • spring cloud组件架构
  • dubbo调用

线程顺序执行的8种方法

  1. 使用线程的join方法
  2. 使用主线程的join方法
  3. 使用线程的wait方法
  4. 使用线程的线程池方法
  5. 使用线程的Condition(条件变量)方法
  6. 使用线程的CountDownLatch(倒计数)方法
  7. 使用线程的CyclicBarrier(回环栅栏)方法
  8. 使用线程的Semaphore(信号量)方法

分库分表思路

数据拆分主要分为垂直拆分和水平拆分。垂直拆分比较简单,也就是本来一个数据库,数据量大之后,从业务角度进行拆分多个库。水平拆分的概念,是同一个业务数据量大之后,进行水平拆分,一般是单表数据量过大拆分多表。

分库分表方案中有常用的方案,hash取模和range范围方案。分库分表方案最主要就是路由算法,把路由的key按照指定的算法进行路由存放。

  • hash取模方案——优点:分布均匀,不会有同一时间段记录访问的热点问题;缺点:不易扩容、迁移数据

  • range范围方案——range方案也就是以范围进行拆分数据。比如0-1000w存第一张表,1000w-2000w存第二张表,以此类推。优点:容易扩容,无需做数据迁移;缺点:容易产生热点问题。

 


评论