两者之间的区别
https://blog.csdn.net/Forward__/article/details/79057820
区别和联系。
为什么前端用nginx,后端用tomact
https://www.cnblogs.com/iloverabbit/p/9496063.html
https://www.cnblogs.com/fortunel/articles/8745093.html
前端使用nginx是为了 前后端分离,代理服务器,并发能力强,负载均衡,将请求分发给tomact应用服务器。nginx一般是http服务器用来返回静态资源,tomact返回的动态资源转换为静态资源后交由http服务器返回客户端。
为什么nginx的动态解析能力没有java强?
nginx也可以返回动态资源,shell,python脚本的方式返回,适用于少量动态资源。
而应用服务器,则是一个应用执行的容器。它首先需要支持开发语言的 Runtime(对于 Tomcat 来说,就是 Java),保证应用能够在应用服务器上正常运行。其次,需要支持应用相关的规范,例如类库、安全方面的特性。对于 Tomcat 来说,就是需要提供 JSP/Sevlet 运行需要的标准类库、Interface 等。为了方便,应用服务器往往也会集成 HTTP Server 的功能,但是不如专业的 HTTP Server 那么强大,所以应用服务器往往是运行在 HTTP Server 的背后,执行应用,将动态的内容转化为静态的内容之后,通过 HTTP Server 分发到客户端。
Tomcat 运行在 JVM 之上,它和 HTTP 服务器一样,绑定IP地址并监听 TCP 端口,同时还包含以下指责:
管理 Servlet 程序的生命周期
将 URL 映射到指定的 Servlet 进行处理
与 Servlet 程序合作处理 HTTP 请求——根据HTTP请求生成 HttpServletResponse 对象并传递给 Servlet 进行处理,将 Servlet 中的 HttpServletResponse 对象生成的内容返回给浏览器。
tomcat是做java语言的动态解析。
https://blog.csdn.net/jack_xia_2018/article/details/83538623
tomcat在并发量小的时候处理能力要高于nginx,比如几百-上千的并发。
nginx + tomcat在并发量大的时候要高于tomcat。所以一台nginx对应几台tomcat。
nginx单机可以支持2-5w并发,集群更多。
tomcat支持并发200。
nginx
https://baijiahao.baidu.com/s?id=1612594086537323804&wfr=spider&for=pc
nginx为什么高并发?
多进程+epoll模型
epoll-》事件注册在红黑树上,有注册的事件发生会放在双链表中。异步非阻塞。
select io多路复用。轮询机制。
如果注册时间活跃度高,select合适,否则epoll
https://blog.csdn.net/u010412301/article/details/79353211
tomcat并发
阻塞式并发,一个进程内的线程是有固定规格的,局限于操作系统
https://www.cnblogs.com/rinack/p/10026536.html