请教单页系统的技术选型? 400 报错-问答-阿里云开发者社区-阿里云

开发者社区> 爱吃鱼的程序员> 正文

请教单页系统的技术选型? 400 报错

2020-06-05 12:10:35 140 1

请教单页系统的技术选型? 400 报错

计划做一个是类似webqq那样的单页系统(别误会,不是要做个像qq那样的IM),前端展示会更复杂,个性定制更强,并且是放到外网上。

项目特点,前端大量动态展示,单页web系统,大量ajax交互,dom交互,服务器端推送,状态维护。

初步框架选型:

jsf+seam+hibernate,推送部分没做过,还在考虑。

    理由:jsf+seam,状态的维护比较容易,ajax交互代码相对容易控制,自定义组件方便,conversation范围也很合适这类应用,richfaces或icefaces似乎支持推送。

    缺点:jsf对前端的dom展示和操作,灵活性欠佳,页面的大小不好控制。服务器端会维护大量状态,服务器负担较重,jsf的ajax请求包大小难控制,效率没手写ajax高,可能会影响并发效率,集群环境也不友好。(seam的conversation可是用session保存状态的)。

2.js+spring+hibernate。

   理由:前端dom展示会比较灵活,可控性强,页面可优化程度高,对ajax的请求服务器端负担相对低,server不保存状态,集群友好。

   缺点:js代码复杂,维护相对困难,由js保存状态,很可能陷入状态维护泥潭。js代码还是比java代码容易失控。

3.综合1+2

4.无框架。

如果确定状态由js维护,那怎个开发的精力就得在js上,服务器端代码相对简单。由server服务状态,整个服务端架构就不一样。

问题在于,状态由哪端保存嗫,亦或者平分伤害(平分伤害可能是最麻烦了,两头都得顾到呀)。

关于推送,是怎么做的呢,查过有websocket,轮循,还有点什么方法?

取消 提交回答
全部回答(1)
  • 爱吃鱼的程序员
    2020-06-05 12:10:53

    flex(as3.0) + java足够。######同感!######若是独立项目未必非得固定在JAVA平台,WEBSocket有IE在,选择有点痛苦。WEB IM其实可以考虑下Node.js  http://chat.nodejs.org/(我部署了个简单测试,挺方便的) ######

    引用来自“Rushmore”的答案

    若是独立项目未必非得固定在JAVA平台,WEBSocket有IE在,选择有点痛苦。WEB IM其实可以考虑下Node.js  http://chat.nodejs.org/(我部署了个简单测试,挺方便的) 

    主要是java是最熟悉的,其他可能虽然好,但不敢冒用,得仔细考虑。

    感谢你给的node.js参考,看了下,在ie下不好使啊。

    其实还可以用flash,但是考虑到现在不基于html+js的话,假若过渡到html5,前期开发投入的都白费了。

    这个项目关键就在于前端,其实类似webos了,只不过没这么强,dom交互和状态维护都麻烦。

    心理到是有点底了,jsf可以定义renderer,可以根据不同的client用不同的rendered。

    ###### @张金富 : 另外,jsf的renderer是可以根据Agent动态切换的,也就是可以同时存在html4,html5的renderer,不需要推倒原来的设计。######至少比flash -> html容易吧,当然可能我这么想,也有过渡设计之嫌。######html4改为html5的话,也是需要推倒重来吧?######

    这种项目将以你不要用jsf,jsf明显过重了,脚本生成部分不如不用框架来控制,我们有团队使用jsf,最后都在前端控制部分头疼,以至于最后都感慨:JAVA里面框架是浮云,OSC其实挺值得借鉴学习的是红薯轻量级的应用了JAVA的成熟,砍了Hibernate,使用Apache Commons, 砍了Struts自己做了个简化版熟悉的MVC。在Python下,则可以做到更轻量级处理,比如FAWS3(http://www.fapws.org/),基于epoll事件模型,自己简化定制后QPS可以到1.2W,Tomcat7的helloworld在6k左右,当然成熟度就靠自己来掌握了,不过出了问题也是非常清楚的,毕竟是自己的整的

    ######我第4点说的,无框架也在考虑范围,我得自己多做几个简单的demo试试。
    0 0
相关问答

40

回答

[@徐雷frank][¥20]什么是JAVA的平台无关性

大河人家 2018-10-29 23:55:20 144287浏览量 回答数 40

162

回答

惊喜翻倍:免费ECS+免费环境配置~!(ECS免费体验6个月活动3月31日结束)

豆妹 2014-10-29 17:52:21 223016浏览量 回答数 162

145

回答

【新手入门】云服务器linux使用手册

fanyue88888 2012-11-26 17:14:18 157090浏览量 回答数 145

8

回答

OceanBase 使用动画(持续更新)

mq4096 2019-02-20 17:16:36 333887浏览量 回答数 8

13

回答

[@饭娱咖啡][¥20]我想知道 Java 关于引用那一块的知识

心意乱 2018-10-31 18:44:12 142140浏览量 回答数 13

110

回答

OSS存储服务-客户端工具

newegg11 2012-05-17 15:37:18 292302浏览量 回答数 110

22

回答

爬虫数据管理【问答合集】

我是管理员 2018-08-10 16:37:41 146795浏览量 回答数 22

18

回答

阿里云开放端口权限

xcxx 2016-07-20 15:03:33 643152浏览量 回答数 18

31

回答

[@倚贤][¥20]刚学完html/css/js的新手学习servlet、jsp需要注意哪些问题?

弗洛伊德6 2018-10-27 21:52:43 145636浏览量 回答数 31

249

回答

阿里云LNAMP(Linux + Nginx + Apache + MySQL + PHP)环境一键安装脚本

云代维 2014-02-14 15:26:06 302613浏览量 回答数 249
+关注
爱吃鱼的程序员
https://developer.aliyun.com/profile/5yerqm5bn5yqg?spm=a2c6h.12873639.0.0.6eae304abcjaIB
2
文章
21569
问答
推荐问答
相关电子书
更多
文娱运维技术
立即下载
《SaaS模式云原生数据仓库应用场景实践》
立即下载
《看见新力量:二》电子书
立即下载