dayup2 2012-10-26 13:49
浏览 300
已采纳

javaWeb项目优化问题

javaWeb项目的大小是否影响着项目运行的效率?
比如:两个项目基本功能一样,但是一个引入大量JAR包或其他文件。我想问下,是不是相对项目体积小的效率更高些。作为BS系统,项目运行影响他效率的(除代码优化和数据库,硬件,网络)还有那些?与CS系统又有哪些区别?
不是特别清楚,可能提的问题也有出处?望予以解答!!

  • 写回答

2条回答 默认 最新

  • blogzhoubo 2012-10-26 15:39
    关注

    引入大量jar包说明业务系统的需求相对丰富,没有无缘无故导入的jar包,而且java是个动态加载的系统,只有需要某个class的时候才会去加载它,所以jar包本身不会影响系统的性能。

    如果是两个功能相似的系统:
    系统1:尽可能利用开源的jar包
    系统2:尽可能不利用开源的jar包,很多通用的功能都自己实现

    那么,系统1的做法更好,性能会更高,代码的效率和可维护性更好

    web系统的效率和访问量有很大关系,随着并发request数量的不断增加,系统的性能会遇到瓶颈,甚至会直接挂掉,这时候就需要重新考虑系统的整体架构。比如:提高硬件配置,增加主机,负载均衡,缓存等等。与这些要素相比,你提到的jar包的数量,代码量这些其实是次要的因素。

    至于CS系统和BS系统的区别,大致能想到这些:
    1.BS系统不需要安装和升级客户端程序,只要有浏览器,能联网就行。
    CS系统需要每个终端安装和升级具体的客户端程序。

    2.如果支持多种终端(windows,ios,Android),BS结构可以不需要考虑客户端程序。而CS结构的话,每个平台都要单独开发客户端程序。

    3.BS结构的客户端界面因为要依托于浏览器,所以对界面的支持不如CS系统,虽然现在出现了很多富客户端的UI以及HTML5,但还是达不到CS的本地UI。

    4.CS系统的运行速度高于BS的浏览器客户端。因为BS结构的系统,所有的画面展现都要通过网络来传输大量的HTTP数据包。而CS系统只需要传输服务端返回的数据,数据量会少很多。还有就是BS系统的画面展现要通过浏览器对HTML文进行解释分析后再执行,所以客户端的运算速度赶不上CS本地客户端的代码。

    5.CS和BS其实是各自有各自的适用范围,对于功能丰富,信息量较大,信息类型较丰富(文字,图片,声音,视频等等)的网站系统,当然要用BS系统。对于那些功能单一,以运算为主的系统,可以考虑采用CS系统。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 #MATLAB仿真#车辆换道路径规划
  • ¥15 java 操作 elasticsearch 8.1 实现 索引的重建
  • ¥15 数据可视化Python
  • ¥15 要给毕业设计添加扫码登录的功能!!有偿
  • ¥15 kafka 分区副本增加会导致消息丢失或者不可用吗?
  • ¥15 微信公众号自制会员卡没有收款渠道啊
  • ¥100 Jenkins自动化部署—悬赏100元
  • ¥15 关于#python#的问题:求帮写python代码
  • ¥20 MATLAB画图图形出现上下震荡的线条
  • ¥15 关于#windows#的问题:怎么用WIN 11系统的电脑 克隆WIN NT3.51-4.0系统的硬盘