tomcat web服务器怎么理解?
首先我们得知道,服务器和浏览器网络间的传输都是基于HPPT协议,说白了就是服务器会向浏览器发送个HTML文件(现在你这么理解就可以,),通过浏览器解析成页面,服务器主要就是接收浏览器发送过来的请求,然后根据请求的信息来调用相应的业务逻辑层,然后业务逻辑层会调用dao层把数据从数据库,或者你的XML文件等等拿出来,把数据放入servlet中(这个servlet并不是你写的servlet,它是由jsp来生成的servelt《根据标签动态生成的》),(动态页面说白了就是会根据你查询到信息来生成页面(不同的信息就会生成不一样的页面))然后就通过outwrite方法把数据直接发送到浏览器,浏览器得到数据,并显示给用户看,这就是服务器要做的工作(如果你想可看清服务器的工作机制,建议你去看服务器后台生成的文件,file://X:\apache-tomcat-7011\work\Catalina\某个项目)
而tomcat 是一个开源的网站服务器,开源应该是指把tomcat整个工程发布出来,这个没必要看,能看懂的人太少了。
今天小编教大家如何将自己的项目war包部署在tomcat中。
普通方式部署
这里首先是普通方式的部署,就是把我们的项目war包直接放入tomcat的webapps文件夹下,如下图:
然后在tomcat的bin文件夹下按照下中红色箭头指示依次点击shutdown,和startup,启动tomcat,如下图:
下图中红色箭头指示位置的Server startup in 69991 ms,表示tomcat服务器启动成功,然后上面可以看到有报错,是由于小编这里的项目是需要连接数据库的,这里数据库的地址不对而导致的,大家可以忽略,如下图:
回到tomcat的webapps文件夹中可以看到项目的war包已经解压了一个对应的文件夹,在解压的项目文件夹中修改对应的数据库配置文件,如下图:
然后按照下图中红色箭头指示步骤重启tomcat服务器,如下图:
下图中表示tomcat服务器启动成功,并且项目也没有报什么错误,如下图:
然后打开浏览器,输入地址、端口号以及对应项目名称就可以访问了,如下图:
修改配置文件方式部署
有的时候我们希望访问项目的时候直接输入地址以及端口号就可以访问,这个时候就需要配置一下tomcat的配置文件了,在tomcat的conf文件夹下有一个server文件,如下图:
打开server文件,按照下图指示位置添加Context docBase="项目名称" path="" debug="0" reloadable="false",如下图:
然后重新启动tomcat服务器,如下图:
修改配置文件之后就可以直接通过地址、端口号来直接访问项目了,如下图:
修改项目war包名称部署
不想通过地址、端口号、项目名称的方式访问还有另外一种方式,首先把之前修改server文件中的Context行给注释掉,如下图:
然后回到tomcat的webapps文件夹下将对应的项目文件夹删除,只剩下对应的war包,如下图:
将项目对应的war包修改名称为ROOT,如下图:
启动tomcat服务器,看到报错信息是由于数据库配置问题,tomcat服务器正常启动,如下图:
回到tomcat的webapp文件夹下,看到解压的ROOT文件夹,到ROOT文件夹下修改对应的数据库配置,如下图:
再次启动tomcat服务器,服务器启动成功,如下图:
打开浏览器,可以直接通过地址加端口号访问项目,如下图:
优点如下:
1、兼有可扩展性和安全性。假如单位时间内访问请求数急剧增加,可以用相对较低的费用增加前端的能力。
2、比较容易扩展。由于是通过在这台功能强大的服务器上运行的单个servlet容器,实际上也就不需要考虑session状态在分布式环境下的维护这类复杂的问题。
3、台后端服务器在外界不可以访问,网上的黑客只能访问前端的web服务器,不能直接访问后端的应用服务器,这就提高了安全性。但这并不意味着黑客们不能通过网络浏览器进行其它形式的攻击。
这种类型的站点的主要特点是每一个页面都可能是动态生成的,但这些数据中主要部分还是静态的(比如,各类图像GIF、JPG、PNG,流式媒体等)。想象以下某个站点采用了多个用于负载均衡的硬件设备,这些设备后端连结一组服务器,这些服务器可能是一组相对廉价的运行apache的linux服务器簇。这组位于前端的服务器簇将仅占总访问请求的10%的真正需要调用servlet的访问请求发送给后段的系统,后锻系统可以是一台Sun的E3500,或是IBM的AS/400,在这个后端的系统上运行着Tomcat,可能还包括企业级数据库。
0条评论