新手关于web应用和web线程的非常不理解?

guangguang1984 2010-11-23 10:22:23
新手,刚开始学习,我现在把eclipse中的每个工程export一个war包,然后放到服务器上的tomcat的指定webapps文件夹,但是我不理解,看了java代码中并没有起线程,两个问题:

1. tomcat是种web容器,所谓web容器,说白了就是提供了一种从浏览器到服务器之间的通信机制,如传递request消息等

2.以前学纯c的,我的每个模块都会创建一个线程(因为需要实时维护一个机制),而上述一个web app部署到cat里后,到底有没有转化为一个线程,如果没转化,那就说明web应用没有时刻运行的必要;我觉得应该是有转化的,只是不知道是什么把cat中的war包转化为一个时刻在跑的线程? 并且感觉jsp页面、javabean、数据库存储操作 都不需要实施操作,到底是哪各环节需要线程呢?

谢谢大家给我指点迷津。。。。。
...全文
105 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
guangguang1984 2010-11-26
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 yaojinlin20090608 的回复:]
容器替你管。但是自己也得适当考虑线程安全问题
[/Quote]
要考虑线程安全就使用同步块Synchronized吗 感觉类似信号量操作
yaojinlin20090608 2010-11-25
  • 打赏
  • 举报
回复
容器替你管。但是自己也得适当考虑线程安全问题
guangguang1984 2010-11-25
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 new_bird_0001 的回复:]
http://wenku.baidu.com/view/e8e17b17866fb84ae45c8d90.html
[/Quote]
文章中的severlet容器指得就是web容器吗?
guangguang1984 2010-11-23
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 liaojianbiao 的回复:]
Tomcat应用中的线程都是由Tomcat容器管理的。Tomcat有实现了线程池。他会创建好每个模块的线程交由线程池去管理。Tomcat根据客户端的请求字符决定调用哪个线程,然后到线程池取取得相应的线程。
[/Quote]

3楼的意思我有如下的理解:

1.一个线程对应一种web应用(一个war包):
即Tomcat会为每一个放到其指定的webapps文件夹中的war包创建一个线程,该线程一直在服务器上的Tomcat线程池里跑,而cat根据客户端的请求来发送相应的消息给对应的线程进行处理?
2.一个线程对应一个收到一次用户请求而产生的一次web服务:
即webapps文件夹中的war包只是在服务器上的一些服务或称为web应用,而Tomcat会为每一个用户的请求创建一个severlet线程,再有该severlet线程来调用war包中的应用来进行处理,然后severlet线程会将处理结果通过Tomcat返回到客户端

请大家给小弟指点一下,哪个理解是对的或都不对,谢谢啦,详细一点的最好。
liaojianbiao 2010-11-23
  • 打赏
  • 举报
回复
Tomcat应用中的线程都是由Tomcat容器管理的。Tomcat有实现了线程池。他会创建好每个模块的线程交由线程池去管理。Tomcat根据客户端的请求字符决定调用哪个线程,然后到线程池取取得相应的线程。
guangguang1984 2010-11-23
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 svview 的回复:]
JVM
[/Quote]
楼上太抽象了吧,能不能详细一点呢? 虽然可能是菜鸟问题。
new_bird_0001 2010-11-23
  • 打赏
  • 举报
回复
http://wenku.baidu.com/view/e8e17b17866fb84ae45c8d90.html

81,092

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧