自MapReduce发明后,Google大量用于各种海量数据处理,目前Google内部有7千以上的程序基于MapReduce实现。MapReduce可广泛应用于搜索引擎(文档倒排索引,网页链接图分析与页面排序等)、Web日志分析、文档分析处理、机器学习、机器翻译等各种大规模数据并行计算应用领域各类大规模数据并行处理算法。
【航班管家-从零到千万】
第12章嵌入式BOA服务器的构建随着Internet技术的兴起,在嵌入式设备的管理与交互中,基于Web方式的应用成为目前的主流,这种程序结构也就是大家非常熟悉的C/S结构,即在嵌入式设备上运行一个支持脚本或CGI功能的Web服务器,能够生成动态页面,在用户端只需要通过Web浏览器就可以对嵌入式设备进行管理和监控,非常方便实用。本章主要介绍这种应用的开发和移植工作。第12章嵌入式BOA服务器的构建概述12.1嵌入式Linux系统移植12.2嵌入式Linux的BOA服务器移植12.312.1概述下面简介下嵌入式web服务器。
Distributed Storage Systems
SOA的概念最早是由Gartner于1996年提出的。由于SOA在系统结构和软件开发中带来了很多的优势,后来IBM、MS、BEA、Oracle在内的全球著名IT公司加入了定义、实现和推广SOA的行列。使得SOA得到了快速的发展。
jBPM,全称是Java Business Process Management,是一种基于J2EE的轻量级工作流管理系统 jBPM最大的特色就是它的商务逻辑定义没有采用目前的一些规范,如 WfMC、 XPDL、BPML、 ebXML、 BPEL4WS等,而是采用了它自己定义的JBoss JBPM Process definition language (jpdl) JBPM的另一个特色是它使用Hibernate来管理它的数据库
Hadoop实现了一个分布式文件系统(Hadoop Distributed File System),简称HDFS。HDFS有着高容错性的特点,并且设计用来部署在低廉的(low-cost)硬件上。而且它提供高传输率(high throughput)来访问应用程序的数据,适合那些有着超大数据集(large data set)的应用程序。HDFS放宽了(relax)POSIX的要求(requirements)这样可以流的形式访问(streaming access)文件系统中的数据。
Java语言Java是由Sun公司发明的语言,它是完全基于面向对象思想的语言。Java可以看成是C++的简化,C++复杂而且极有面向对象的特征,又有面向过程的特征。Java是完全跨平台的语言,它的运行不依赖于操作系统,而是操作系统上的Java虚拟机(JVM)。Java程序有良好的规范。Java语言面向对象编程抽象,将应用中的特殊数据,或者特殊对象抽象成类。封装,通过类域,对数据、变量及方法进行封装,使得程序设计组件化。继承,子类可以继承父类的属性和方法,这使得程序重用性大大增加。
Spanner是谷歌公司研发的、可扩展的、多版本、全球分布式、同步复制数据库。它是第一个把数据分布在全球范围内的系统,并且支持外部一致性的分布式事务。本文描述了Spanner的架构、特性、不同设计决策的背后机理和一个新的时间API,这个API可以暴露时钟的不确定性。这个API及其实现,对于支持外部一致性和许多强大特性而言,是非常重要的,这些强大特性包括:非阻塞的读、不采用锁机制的只读事务、原子模式变更。
我们从一个简单的搜索引擎入手,实现一个简单的指定目录文件的搜索引擎。实现之前需要有java开发方面的基础知识。
GPS定位原理24颗卫星平均分布在6个轨道面,每一个轨道面上各有4颗卫星绕行地球运转,让地面使用者不论在任何地点、任何时间,至少有4颗以上的GPS卫星出现在我们上空中供使用者使用。每颗卫星都对地表发射涵盖本身载轨道面的坐标、运行时间的无线电讯号,地面的接收单位可依据这些资料做为定位、导航、地标等精密测量。GPS定位系统是利用卫星基本三角定位原理,GPS接受装置以量测无线电信号的传输时间来量测距离。
JavaScript是基于对象(object-based)的语言,采用事件驱动(event-driven)。通常鼠标或热键的动作我们称之为事件(Event).而由鼠标或热键引发的一连串程序的动作,称之为事件驱动(EventDriver)。对事件进行处理的程序或函数,称之为事件处理程序(EventHandler)JavaScript的事件处理分为两步:首先,需要定义可以被脚本识别和处理的事件(如点击一个按钮,加载一个文档等)。
Google 经常会发布一些开源项目, 意味着会接受来自其他代码贡献者的代码. 但是如果代码贡献者的编程风格与 Google 的不一致, 会给代码阅读者和其他代码提交这造成不小的困扰. Google 因此发布了这份自己的编程风格, 使所有提交代码的人都能获知 Google 的编程风格.<br> C++ 是 Google 大部分开源项目的主要编程语言. 正如每个 C++ 程序员都知道的, C++ 有很多强大的特性, 但这种强大不可避免的导致它走向复杂,使代码更容易产生 bug, 难以阅读和维护. .<br> 本指南的目的是通过详细阐述 C++ 注意事项来驾驭其复杂性. 这些规则在保证代码易于管理的同时, 高效使用 C++ 的语言特性.
MySQL是一个小型关系型数据库管理系统,开发者为瑞典MySQL AB公司。目前MySQL被广泛地应用在Internet上的中小型网站中。由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型 网站为了降低网站总体拥有成本而选择了MySQL作为网站数据库
MySQL Performance Tuning 调优的理由线上应用跑的慢客户体验差/投诉老板说要提高系统性能自己能动性决定服务器性能检测异常线上应用跑的慢静态页面显示速度快,动态的慢,那很有可能是数据库的问题了。最坏的状况,发现数据库表没有需要的索引。
为什么要用HTML5? 如何兼容HTML5? HTML5使用的基本特性 Web开发简述和移动APP框架开发简述 浏览器兼容分析 结论
介绍了主流商业和开源ESB的发展趋势、可借鉴的地方和其缺点。 主要介绍: Oracle Service Bus WebSphere Message Broker Mule ServiceMix/FUSE ESB Synapse/WSO2 ESB
JQuery入门1.JQuery特点:短小精悍(19k),接口设计得精妙(自然语言的风格),与程序思路配合精密。极大限度地体现了javascript的特性。
WebSphere MQ 支持其应用程序的客户机-服务器配置。 WebSphere MQ客户端通过MQI通道与WebSphere MQ服务器进行通讯。
软件自动化测试软件自动化测试就是模拟手动测试步骤,执行测试程序来控制被测软件的执行,完成全自动或者半自动测试的过程。全自动测试就是指在自动化测试过程中根本不需要人工干预,由程序自动完成测试的全过程。半自动测试就是指在自动化测试过程中需要手动输入测试用例或者选择测试路径,再由自动化测试程序按照人工指定的要求完成测试过程。