1

1. java多线程的优缺点

 

1)、优点

资源利用率更好;程序设计在某些情况下更简单;程序响应更快

2)、缺点

a)设计更复杂。在多线程访问共享数据的时候,这部分代码需要特别的注意。线程之间的交互往

往非常复杂。不正确的线程同步产 生的错误非常难以被发现,并且难以重现来进行修复。

b)上下文切换的开销 ,当 CPU 从执行一个线程切换到执行另外一个线程的时候,它需要

先存储当前线程的本地的数据,程序 指针等,然后载入另一个线程的本地数据,程序指针

等,最后才开始执行。这种切换称为“上下文切 换”(“context switch”)。CPU 会在一

个上下文中执行一个线程,然后切换到另外一个上下文中执 行另外一个线程。上下文切换

并不廉价。如果没有必要,应该减少上下文切换的发生。

 

2.xml和json的区别

XML的优点

  • 格式统一,符合标准;

  • 容易与其他系统进行远程交互,数据共享比较方便。

XML的缺点

  • XML文件庞大,文件格式复杂,传输占带宽;

  • 服务器端和客户端都需要花费大量代码来解析XML,导致服务器端和客户端代码变得异常复杂且不易维护;

  • 客户端不同浏览器之间解析XML的方式不一致,需要重复编写很多代码;

  • 服务器端和客户端解析XML需要花费较多的资源和时间。

JSON的优点

  • 数据格式比较简单,易于读写,格式都是压缩的,占用带宽小;

  • 易于解析,客户端JavaScript可以简单的通过eval()进行JSON数据的读取;

  • 支持多种语言,包括ActionScript, C, C#, ColdFusion, Java, JavaScript, Perl, PHP, Python, Ruby等服务器端语言,便于服务器端的解析;

  • 因为JSON格式能直接为服务器端代码使用,大大简化了服务器端和客户端的代码开发量,且完成任务不变,并且易于维护。

JSON的缺点

  • 没有XML格式这么推广的深入人心和喜用广泛,没有XML那么通用性;

  • JSON格式目前在Web Service中推广还属于初级阶段。

 

3.Redis

优点

  • nosql数据库没有关联关系,数据结构简单,拓展表比较容易

  • nosql读取速度快,对较大数据处理快

适用场景

  • 数据高并发的读写

  • 海量数据的读写

  • 对扩展性要求高的数据

不适场景

  • 需要事务支持(非关系型数据库)

  • 基于sql结构化查询储存,关系复杂

使用场景

  • 配合关系型数据库做高速缓存 ,缓存高频次访问的数据,降低数据库io, 分布式架构,做session共享

  • 可以持久化特定数据。利用zset类型可以存储排行榜 利用list的自然时间排序存储最新n个数据

posted @ 2022-01-19 15:10  阳光真好的博客  阅读(43)  评论(0)    收藏  举报