龙腾四海365的专栏

日常学习总结、错误记录

servlet线程安全问题

servlet线程安全问题


(1)为什么说servlet会存在线程安全问题

        a.容器在默认情况下,只会创建一个servlet实例(对象)。

        b.容器收到一个请求,就会启动一个线程来处理。

        如果有多个请求同时访问某个servlet,就会有多个线程调用同一个servlet实例,就有可能产生线程安全问题(比如,这些线程要修改servlet的属性)。


    (2)如何解决

        a,加锁

        使用synchronized对有可能产生线程安全问题的代码块加锁。

        注:

            加锁会影响性能。

        b,让一个servlet实现SingleThreadModel接口。(了解)

        容器会为这样的servlet(实现了SingleThreadModel接口)创建多个实例(一个线程一个实例)。

        注:

            因为有可能会产生过多的servlet实例,所以,在比较大型的应用当中,尽量少用。


    (3)jmeter压力测试工具

        可以模拟同时向服务器发多个请求。。。                                        


            

阅读更多
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u011637069/article/details/49906173
个人分类: servlet&jsp
上一篇文件上传
下一篇servlet小结
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

关闭
关闭