分析_Tag标签_程序员俱乐部

中国优秀的程序员网站程序员频道CXYCLUB技术地图
热搜:
更多>>
 
当前位置:程序员俱乐部 >>Tag标签 >> 分析 >>列表
· Ruby性能分析-Profile发布时间:2012-06-01
无意间发现ruby中一个非常实用的gem包----Profile英语比较烂,不知道什么意思,百度一下:1.侧面(像),侧影,2.轮廓,外形;外观;形象,3.纵断面(图),剖面(图)还不如不查,晕菜了。。来看个实例:首先下载profile的gem包geminstallprofile安装成功后运行如下代码:require"profile"classPeterdefinitialize(amt)@value=amtenddefrob(amt)@value... 查看全文
· 新浪微博如何实现 SSO 的分析发布时间:2012-05-05
最近在使用sina微博时,经常性交替使用weibo.com和t.sina.cm.cn进入我的微博。发现当我在t.sina.com.cn中登录之后,直接切换至weibo.com,这时候在weibo.com是已经登录的,当我在weibo.com进行注销之后,再切换至t.sina.com.cn,这时候在t.sina.com.cn也已经是注销的状态了。对于SSO的实现方案及其机制,早已经不是什么新鲜的技术了,从微软为.net提供的passport机制到java中开源的JBossSSO... 查看全文
· ArrayList 源码分析发布时间:2012-04-24
1.toArray方法将ArrayList实例中的所有元素拷贝到一个数组中如果目标数组的长度小于ArrayList的长度,则根据数组的类型生成一个新的数组并拷贝;否则就调用System.arraycopy方法复制数据,如果目标数组的长度大于ArrayList的长度,数组中在list后面的第一个位置被赋为null。public<T>T[]toArray(T[]a){if(a.length<size)//Makeanewarrayofa'sruntimetype... 查看全文
堆排序(HeapSort)是一种应用于海量数据处理的一种常用算法,它的时间复杂度为O(nlogn),其平均时间复杂度接近与其最坏的复杂度,所以堆排序对处理大数量的数据很有优势。堆排序定义n个关键字序列Kl,K2,…,Kn称为(Heap),当且仅当该序列满足如下性质(简称为堆性质):(1)ki<=k(2i)且ki<=k(2i+1)(1≤i≤n),当然,这是小根堆,大根堆则换成>=号。//k(i)相当于二叉树的非叶结点,K(2i)则是左孩子,k(2i+1)是右孩子。换句话说... 查看全文
我们通过使用来讲解CAssetManager的使用和工作机制,可以直接看yii自带的demo-blog,打开blog的首页,会看到如下的引入js的html代码:<linkrel="stylesheet"type="text/css"href="/yii/demos/blog/assets/d6bb6ebe/highlight.css"/><... 查看全文
简介:Java?编程语言一直以来都是一个很出色的“熔炉”,它具有用于集成的丰富和强大的功能——从用于集成企业库的依赖性注入容器,到EnterpriseJavaBeans(EJB)技术,再到Eclipse的组件模型。通过使用大量这样的理念和架构,Java开发人员率先采用新的方法将完全不同的软件库和组件组合成一个整体。但是Java开发人员并没有对优秀的集成技术造成垄断。本文通过审视一个名为acts_as_state_machine的流行插件来了解RubyonRails插件的工作原理... 查看全文
在.NET应用中一个常常影响性能的因素就是代码消耗了过多的内存。很多的开发人员在编写代码的过程中常常不会关注性能,从而使得应用程序中到处存在性能瓶颈。很多的时候,开发人员关注的总是代码的执行时间的长短,而把真正的性能问题丢掉了一边。在本篇文章中,我们将会找出代码中的哪些功能消耗了多少内存。本篇文章比较简单,我们会主要详细的介绍CLRProfiler这个工具。基础篇:详解介绍Profiler的使用大家可以从这里从微软的站点下载CLRProfiler。一旦下载CLRProfiler之后... 查看全文
通过上一篇文章一些截图,相信朋友们已经基本知道了Profiler的使用方法,现在,如何程序中的方法很多,例如2000个,那么通过上面的方法来查看就相当的痛苦了。怎么办呢?一个比较不错的方法就是将信息导出成为报表的信息,然后在excel中进行分析。操作方法如下:一旦上面的按钮点击之后,所有的调用树就会被显示出来,还没有将信息保存为csv格式,如下:保存为了csv之后,我们通过excel打开,就可以进行分析了,如下:除了采用上面的方法使用Profiler之外... 查看全文
JavaNIO原理图文分析及代码实现前言:最近在分析hadoop的RPC(RemoteProcedureCallProtocol,远程过程调用协议,它是一种通过网络从远程计算机程序上请求服务,而不需要了解底层网络技术的协议。可以参考:http://baike.baidu.com/view/32726.htm)机制时,发现hadoop的RPC机制的实现主要用到了两个技术:动态代理(动态代理可以参考博客:http://weixiaolu.iteye.com/blog/1477774... 查看全文
· CAS 单点登录client,server端分析发布时间:2012-04-10
本篇文章是对JA-SIGCAS(v3.3)的初步调研总结。一配置实例应用场景:cas服务部署在192.168.7.115,是一个web应用,访问地址为:https://cas.mycompany.com:8443/cas/。web1应用位于192.168.7.90,访问地址为:http://192.168.7.90:8081/web1,web2应用位于192.168.7.90,访问地址为:http://192.168.7.90:8082/web2。web1和web2通过cas服务实现SSO功能... 查看全文
在之前的源代码分析中我们经常遇到神秘的OutMessage类的实例,并调用它的writeInt,query等方法与MongoDB数据库进行交互。但OutMessage继承了BSONEncoder类,而BSONEncoder的writeInt等方法实际上是委托给OutputBuffer类的实例执行的。因此为了弄清楚OutMessage类的实例的行为,我们需要先了解OutputBuffer类的主要逻辑... 查看全文
原文地址:http://developer.51cto.com/art/200808/85875.htm在Java的世界里,无论类还是各种数据,其结构的处理是整个程序的逻辑以及性能的关键。由于本人接触了一个有关性能与逻辑同时并存的问题,于是就开始研究这方面的问题。找遍了大大小小的论坛,也把《Java虚拟机规范》,《apress,.java.collections.(2001),.bm.ocr.6.0.shareconnector》,和《ThinkinginJava》翻了也找不到很好的答案... 查看全文
GridFSFile类表示GridFS中的文件的信息,它是一个抽象类,分别被GridFSDBFile(表示从数据库中读取的文件)和GridFSInputFile(表示将要保存到数据库中的文件)继承。GridFSFile类包含下列属性(相应地有一系列的get方法)Object_id;//文件的唯一标识String_filename;//文件的名称String_contentType;//文件内容类型long_length;//文件长度long_chunkSize... 查看全文
· 系统分析发布时间:2012-02-29
很久没有来写这个博客了,手感有点生疏了。以前我是怀着这样一个想法的:当我把我要看的那本书看完,然后再在博客上发表我自己的一些感想,今天不写,明天不写,等到你想起来要写的时候,你的头脑里还记得你再学习的过程中你学到了哪些。生活就像是一场戏,要的就是在过程中有跌宕起伏的故事情节。在学习中总结自己的学习所得,总结自己这么一段日子以来做了什么。有一点说的很好,我们搞软件开发的就是要有些错误,有积累错误的经验。学习通信这个阶段已经有一段日子的,从最开始觉得通信很神奇,不知道通信到底是个什么东西... 查看全文
引言在Java软件开发过程中,开发团队往往要花费大量的时间和精力发现并修改代码缺陷。Java静态代码分析(staticcodeanalysis)工具能够在代码构建过程中帮助开发人员快速、有效的定位代码缺陷并及时纠正这些问题,从而极大地提高软件可靠性并节省软件开发和测试成本。目前市场上的Java静态代码分析工具种类繁多且各有千秋,因此本文将分别介绍现有4种主流Java静态代码分析工具(Checkstyle,FindBugs,PMD,Jtest),并从功能、特性等方面对它们进行分析和比较... 查看全文
· 日志分析方法概述 发布时间:2012-02-27
日志在计算机系统中是一个非常广泛的概念,任何程序都有可能输出日志:操作系统内核、各种应用服务器等等。日志的内容、规模和用途也各不相同,很难一概而论。本文讨论的日志处理方法中的日志,仅指Web日志。其实并没有精确的定义,可能包括但不限于各种前端Web服务器——apache、lighttpd、tomcat等产生的用户访问日志,以及各种Web应用程序自己输出的日志。在Web日志中,每条日志通常代表着用户的一次访问行为,例如下面就是一条典型的apache日志:211.87.152.44–... 查看全文
· 系统变迁趋势分析发布时间:2012-02-27
最近三十年,是摩尔定律大发光彩的三十年;计算机硬件的价格和成本,基本上可以用一泄千里来形容。而这种价格上的大跳水,作为基础设施的变化,对整个业界的生态环境形成了巨大和深远的冲击。其一,价格的下降,形成了自然地市场垄断。由于硬件价格已经下降到底线,最后市场上只能有少数几家公司生存下来,而其他生产商,将被迫出局。在计算机生产的各个环节,目前全球市场分工的结果,在每个方面都只剩下几个巨头存在。也只有这少数几个巨头,才能维持生存和生产。其二,硬件价格的下降,将软件本身的行业拉入深渊之中... 查看全文
com.mongodb是MongoDBDriver核心类所在的包。其中Mongo类是整个Driver的入口点。下面列出之前对这个包中的几个主要类的介绍:Mongo表示一个数据库实例,可能包含多个Server。http://xxing22657-yahoo-com-cn.iteye.com/blog/1236186DB表示一个数据库连接。http://xxing22657-yahoo-com-cn.iteye.com/blog/1291183DBApiLayer继承DB类。DB操作的底层实现... 查看全文
RelicaSetStatus用于读取集群中的服务器节点的信息。getMaster方法和getASecondary方法分别可用于以获取master节点和secondary节点。内部类ReplicaSetStatus.Node包含了节点的状态信息,内部类ReplicaSetStatus.Node.Updater用于实例化一个定时更新节点状态的线程。getMaster方法和getASecondary方法分析如下://获取master服务器地址ServerAddressgetMaster()... 查看全文
DBPort是表示数据库端口的类,分别用call和say方法实现读取和写入操作。这两个方法都调用了go方法。//读取操作Responsecall(OutMessagemsg,DBCollectioncoll)throwsIOException{returngo(msg,coll);}//写入操作voidsay(OutMessagemsg)throwsIOException{go(msg,null);}//执行操作privatesynchronizedResponsego... 查看全文