比较小的问题

包装类

image.png

新建线程的方法

1.继承thread,重写run方法

//创建线程类
public class ThreadDemo extends Thread {
    //重写run()方法
    @Override
    public void run() {
        for(int i = 0;i<1000;i++) {
            System.out.println("Thread::"+i);
        }
    }
}

/***********************************************************************/
//调用线程

//创建线程对象
ThreadDemo t1 = new ThreadDemo();

//启动线程
t1.start();

2实现Runnable接口
在runnable接口实现中,重写run方法,再将runnable实现类传入Thread类中

//实现Runnable 接口创建线程类 RThread
public class RThread implements Runnable {
    @Override
    //重写run()方法
    public void run() {
        for(int i = 0;i<1000;i++) {
            System.out.println("Thread::"+i);
        }
    }
}

/***********************************************************************/
//调用线程

//创建RThread 类的对象 rThread
RThread rThread = new RThread();

//创建Thread类对象,并把rThread当成参数传入,相当于对rThread进行了封装。
Thread t2 = new Thread(rThread);

//通过start()方法启动线程
t2.start();

3.利用线程池创建
在execute方法类中,new runnable,并重写run方法

public class EThread {
    public static void main(String[] args) {
        //创建线程池
        ExecutorService threadPool = Executors.newFixedThreadPool(10);
        for(int i = 0;i<10;i++) {
            //调用execute()方法创建线程
            //采用匿名内部类的方法,创建Runnable对象,并重写run()方法
            threadPool.execute(new Runnable() {
                @Override
                public void run() {
                    System.out.println(Thread.currentThread().getName());   
                }
            });
        }
    }
}

最左匹配原则

遇到范围匹配就会停止


image.png

消息队列的作用

能够使大量的请求不直接落在数据库上,而且能够异步请求数据库,不用一直阻塞


image.png

分表

垂直分表
耦合度低的单独分为一个表,一个微服务弄一个表


image.png

水平分表
按照逻辑分,比如按照时间范围来划分表


image.png

你可能感兴趣的:(比较小的问题)