谈谈我对java接口方面多线程的理解
1、为什么大量请求到一个接口会出现并发/多线程?
之前一直不理解为什么会有多线程,为什么大批量请求时会出现多线程的情况?
查的博客/教学视频,又都是直接new Thread来测试的。这就让我搞不懂了我写的接口又没用多线程,为什么大量请求的时候会有多线程?
后来问了AI了解了请求的概念才知道,多线程的并不是自己写的java接口,而是web服务器。
2、web服务为什么会有多线程,他多线程和我的程序有什么关系?流程如下:
注:以get请求为例
1、浏览器请求一个java接口
2、web服务(tomcat)收到url,创建线程/或用之前的线程,调用java的接口
3、执行java程序
总结:也就是说在浏览器同一时间发送大量请求,那么tomcat要开线程来分别
调用请求的接口 -- 这个过程称为多线程(web服务器的)如图:
3、接口安全问题
既然理解了什么时请求时的多线程,那么就可以跟一些大神的博客/视频,学习
怎么解决线程安全的问题了。
4、写在最后
这个只是个人的理解,若有不对的地方请指正