社区
Java
帖子详情
架构选择的考量
gongqh21
2007-07-11 07:47:34
对一个并发量比较大的系统,比如说10万用户同时在线,选择什么样的架构呢?
MVC 框架+ spring + hibernate
或者
MVC框架 + spring + ibatis
或者
MVC框架 + EBB3.0
请有良好实践的人给出建议,并说明一下,您这样选择的理由?
...全文
601
20
打赏
收藏
架构选择的考量
对一个并发量比较大的系统,比如说10万用户同时在线,选择什么样的架构呢? MVC 框架+ spring + hibernate 或者 MVC框架 + spring + ibatis 或者 MVC框架 + EBB3.0 请有良好实践的人给出建议,并说明一下,您这样选择的理由?
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
20 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
whsxzh
2007-08-19
打赏
举报
回复
关键的是用好的持久层
持久层设计
背景:此方案设计的初衷是因为php的持久层成熟的框架不多,且大多过于繁复,学习和设计周期都太长
此方案虽为php大型网站的简化设计,但也适用于其他语言的持久层设计,比如java,.net的web应用
同时也给大家介绍数据持久层的原理和作用
如果谁按照我这个方案写了个封装的类或一套函数,希望和我交流,给俺参考参考你的源代码 :)
1:适用情况,在多台应用服务器,有一台数据库服务器的情况下为了提高查询数据的效率,避免重复,频繁的查询数据库给数据库服务器造成负载过大而使用的持久层内存数据方案。
2.主要的参数:
1)TimeOutMiniutes: 内存数据过期时间,根据数据库负载的程度和数据的及时性的要求,设置过多久内存数据才需要从数据库中刷新数据。
举例:如果是访问量很大,应用服务器很多,应当设置较长的时间,以减少数据库服务器的负载
如果即使性要求较高,访问量不是很大,可以设置时间短一点,保持数据比较新
2)MaxRecordsCount:最大返回记录数,通过该参数,限制返回记录集的大小,对于记录集要求过大的数据,应当分页查询
3.访问层次设计
1)封装所有查询,使得查询都经过固定的对象发送
function SqlQuery(SQL)//
/*
根据SQL检查是否在缓存中存在要求的数据
如果存在且在有效期内,则返回数据
过了有效期则从数据库中刷新数据,然后返回
不存在则建立内存数据,然后返回。
*/
2)function SqlQueryAfterChange(SQL,PK_name,PK_value)
/*
强制刷新最新数据
仅仅用于单条记录的查询,一般用于对数据更新或插入后的反馈
*/
3)ClearTimeOutData()
/*
清除过期的数据
*/
4.实现方法
1)内存数据的存储方式,数组或哈希表
2)主键(key),SQL
3)运行位置:当然是应用服务器了
4)内存数据的变量类型:应当是全局性变量
deng1234
2007-08-18
打赏
举报
回复
jsp+javabean+ajax+oracle
在写数据库的时候用存储过程,
前台用quartz做任务生成静态shtml页面
查询建索引,使用lucene全文搜索
niko7
2007-08-18
打赏
举报
回复
并发跟规模是两回事,一个hmtl大家下载也可以造成很大并发量。
看了并发还要看你的规模,规模和技术路线决定可维护程度。
可维护性和可扩展性是值得关注的,相信你的规模不会太小,经济投入也应该不是问题,此外,解决这类问题不是靠一台机器的,要从集群和负载均衡方面考虑。
所以我推荐ejb。
neucloud
2007-08-17
打赏
举报
回复
学习
catiga
2007-08-17
打赏
举报
回复
ssh对于大并发量情况不行,请问有测试吗?
lxy218
2007-08-17
打赏
举报
回复
并发1000算大吗?用PHP写的效率也还算可以
http://www.objecttutor.com/object_tutor.rar
beyondtkl
2007-08-14
打赏
举报
回复
关注 & 学习。
struts2
2007-08-14
打赏
举报
回复
个人认为
并发大不重要,重要的是规模有多大
规模小,可以使用Servlet + JDBC 性能最好,维护也不成问题
规模大,即必须牺牲部分的性能换取可维护性,
Struts 1.X + Spring + iBatis比较好
为什么不使用Hibernate呢?主要是考虑程序开发过程中的灵活性。
不过ibatis和hibernate的性能哪个更好,我真的还不知道,呵呵
不过要是节省cost的话建议楼上说的LAMP(Linux + Apache + MySQL + PHP)
livan1038
2007-08-08
打赏
举报
回复
同意三樓的說法,对于复杂数据检索,hibernate效率是很慢的,因为如果用hibernate,就要把这些数据都要映射成Java对象,这个对JVM的内存是个很大的挑战.有條件的話MVC框架 + EJB3.0应该是最好的
lemonfamily
2007-08-08
打赏
举报
回复
想必如此大的在线量,不是门户网站也是娱乐网站了。这种网站系统的的设计是比较讲究的,不同于传统的企业信息系统。
huanzhugege
2007-08-02
打赏
举报
回复
《J2EE开发全程实录 》这本书对这个问题进行了比较好的解释,推荐阅读,这里有在线阅读版:
http://book.csdn.net/bookfiles/427/
liuzi123
2007-07-25
打赏
举报
回复
呵呵,接分
sturdypine
2007-07-16
打赏
举报
回复
google:springMVC VS struts
现在有种新的持久层,结合hibernate和ibatis的思想。。
chen4765654
2007-07-15
打赏
举报
回复
同意楼上,对于复杂数据检索,hibernate效率是很慢的,如果熟悉sql推荐用ibatis
yht1985
2007-07-15
打赏
举报
回复
EJB现在用的还多吗
kaoloveting
2007-07-15
打赏
举报
回复
听课
GODProbe
2007-07-15
打赏
举报
回复
对于大并发访问,ssh架构不敢恭维。
spring + structs 上百就不大行了。
sureyor
2007-07-12
打赏
举报
回复
越简单的东西其实越好用,当然要达到高的并发量,光凭系统本身是不行的,还需要很强的硬件支持和系统部署策略,当然系统的优化,DB的优化也是必不可少的,架构性的东西反而显得比较弱
sureyor
2007-07-12
打赏
举报
回复
PHP+MySql
好多大型社区,论坛就是这种架构,比如sohu
King_liubin
2007-07-12
打赏
举报
回复
MVC框架 + EJB3.0应该是最好的,但EJB容器的费用很高啊,而且现在EJB3.0技术不是特别的成熟,会的人不多,就算有会的,一般也没有实战经验。
MVC 框架+ spring + hibernate
或者
MVC框架 + spring + ibatis
至于选择hibernate还是ibatis,我觉得还是看是否有大数据量的操作,如果有而且很多,建议选用ibatis,因为如果用hibernate,就要把这些数据都要映射成Java对象,这个对JVM的内存是个很大的挑战
Java企业系统
架构
选择
考量
现在Java领域各种技术百花齐放,名目繁多,如何根据自己的需求
选择
这些框架呢?特别对于初学者,在学习
选择
方向上也非常迷茫,如何有针对性的根据自己项目特点进行学习就变的更加重要。
境外PE投资
架构
的税务
考量
.pdf
境外PE投资
架构
的税务
考量
.pdf
拟上市公司董秘任前培训-0189-国内上市
架构
搭建的税收
考量
.pdf
拟上市公司董秘任前培训-0189-国内上市
架构
搭建的税收
考量
.pdf
为什么
选择
微服务
架构
? 微服务
架构
的10个核心优势 总结
为什么
选择
微服务
架构
? 微服务
架构
的10个核心优势 总结为什么
选择
微服务
架构
? 微服务
架构
的10个核心优势 总结为什么
选择
微服务
架构
? 微服务
架构
的10个核心优势 总结为什么
选择
微服务
架构
? 微服务
架构
的10个核心优势 ...
互联网服务
架构
设计漫谈(一)—设计
考量
点总览
本文着重介绍在互联网应用服务器端的
架构
设计中需要关注的设计
考量
点,提供一个总览性认知。首先我们需要知道:不同类型的应用、不同用户规模和阶段的应用在
架构
设计的
考量
点都是有差异的,
架构
设计的挑战以及侧重点...
Java
50,530
社区成员
85,610
社区内容
发帖
与我相关
我的任务
Java
Java相关技术讨论
复制链接
扫一扫
分享
社区描述
Java相关技术讨论
java
spring boot
spring cloud
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章