仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 535|回复: 10
打印 上一主题 下一主题

[学习教程] 发布一篇事件战略: 高并发战略-进修怎样为撑持高用户并发性的使用程序完成事件战略 ...

[复制链接]
柔情似水 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-18 11:04:37 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
首先第一点:jsp,servlet,javabean这些最基本的,嘿嘿,就算你是高手的话,在大行的企业级应用的话还是需要框架的,一个好的框架确实能构解决许多问题。
简介:事件战略系列文章的作者MarkRichards将会商怎样在Java™平台中为具有高吞吐量和高用户并发性需求的使用程序完成事件战略。了解怎样举行折中将匡助您确保高程度的数据完全性和分歧性,并削减随后开辟流程中的重构事情。
我在本系列的前几篇文章中所先容的API层和客户端编排战略事件战略是使用于年夜多半尺度业务使用程序的中心战略。它们复杂、牢靠、绝对易于完成,而且供应了最高程度的数据完全性和分歧性。但偶然,您大概必要减大事务的感化域以猎取吞吐量、改良功能并进步数据库的并发性。您怎样才干完成这些目标,同时仍旧保持高程度的数据完全性和分歧性呢?谜底是利用HighConcurrency事件战略。
HighConcurrency战略源自API层战略。API层战略固然十分坚实和牢靠,但它存在一些弱点。始终在挪用栈的最高层(API层)启动事件偶然会效力低下,出格是关于具有高用户吞吐量和高数据库并发性需求的使用程序。限定特定的营业需求,长工夫占用事件和长工夫锁建都会损耗过量资本。
与API层战略相似,HighConcurrency战略开释了客户机层的任何事件义务。可是,这还意味着,您只能经由过程客户机层挪用一次任何特定的逻辑事情单位(LUW)。HighConcurrency战略旨在减大事务的整体感化域,以便资本锁定的工夫更短,从而增添使用程序的吞吐量、并发性和功能。
经由过程利用此战略所猎取的优点在必定水平大将由您所利用的数据库和它所接纳的设置决意。一些数据库(好比说利用InnoDB引擎的Oracle和MySQL)不会保存读取锁,而其他数据库(好比没有SnapshotIsolationLevel的SQLServer)则与之相反。保存的锁越多,不管它们是共享仍是公用的,它们对数据库(和使用程序)的并发性、功能和吞吐量的影响就越年夜。
可是,猎取并在数据库中保存锁仅仅是高并发性义务的一个部分。并发性和吞吐量还与您开释锁的时间有关。不管您利用何种数据库,不用要地长工夫占用事件将更长地保存共享和公用锁。在高并发性下,这大概会形成数据库将锁级别从初级锁进步到页面级锁,而且在一些极度情形下,从页面级锁切换到表级锁。在多半情形下,您没法把持数据引擎用于选择什么时候晋级锁级其余启示办法。一些数据库(好比SQLServer)同意您禁用页面级锁,以期它不会从行级锁切换到表级锁。偶然,这类打赌有效,但年夜多半情形下,您都不会完成预期中的并发性改良。
底线是,在高数据库并发性的场景中,数据库锁定(共享或公用)的工夫越长,则越有大概呈现以下成绩:
数据库毗连耗尽,从而形成使用程序处于守候形态
由共享和公用锁酿成的逝世锁,从而形成功能较差和事件失利
从页面级锁晋级到表级锁
换句话说,使用程序在数据库中所处的工夫越长,使用程序能处置的并发性就越低。我所列出的任何成绩城市形成您的使用程序运转迟缓,而且将间接削减整体吞吐量和下降功能—和使用程序处置年夜型并发性用户负载的才能。
<p>
Java的桌面程序开发在java程序员里通常叫swing开发,主要用的swing包里的类开发的,也就是通常说的c/s架构开发
蒙在股里 该用户已被删除
沙发
发表于 2015-1-20 13:52:41 | 只看该作者
Java 编程语言的风格十分接近C、C++语言。
小女巫 该用户已被删除
板凳
发表于 2015-1-25 20:51:27 来自手机 | 只看该作者
你现在最缺的是实际的工作经验,而不是书本上那些凭空想出来的程序。
地板
发表于 2015-1-25 21:57:44 | 只看该作者
科学超级计算机、移动电话和互联网,同时拥有全球最大的开发者专业社群。
兰色精灵 该用户已被删除
5#
发表于 2015-2-1 15:55:27 | 只看该作者
任职于太阳微系统的詹姆斯·高斯林等人于1990年代初开发Java语言的雏形,最初被命名为Oak,目标设置在家用电器等小型系统的程序语言
柔情似水 该用户已被删除
6#
 楼主| 发表于 2015-2-2 21:48:18 | 只看该作者
我大二,Java也只学了一年,觉得还是看thinking in java好,有能力的话看英文原版(中文版翻的不怎么好),还能提高英文文档阅读能力。
活着的死人 该用户已被删除
7#
发表于 2015-2-8 07:35:50 | 只看该作者
象、泛型编程的特性,广泛应用于企业级Web应用开发和移动应用开发。
简单生活 该用户已被删除
8#
发表于 2015-2-24 23:28:46 | 只看该作者
是一种简化的C++语言 是一种安全的语言,具有阻绝计算机病毒传输的功能
谁可相欹 该用户已被删除
9#
发表于 2015-3-7 14:06:46 | 只看该作者
是一种使用者不需花费很多时间学习的语言
深爱那片海 该用户已被删除
10#
发表于 2015-3-15 07:29:14 | 只看该作者
学Java必读的两个开源程序就是Jive和Pet Store.。 Jive是国外一个非常著名的BBS程序,完全开放源码。论坛的设计采用了很多先进的技术,如Cache、用户认证、Filter、XML等,而且论坛完全屏蔽了对数据库的访问,可以很轻易的在不同数据库中移植。论坛还有方便的安装和管理程序,这是我们平时编程时容易忽略的一部份(中国程序员一般只注重编程的技术含量,却完全不考虑用户的感受,这就是我们与国外软件的差距所在)。
莫相离 该用户已被删除
11#
发表于 2015-3-21 20:21:43 | 只看该作者
还好,SUN提供了Javabean可以把你的JSP中的 Java代码封装起来,便于调用也便于重用。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-9-28 06:19

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表