由Java_Web应用到单例和并发

在高并发环境中,使用单例的优势

  • 一般来说,在高并发环境中,单例带来最大的好处,就是可以减少不必要对象的创建,可以在很大的程度上提高性能,同时可以大大的降低Java GC的频率,提高性能的同时带来更好的用户体验。
  • 单例既然是一种模式,也就只是一中开发经验或者说良好的编程习惯。因此不要滥用单例模式,KISS。

在高并发环境中,使用单例会引发的问题

  • 可能会给编写健壮的并发程序,带来无法想象的复杂度,甚至不可能完成。
  • 可能会极大的降低并发性,成为应用的性能瓶颈

在高并发环境中,到底该怎样判断是否使用单例

  • 一般来说对于无状态对象,我们可以选择使用单例,来减少对象的创建,进而提高性能。
  • 对于那些有状态的对象,例如POJO,一般情况下,不要使用单例模式。

你可能感兴趣的:(由Java_Web应用到单例和并发)