技术
文章平均质量分 75
月貘苏
女工程师一枚 目前专注于JVM性能监控工具开发
展开
-
百度商业大规模微服务分布式监控系统-凤睛
导语作为凤睛早期的接入方、后期的核心成员,笔者经历了整个项目前后四年的变迁,看过项目的艰难开端、中期的默默积累以及后期的蓬勃发展。每一次架构的变迁都带着技术浪潮的烙印,也看到项目成员利用有限资源来解决实际问题而持续不断的创新凤睛是百度商业业务系统的性能监控系统(APM),它侧重于对Java应用的监控,基本接入了百度绝大部分Java应用(覆盖数千个业务应用,数万个容器)。它能够对主流中间件框架( Spring Web、RPC、数据库、缓存等)进行自动埋点,实现全栈式性能监控和全链路追踪诊断,为百度各业原创 2020-07-02 16:50:11 · 824 阅读 · 0 评论 -
业务流程执行语言 (BPEL)入门简介
原文出自 http://www.developer.com/services/article.php/3609381业务流程执行语言(Business Process Execution Language, BPEL, 发音为'bipple'或'bee-pell'),也叫业务过程执行语言,是一种基于XML的,用来描写业务流程的编程语言,被描写的业务流程的每个单一步骤则由Web服务来实现。B转载 2012-04-08 12:16:50 · 7985 阅读 · 0 评论 -
如何编写Hadoop调度器
作者:Dong | 可以转载, 但必须以超链接形式标明文章原始出处和作者信息及版权声明网址:http://dongxicheng.org/mapreduce/how-to-write-hadoop-schedulers/1. 编写目的在Hadoop中,调度器是一个可插拔的模块,用户可以根据自己的实际应用要求设计调度器,然后在配置文件中指定相应的调度器,这样,当Hadoop集转载 2012-04-09 17:09:17 · 3420 阅读 · 2 评论 -
ubuntu下tomcat监视运行进度方法
如果你一直在Windows下使用Tomcat,那么你一定会知道:在运行Tomcat的时候,会弹出新的控制台窗口,然后相关的服务器状态信息以及程序运行过程中输出的信息都会在这个新窗口中显示出来。但是到了Linux,自带的shell文件并不会打开一个新的终端窗口,这使得一些Linux新手(包括我)调试程序的时候遇到不少麻烦。这个问题该如何解决呢?首先,我们得知道那些在Windows的控制台中显示的转载 2012-05-17 11:41:08 · 4855 阅读 · 0 评论 -
怎样从10亿查询词找出出现频率最高的10个
1. 问题描述在大规模数据处理中,常遇到的一类问题是,在海量数据中找出出现频率最高的前K个数,或者从海量数据中找出最大的前K个数,这类问题通常称为“top K”问题,如:在搜索引擎中,统计搜索最热门的10个查询词;在歌曲库中统计下载率最高的前10首歌等等。2. 当前解决方案针对top k类问题,通常比较好的方案是【分治+trie树/hash+小顶堆】,即先将数据集按照hash方法分解成转载 2012-06-08 10:49:13 · 826 阅读 · 0 评论 -
MapReduce 算法设计(二)--- Pairs 和 Stripes
之前提到从MapReduce 可控和不可控的方面我们可以挖掘出一些有用的设计模式。在可控方面Key 和Value 数据结构的自定义给了我们很大的发挥空间。本篇要讲述的就是Pairs 和Stripes 。这两种设计模式并没有利用MapReduce 的框架机制,而是巧妙的利用数据结构来实现的。但是依然可以利用我们之前提到的Combiner 和In-Mapper Combining 来进行效率优化。转载 2012-06-08 11:47:24 · 1618 阅读 · 0 评论 -
MapReduce算法设计(三)----相对频率计算
1. 相对频率的计算在我们使用应用程序来分析文章时,一个重要的使用就是文章主题分类。就是依据文章所要表达的主题进行分类。而一般的程序化分类 (非人工分类)所使用的方法是TF-IDF。这种方法依据字词的重要性随着它在文件中出现的次数成正比增加,但同时会随着它在语料库中出现的频率成反比下降。比如本文中多次出现MapReduce这一词,若是被搜索引擎分析时,它会计算出本文中MapRed转载 2012-06-08 11:55:35 · 4618 阅读 · 0 评论 -
MapReuce 算法设计(一)---Combiner 和 In-Mapper Combing
MapReduce 算法设计MapReduce 是一种编程模式,在很大程度上借鉴了函数式语言。它主要的思想是分而治之(divide and conquer)。将一个大的问题切分成很多小的问题,然后在集群中的各个节点上执行,这既是Map过程。在Map过程结束之后,会有一个Ruduce的过程,这个过程即将所有的Map阶段产出的结果进行汇集。上述过程可以说是一个显而易见的过程,所以说MapR转载 2012-06-08 11:25:00 · 1505 阅读 · 0 评论 -
Data-Intensive Text Processing with MapReduce第三章(6)-MapReduce算法设计-3.5相关连接(RELATIONAL JOINS)
3.5相关连接(RELATIONAL JOINS) Hadoop的一个流行应用领域是数据仓库。在一个企业级的环境中,一个数据仓库作为大量数据的存储地点,存储着从销售交易到商品清单几乎所有的信息。一般来说这些数据都是相关的,但是随着数据的日益增长,数据仓库被用来像存储无结构数据那样存储半结构化的数据(例如,查询日志)。数据仓库组成了提供决策支持的商业智能应用程序的基础。普遍认为知识是通过对历转载 2012-06-12 09:58:52 · 1102 阅读 · 0 评论 -
MapReduce Join联结实现
一、背景早在8月份的时候,我就做了一些MR的Join查询,但是发现回北京之后,2个月不用,居然有点生疏,所以今天早上又花时间好好看了一下,顺便写下这个文档,以供以后查阅。二、环境JDK 1.6、Linux操作系统、hadoop0.20.2三、资料数据在做这个Join查询的时候,必然涉及数据,我这里设计了2张表,分别较data.txt和info.txt,字段之间以\t划分。d转载 2012-06-12 11:22:45 · 4903 阅读 · 2 评论 -
Facebook早期投资者赞助20名年轻人弃学创业(草根网)
腾讯科技讯(童云)北京时间6月13日消息,找准目标,放弃学业,然后自己创业,这种模式在Faceobok联合创始人、哈佛大学辍学生马克·扎克伯格(Mark Zuckerberg)身上得到了良好的表现。身兼Facebook的早期投资者之一、PayPal联合创始人和对冲基金经理等多重身份的彼得·赛尔(Peter Thiel)在周三宣布了新的“Thiel Fellow”(赛尔伙伴)计划,向20名年龄不转载 2012-06-14 17:05:36 · 3050 阅读 · 0 评论 -
sqlserver字段类型详解
bit 整型 bit数据类型是整型,其值只能是0、1或空值。这种数据类型用于存储只有两种可能值的数据,如Yes 或No、True 或False 、On 或Off. 注意:很省空间的一种数据类型,如果能够满足需求应该尽量多用。 tinyint 整型 tinyint 数据类型能存储从0到255 之间的整数。它在你只打算存储有限数目的数值时很有用。这种数据类转载 2012-07-18 21:41:50 · 753 阅读 · 0 评论 -
java,hibernate和sql server对应的数据类型
Java数据类型Hibernate数据类型标准SQL数据类型(PS:对于不同的DB可能有所差异)byte、java.lang.BytebyteTINYINTshort、java.lang.ShortshortSMALLINTint、java.lang.IntegerintegerINGEGERlo转载 2012-07-19 10:32:49 · 2990 阅读 · 0 评论 -
Struts2页面取值:
4种取值方法${username} (#session. #application.类似) 1. Struts2页面开发中常用标签使用说明1.1.往action里传值的使用方式:a. userName属性需要在访问的action中提供相应的属性,并有SET/GET方法。b. 可以不在访问的action中提供相应的属性,用requ转载 2012-07-20 15:46:09 · 926 阅读 · 0 评论 -
JSP中的EL表达式
E L(Expression Language) 目的:为了使JSP写起来更加简单。 表达式语言的灵感来自于 ECMAScript 和 XPath 表达式语言,它提供了在 JSP 中简化表达式的方法。它是一种简单的语言,基于可用的命名空间(PageContext 属性)、嵌套属性和对集合、操作符(算术型、关系型和逻辑型)的访问符、映射到 Java 类中静态方法的可扩展函数以及一组转载 2012-08-07 16:25:31 · 470 阅读 · 0 评论 -
struts2下拉框实例
name="obj.userName" listKey="userName" listValue="userName" value="%{obj.userName.trim()}"/> 上面就是我使用的test实例了!挨个解释吧! 首先你要用到select,可以只使用 标签,解释下这个标签属性: headerValue : 默认值value headerKey : 默转载 2012-08-08 10:03:08 · 5271 阅读 · 0 评论 -
Struts2一个Action内包含多个请求处理方法的处理
Struts2一个Action内包含多个请求处理方法的处理(三种方式)Struts1提供了DispatchAction,从而允许一个Action内包含多个请求处理方法。Struts2也提供了类似的功能。处理方式主要有以下三种方式:1.1. 动态方法调用:DMI:Dynamic Method Invocation 动态方法调用。动态方法调用是指:表单元素的action不直接等于某个A转载 2012-08-07 17:00:28 · 591 阅读 · 0 评论 -
在struts2中整合JFreeChart
前言 关于Struts2入门以及提高等在这里就不介绍了,但是关于Struts2的学习有以下推荐:struts2-showcase-2.0.6.war:这个是官方自带的Demo(struts-2.0.6-all.zip\struts-2.0.6\apps目录下),非常全面,直接部署就可以了(很多朋友Struts2能学很好我估计还是直接从这里学来的)。wiki-WebWork:转载 2012-07-24 10:27:03 · 924 阅读 · 0 评论 -
struts2的页面中调用函数
方法一: func是类com.common.Constant里面的一个静态方法str是动态的参数 方法二:func是类com.common.StrutsHelper里面的一个普通方法str是动态方法s:bean其实是对类StrutsHelper的实例化,跟方法一有些区别,方法一里的函数必须是静态转载 2012-08-08 14:37:58 · 1715 阅读 · 0 评论 -
MyEclipse编码设置
Eclipse 编码设置: 全局编码设置:编码设置的方法:ToolBar-->Window-->Preferences-->General-->Workspace-->Text file encoding,设置合适的编码。 局部编码设置:在源码按右键-->General-->Editors-->Test Editors-->Spelling-->Encoding,这里是设置单个转载 2012-08-09 11:48:50 · 580 阅读 · 0 评论 -
No tag "datetimepicker" defined 解决方法
错误提示:org.apache.jasper.JasperException: /struts2/index.jsp(16,3) No tag "datetimepicker" defined in tag library imported with prefix "s" 原因:struts2.1.6 把struts2.0中的和ajax相关的,如datetimepicker,tree,tr转载 2012-08-09 13:12:47 · 631 阅读 · 0 评论 -
在Struts中实现系统的初始化工作
通常web系统在启动时需要做一些初始化的工作,比如初始化系统全局变量,加载自定义配置文件,启动定时任务等。 在Struts中实现系统的初始化工作在Struts中,我们可以写一个Servlet让它继承于ActionServlet并覆盖其init()方法,然后修改web.xml文件的Struts启动相关配置来达到目的。 Java代码 package f转载 2012-08-08 14:36:41 · 841 阅读 · 0 评论 -
struts2中的OGNL用法
User对象属性获取如User中有username和password字段获取username属性获取password属性若User中又包含定义了address对象,address对象中包含有addr属性,则可以这样访问获取addr属性若User中还包含一个get()的普通方法,可以这样调用以上是调用值栈中对象的普通方法,user为值栈中的对象调用ac转载 2012-08-10 13:41:19 · 410 阅读 · 0 评论 -
JavaScript基础—对象
学习是理解和记忆的过程。在理解和记忆的过程中必不可少地就需要一些辅助的记录,于是我就将自己的学习记录写成随笔。一来是帮助自己理解和记忆,二来也给其它热爱脚本的同志一些参考。JavaScript对象 ECMA-262将对象(object)定义为"属性的无序集合,每个属性存放一个原始值、对象或函数"(unordered collection of properties each转载 2012-08-14 16:38:40 · 448 阅读 · 0 评论 -
jQuery之CSS选择符 - 大于号模式 空格的作用
摘要: 先看一下例子,很简单的结构:以下为引用的内容:ab...先看一下例子,很简单的结构:以下为引用的内容: a b c d e 对上面这段HTML,我们可以分别执行下面两条语句: alert($('#test>div').length); alert($('#test div').length); 第一条语句使用了大于号选择符,代表在#test的第一级子元素转载 2012-08-15 14:06:38 · 3211 阅读 · 0 评论 -
Struts2返回JSON数据的具体应用范例
早在我刚学Struts2之初的时候,就想写一篇文章来阐述Struts2如何返回JSON数据的原理和具体应用了,但苦于一直忙于工作难以抽身,渐渐的也淡忘了此事。直到前两天有同事在工作中遇到这个问题,来找我询问,我又细细地给他讲了一遍之后,才觉得无论如何要抽一个小时的时间来写这篇文章,从头到尾将Struts2与JSON的关系说清楚。 其实网络中,关于这个问题的答案已是海量,我当初也是从这海量的转载 2012-08-15 16:23:57 · 625 阅读 · 0 评论 -
C++之函数fgets和fputs、fread和fwrite、fscanf和fprintf用法小结
字符串读写函数fgets和fputs一、读字符串函数fgets函数的功能是从指定的文件中读一个字符串到字符数组中,函数调用的形式为: fgets(字符数组名,n,文件指针); 其中的n是一个正整数。表示从文件中读出的字符串不超过 n-1个字符。在读入的最后一个字符后加上串结束标志”。例如:fgets(str,n,fp);的意义是从fp所指的文件中读出n-1个字符送入 字符数组str中。转载 2012-08-17 11:35:45 · 23817 阅读 · 0 评论 -
<数据仓库工具箱—维度建模的完全指南>读书笔记
《数据仓库工具箱—维度建模的完全指南》是数据仓库建模方面的经典著作, 1996年第一版出版被认为是数据仓库方面具有里程碑意义的事件。作者kimballl是数据仓库方面的权威,他将多年的数据仓库建模实战经验、技巧融入本书。他提出的许多维度建模概念被广泛应用于数据仓库的设计和开发中。2002年本书出版了第二版。这是一部非常好的数据仓库建模的书,前后完整的读了三遍,受益匪浅。以下笔记将本按四个部转载 2012-08-17 16:21:20 · 6721 阅读 · 0 评论 -
数据仓库中的维度表、事实表
以前一直对维度表, 事实表, 数据分析, BI等概念等有一些模糊. 这几天的学习终于让这些有了一些眉目了:维度表示你要对数据进行分析时所用的一个量, 比如你要分析产品销售情况, 你可以选择按类别来进行分析,或按区域来分析. 这样的按..分析就构成一个维度。前面的示例就可以有两个维度:类型和区域。另外每个维度还可以有子维度(称为属性),例如类别可以有子类型,产品名等属性。下面是两个常见的维度转载 2012-08-20 11:07:22 · 6144 阅读 · 1 评论 -
数据仓库中维度建模
设计数据仓库常用到的模型是维度模型。例如决策者想知道去年一年里哪个产品在哪个地区销售得最好,那么决策者想要得到的信息有3个:时间、产品和地区,这3个信息称为“维度”。维度模型的作用是将决策者所要分析的信息分为多个维度,然后创建一个多维的数据库。 使用维度模型所创建出来的数据仓库结构多为星形结构,如图所示图的中间有一个fact数据表,这个表里存储的数据称为fant(量值)。在该表转载 2012-08-20 11:11:54 · 11082 阅读 · 0 评论 -
数据仓库-事实表和维度表的设计(三)
Posted on 2009-02-20 10:15 如果你也听说 阅读(5011) 评论(3) 编辑 收藏 数据仓库的物理模型较常见的操作型数据库的物理模型有很大不同。最明显的区别是:操作型数据库主要是用来支撑即时操作,对数据库的性能和质量要求都比较高,为了防止“garbage in,garbage out”,通常设计操作型数据库的都要遵循几个范式的约束,除非少数情况下为了性能进转载 2012-08-20 11:23:21 · 38091 阅读 · 0 评论 -
数据仓库之三种事实表(四)
在数据仓库领域有一个概念叫Transaction fact table,中文一般翻译为“事务事实表”。事务事实表是维度建模的数据仓库中三种基本类型事实表中的一种,另外两种分别是周期快照事实表和累积快照事实表。 事务事实表与周期快照事实表、累积快照事实表使用相同的一致性维度,但是它们在描述业务事实方面是有着非常大的差异的。 事务事实表记录的事务层面的事实,转载 2012-08-20 11:39:35 · 11645 阅读 · 0 评论 -
数据仓库中dimension,level,hierarchy的理解
dimension: 从几何学上理解,就是一个坐标。比如时间是很常见的维。值得注意的是,一个维的确定,维里面的具体的值需要是原子的,不能再分的。level: 坐标上当然有刻度。举例来说,时间维如果我们的刻度最小单位为天的话,那么dimension的值集合就是类似于(...,2005-01-01,2005-01-02,...)。level就是对这些值集合分组的级别。 比如可以原创 2012-08-30 11:02:11 · 4026 阅读 · 0 评论 -
Pentaho 开发: 在eclipse中构建Pentaho BI Server工程
下载源码:首先需要说明的是,Pentaho BI Server源代码在svn://source.pentaho.org/svnroot/bi-platform-v2/trunk/,并且用ivy构建。ivy没有用过也不熟悉,故不打算从这里使用ivy构建源码。当然,您可以参考官方文档构建源码。Pentaho BI Server打包后的文件存于这里,其中包括(本文使用的是3.9.0版本)转载 2012-08-31 10:32:46 · 8462 阅读 · 3 评论 -
单链表反转-C++
struct Link{ int data; Link *next;}; void reverse(Link* &head){ if((head==NULL)||(head->next==NULL)) return ; Link* pNext=NULL; Link* pPrev=head;//保存链表头指针 Link*原创 2012-08-20 17:50:15 · 1122 阅读 · 0 评论 -
struts2取值方式总结
1.标签取值方式一 通过取值 当Action的valueStack中有该属性的值时,只需直接使用该属性的名字即可; 当Action的valueStack中没有该属性的值时,比如在session,application范围中的属性值时,需要加#或者#attr.; 例子: 假设某Action中有person成员变量,在application转载 2012-08-22 09:41:37 · 806 阅读 · 0 评论 -
Pentaho BA 4.5组件
Pentaho BA 4.5 企业版在安装中,有八个组件供选择: 1. BA Server: 包括用户控制台,提供报表、OLAP分析、仪表盘的后台服务。包括管理员控制台,提供用户角色控制、调度、审计等功能的后台服务。2. 报表设计工具:包括 Pentaho 报表设计器(用来创建和发布Pentaho 报表)和元数据设计器(用来构造业务元数据模型)。3. 分析设计工具:包括Schema转载 2012-08-22 09:48:55 · 2065 阅读 · 0 评论 -
MySQL数据类型详解
数值类型MySQL 的数值数据类型可以大致划分为两个类别,一个是整数,另一个是浮点数或小数。许多不同的子类型对这些类别中的每一个都是可用的,每个子类型支持不同大小的数据,并且 MySQL允许我们指定数值字段中的值是否有正负之分或者用零填补。 表列出了各种数值类型以及它们的允许范围和占用的内存空间。类型大小范围(有符号)原创 2012-08-23 16:42:28 · 754 阅读 · 0 评论 -
Pentaho技术白皮书中文版(四)--创建 dashboards
这篇文档描述了如何使用 Pentaho BI 套件创建 dashboards。它描述了 Pentaho Demo 服务器提供的sample dashboard。sample dashboard 以 JSP 和 PHP 形式提供。两个 dashboards 均使用相同的内容,提供相同的功能。JSP 实例显示了如何在 Pentaho UI 组件中使用 Java API,PHP 实例显示了如何在 P转载 2012-09-03 09:43:04 · 6592 阅读 · 1 评论 -
Pentaho技术白皮书中文版(五)--集成 BIRT 和 Jasper
这个指南演示了如何使用 Pentaho BI Platform 运行 Birt 和 Jasper 报表。这个指南解释了每种类型的报表定义,一步步的教会你如何在平台中创建一个 action sequence,设置 JDBC drivers,并验证报表。BIRTThis page last changed on Dec 04, 2006 by mdamour.1.Eclipse BIRT转载 2012-09-03 09:46:09 · 3563 阅读 · 0 评论