Java nginx是Java后台开发最常用最入门的技术吗?

新农商网 全部 1018

Java nginx是Java后台开发最常用最入门的技术吗?

回复

共9条回复 我来回复
  • 虫虫安全
    虫虫安全
    这个人很懒,什么都没有留下~
    评论

    没有java nginx这样一个叫法。nginx是最常用的web服务器和反向代理服务器。但是不能解析java,也不是什么java框架。和nginx一类的有个web服务器和java应用服务器java Servlet容器Apache Tomcat。

    强大的web服务器nginx

    nginx是有毛子著名网站rambler.ru为自己量身定做的一个web服务器,第一版0.1.0于2004年发布。开源许可协议为bsd协议。发布后由于其稳定,高性能,强大单位综合功能性使其迅速占领市场,目前是占有量最大web服务器,反向代理和web缓存服务器之一。

    也可以作为java容器的前端或cdn部分,通过反向代理到后端java服务器。

    java应用服务器tomat

    tomcat在虫虫回答和文章中多次提到过,是有apache基金会下的一款免费开源的web服务器和java应用服务器。是世界上使用最多的java应用服务器,包括世界上最繁忙的系统,天朝12306中国铁路在线购票系统的后端java应用服务器也是tomcat。

    tomcat目前维护三个系列tomcat9,tomcat8和tomcat7。最新版本分别为9.0.7,8.0.51以及7.0.86,还在用5和6的同学该升级了。

    tomcat目录结构

    tomcat内部功能解析

    java开发框架

    最后说下java开发框架,java开发框架多不胜数,就web开发方面最主要的就数SSH了。SSH里面用的最流行最广泛则要数spring框架了。关于这个框架请关注虫虫,看我的文章《spring框架,spring boot spring io的历史和渊源》。

    2018-04-20 09:44:27 0条评论
  • LoveBugs
    LoveBugs
    这个人很懒,什么都没有留下~
    评论

    Java是一门编程语言,nginx是一个反向代理服务器,二者都是目前比较流行的web技术,不过是相互独立的两个技术,架构上没有必然关联。

    我们公司正好这两年在做web应用前后端分离,前端采用的是H5和Vuejs,反向代理服务器用的nginx,后台服务主要用Java来写,说下我的经验吧。

    nginx

    nginx是目前比较流行的前端反向代理服务器,具有高性能,稳定,轻量级和兼容性好的特点。特别是对于目前比较流行的微服务架构,nginx从软件层面用很低成本解决了业务转发和负载均衡的问题。说和Java没有必然联系,是因为后台服务端的编写可以用任何语言,是不影响nginx转发的。

    Java框架

    你所说的Java后台开发,应该是指服务端开发,这方面目前成熟的架构很多,入门的话,推荐先学习最流行的几个框架,比如spring,springboot,mybatis等,学会了搭个基本的web服务没问题。

    然后就是前后端分离问题,如果还用传统形式JSP形式,那么用Tomcat服务器就行了,不需要nginx。如果前后端分离,服务器端只提供Rest接口,那除了服务器端要用Tomcat发布外,前端就需要用到nginx的web发布和反向代理功能了。

    2018-04-20 13:55:09 0条评论
  • 流麦士
    流麦士
    这个人很懒,什么都没有留下~
    评论

    JAVA的web容器

    JAVA项目目前主要是作为B/S架构的web项目为主,那么就用到了所谓的web容器(其实可以看作是Server服务器),在java的开发测试中,最常用的容器为tomcat或者jetty,这两款容器实现了J2EE的基本常用标准,在大型企业应用中weblogic应用的比较多,现在随着微服务的推广发展和云容器的成熟,微服务一般以tomcat作为web容器。

    JAVA框架

    框架其实就是一套工具系统,屏蔽了很多基础的复杂的代码实现,使用框架可以减轻项目实现的难度和成本。各种方向的框架都较多,性能也有所差别,目前最流行的还是以spring生态为主的框架,这里不列举。

    nginx

    ngxin是一套高性能的web服务器,一般作为反向代理来用。它可以是整个系统的入口,通过代理内部java的web容器发布的服务而向外提供服务。类似的容器还有apache server等。许多的网站都是由nginx向外统一提供服务。


    笔者微言,如有见解一起探讨~

    2019-05-21 14:34:41 0条评论
  • 光聊科技
    光聊科技
    这个人很懒,什么都没有留下~
    评论

    01 结论

    先说结论,你要研究Java的框架解决工作问题,我推荐你学习SpringBoot和Mybatis,比较简单易学;而且如果是一个并不太复杂的应用,这俩基本上也够用了(如果前后端不分离,这种情况下其实不需要Nginx也可以;模板引擎可以使用Thymeleaf,或者在有JSP的前提下使用JSP),服务器的话推荐最常使用的Tomcat;

    当然,现在流行的还是微服务,不过开发起来稍微复杂些。微服务框架常见的有SpringCloud和Dubbo,推荐使用开发难度较小的Spring Cloud。Spring cloud也不是什么新的框架,它其实是一系列工具的集合,基于的还是Spring Boot。

    02 Nginx

    然后再说说我理解的Nginx,Nginx仅仅是一个反向代理服务器,跟Java本身是没有关系的,但如果你们使用前后端分离进行开发,Nginx还是很有必要使用的。它的反向代理可以解决最头疼的跨域问题,还支持高并发和负载均衡。

    但Nginx的高并发只是说它本身能同时将将很多前端的请求进行处理和转发到真正的服务器(以下简称服务器),网站的性能最终还是要服务器的性能来决定。如果有必要,我习惯于在项目中使用下图所示的架构:

    这个架构的思想在于,由于业务数据的大小通常小于页面静态资源(js、图片等),且NodeJS在处理静态资源的服务能力要强于Tomcat很多,所以采用NodeJS来作静态资源服务器,使用Java来做业务处理服务器使,然后用Nginx将静态资源的请求和业务数据请求分开转发,用以获得较大程度的性能提升。

    以上就是我的回答,欢迎大家在评论区讨论使用Nginx时遇到的坑。

    2019-04-24 20:01:40 0条评论
  • 流麦士
    流麦士
    这个人很懒,什么都没有留下~
    评论

    JAVA的web容器

    JAVA项目目前主要是作为B/S架构的web项目为主,那么就用到了所谓的web容器(其实可以看作是Server服务器),在java的开发测试中,最常用的容器为tomcat或者jetty,这两款容器实现了J2EE的基本常用标准,在大型企业应用中weblogic应用的比较多,现在随着微服务的推广发展和云容器的成熟,微服务一般以tomcat作为web容器。

    JAVA框架

    框架其实就是一套工具系统,屏蔽了很多基础的复杂的代码实现,使用框架可以减轻项目实现的难度和成本。各种方向的框架都较多,性能也有所差别,目前最流行的还是以spring生态为主的框架,这里不列举。

    nginx

    ngxin是一套高性能的web服务器,一般作为反向代理来用。它可以是整个系统的入口,通过代理内部java的web容器发布的服务而向外提供服务。类似的容器还有apache server等。许多的网站都是由nginx向外统一提供服务。

    笔者微言,如有见解一起探讨~

    2019-05-21 14:34:41 0条评论
  • 机器学习之路
    机器学习之路
    这个人很懒,什么都没有留下~
    评论

    谢邀

    nginx是一个服务器,它一般是使用在高发等场景来提高服务器的性能。如果你想学习Java后台开发,建议学习一些后台开发框架spring,springboot等。我以前学习Java后台开发的时候,是学的ssh框架,不过现在用这个框架的不多了。

    2018-04-20 09:24:00 0条评论
  • java攻城狮爱好者
    java攻城狮爱好者
    这个人很懒,什么都没有留下~
    评论

    答案是比较常用,绝不是最入门的技术,nginx和Java并没有绝对关系,它主要2个作用: 反向代理和负载均衡。反向代理的作用就是通过各种不同的配置拦截请求进行转发。负载均衡的作用就是针对应用配置集群提高其可用性,当其中一台宕机,应用依然可以正常运行,经常需要使用memcache配置session共享。

    题主若是急着找工作可以先学一些现在流行的常用的框架,比如spring全家桶(包含spring,springboot,分布式框springcloud,spring data jpa等),springmvc,mybatis,也可以了解一些现在不太流行的struts,hibernate框架,前端学一些jQuery,angularjs,vue.js,基本就可以出去找工作了。

    当然题主若想走的更远,基础才是重点,对基础的理解越深入越好。

    2018-04-20 20:58:10 0条评论
  • 老顾聊技术
    老顾聊技术
    这个人很懒,什么都没有留下~
    评论

    nginx应该是项目中必须要用到的,不管什么语言,他的主要作用就是作为访问入口,做反向代理;从而实现负载均衡。

    初学者推荐要学习一下基础的nginx知识;一开始不需要学的太深入,先知道大概的意思就行了,等开发有一定经验后,再回头深入了解,这样对你更有帮助。

    2019-03-22 14:51:18 0条评论
  • 测试领域专家
    测试领域专家
    这个人很懒,什么都没有留下~
    评论

    题主应该是对负载均衡有一定了解,但是对Java领域不太熟悉。

    从题主的截图判断,应该是想问Java的后台开发框架哪些能做服务治理和分布式开发。现在用的比较多的是SpringCloud和Dubbo。建议题主直接学习SpringCloud。

    2019-02-28 17:08:48 0条评论