- 浏览: 192886 次
- 性别:
- 来自: 杭州
最新评论
-
happylouis:
...
我的理解--关于jmx -
whmwg:
...
我的理解--关于jmx -
neusoft_jerry:
哥,你几年后再回来看看这里你翻译过的东西,你自己能看懂吗?
blazeds通道、端点配置 -
zhongliangjun1:
写得非常好,受益良多!
AQS:ReentrantLock源码分析 -
luckywnj:
赞一个,jmx刚开始起步
我的理解--关于jmx
文章列表
Admin UIs
http://www.mongodb.org/display/DOCS/Admin+UIs
发现有个eclipse下的插件,不错
敲命令行比较慢,记不住
http://www.mongodb.org/display/DOCS/mongo+-+The+Interactive+Shell
性能监控的命令
Monitoring and Diagnostics
http://www.mongodb.org/display/DOCS/Monitoring+and+Diagnostics
Java 理论与实践: 流行的原子
Java 理论与实践: 非阻塞算法简介
在java中确保共享变量线程安全的传统方式是使用同步,同步可以确定访问一组变量的所有线程都将拥有对这些变量的独占访问权(原子性),并且其他线程获得该锁定时,将可以看到对这些变量的更改(可见性)。但是锁的代价太昂贵,特别是在竞争很厉害的时候,影响吞吐量。
基本变量的原子访问+volatile
接着上一篇的
关于java线程(4)----JUC之 AQS 状态依赖的抽象
看一下ReentrantLock的源码,这里只是从AQS的角度出发,并不是从Lock的角度来看,那个以后再分析把
从AQS的状态角度,代码整体结构上是这样的:
//检查状态
while(!checkAndChangeState){
enque(currentthread) //将当前线程加入等待队列
park(currentThread) //挂起当前线程
}
//do sth
…….
//释放锁,恢复状态
changeState(){
Deque ...
JUC之 AQS 状态依赖的抽象
AQS全称为:AbstractQueuedSynchronizer,它是juc的synchronizer的基础
状态依赖的管理
在JUC中,不管是FutureTask、
线程的状态四种:
1.新建 new,线程被创建时,会短暂的处于这种状态,他已经分配了必需的资源,并执行了初始化,
2.就绪Runnable,这种状态下,只要调度器把时间片分配给线程,线程就可以运行。
3.阻塞Blocked,线程能够 ...
A.共享对象
一个线程在它的生命周期内都只会访问它自己的局部变量,那么他是无状态的,它永远是线程安全的,这是最好的状态,代码和非并发模式下没有什么不同。但是在高并发情况下,经常用同时访问一个共享数据,比如:
1.集合的CRU操作、一些符复合操作
2.某些关键资源的初始化,检查再运行(check-then-act)
如果不能很好的控制这些共享资源,那么就会有非线程安全的风险,进入预料之外的结果!
关于线程基础
A.
并发在java中本身就是无处不在,例如Servlet天生就是多线程的,还有一些后台线程,进程和线程出现的原因,基本都是为了更好更合理的利用资源,更公平!
如果是在单处理器上,那么并发从某种角度上看,就是将顺序执行的任务拆分成并发执行,算上上下文切换的开销,其实更花时间!但是有阻塞IO或者大计算的时候,如果没有并发,程序会停止。有了并发,其他任务还可以同时进行,更公平合理的分配了资源。
仅仅靠进程也可以实现并发,但是这里我们只讨论线程实现并发的方式!
B.
Java的Thread对线程的操作都是通过nativ
前端:我有css和js代码要发布,还有些埋点数据要你统计
PD:各种需求什么时候能上?
另一个开发:你的系统有问题,赶紧查下bug
运营:新东西赶紧搞定呀
测试:找个开发来给我们写各种测试,,起码要协助测试
老大:要学些新东西,要提高自己水平
自己:是不是该找时间提高下自己的英语捏?
MM:去K歌,去玩
。。。。。。。
欢迎大家各种补充!
JMX
Java Management Extensions,Java管理扩展,初步看了些资料,以为是专门管理,监控jvm的一些信息的,特别是visual VM这个监控jvm的东西,还有一个添加JMX连接的时候(我自己想错了,那样的话应该叫jvm Management Extensions),其实他能使得基于java语言开发的程序能被管理,并且是可扩展的。
Jdk以前是通过JVMPI之类来监测Java程序运行中的
刚刚得到消息,有个朋友的爷爷去世了,是一个一直在小组里的女生。作为小组里唯一的女生,回想她真是不易。想起了当初拉她进小组的时候,想起了给她压力,任务的时候,其他女生退出了,她却是一直那么坚决。
当初给小组里拉人的时候,一直是怀着帮助他人的目的的,无聊的大学,能够进这么一个小组肯定能学到有用的东西。现在回想起来,拉这个女生进来,她以后也是决定进入这个行业,前途如何呢?哎,真的帮到人了吗?
刚才还聊天,她说她研究好了loadRunner,明天给我演示,到时候就能给我们的软件上了。一个女生能做到这些真的是很不错了,大家都很兴奋,可是,坏消息马上就来了。。。。。。 ...
推荐一本关于SOA的书,《SOA实践指南》
如果你一开始就去尝试接触一些SOA的框架,比如MS的WCF或者AXIS, 可能会被很多的新的知识概念搞晕,那么先看看这本书。他并不和任何特定的语言,平台相关,而是建立整个SOA过程中的方方面面,看了这本书再去学习一些框架,相信会更加简单。
中文翻译的并不是很好,顺便提供电子版
1.软件立项与合同:
a) 软件项目的来源一般有两个渠道,一是自主研发的“非订单软件”,二是为用户开发的“订单软件”。前者需要立项,后者需要签订合同。所以“立项”和“合同”是IT企业软件项目(或产品)的两个源头。一旦立项或者签订合同成功,企业领导或软件管理部门就要下达“任务书”
b) 相关文档:《立项建议书》 《合同》、《任务书》
c) 该步骤也可叫“项目可行性分析”,可行性分析是立项的前提,立项时可行性分析的结果。对于软件企业,一般不叫项目可行性分析,只有在学校、机关、科研所等单位,才叫项目可行性分析。
2.
- 2009-09-30 15:53
- 浏览 1287
- 评论(0)
一、软件工程的生命周期:
1.立项
2.需求分析
3.概要设计
4.编码实现
5.软件测试
6.
- 2009-09-30 15:50
- 浏览 2172
- 评论(0)
软件工程的方法(开发方法)、工具(支持方法的工具)、过程(管理过程)称为软件工程的三要素。
一、软件的开发方法(面向过程、面向对象、面向数据)
1.1
a) 面向过程的方法:也被称为传统的软件开发方法
特点 ...
- 2009-09-30 15:49
- 浏览 2780
- 评论(0)
最近看了《学习的艺术》,非常不错的,里面通过整体理论和渐进理论,揭开了整本书的序幕,这一章讲的非常好,摘录如下:
写道
发展心理学家针对“学习方法对学习成果的影响”进行了广泛研究。反正心理学领域的领军人物Carol Dweck对智力的“整体理论”和”渐进理论“进行了区分。 属于“整体理论”类型的孩子,即受父母和老师影响而采取这种思维方式的小孩子,倾向于用这样的语言:“我在这方面很聪明,”并将成败归结于一种与生俱来、无法改变的能力水平。他们把自己的综合智力或技能堪称是一个固定的、无法继续演变的“整体”。 而“渐进理论”则是一种全然不同的学习模式,权且 ...