摘要:
1.基础概念篇1.1介绍 HTTP是Hyper Text Transfer Protocol(超文本传输协议)的缩写。它的发展是万维网协会(World Wide Web Consortium)和Internet工作小组IETF(Internet Engineering Task Force)合作的结果,(他们)最终发布了一系列的RFC,RFC 1945定义了HTTP/1.0版本。其中最著名的就是RFC 2616。RFC 2616定义了今天普遍使用的一个版本——HTTP 1.1。HTTP 协议(HyperText Transfer Protocol,超文本传输协议)是用于从WWW服务器传输超文本 阅读全文
摘要:
引言前端的高性能部分,主要是指减少请求数、减少传输的数据以及提高用户体验,在这个部分,图片的优化显得至关重要。许多网站的美化,都是靠绚丽 的图片达到的,图片恰恰是占用带宽的元凶。每个 img 标签,浏览器都会试图发起一个下载请求。本文就详细介绍了图片优化的几种方式,介绍了使用的工具以及优化后的结果。图片压缩减少图片的大小,可以明显的提高性能,而对于已有图片,要想减少图片的大小,只能改变图片的格式,这里推荐的是 PNG8 的格式,它可以在基本保持清晰度的情况下,减少图片的大小。知道这个原理以后,可以用 Windows 的画图工具、以及 PhotoShop 工具逐个的改变。但是这样做的缺点是单张处 阅读全文
摘要:
引言在前端优化的第一部分中,主要讲解了对静态资源的一些优化措施,包括图片压缩、CSS Sprites 技术、GZIP 压缩等。这一部分,本文将讲解前端优化里重要的 Flush 机制、动静分离、HTTP 持久连接、HTTP 协议灵活应用、CDN 等。结合这些技术或思想,相信会使 Java Web 应用程序的性能更上一层楼。Flush 机制的使用实际上在 Web 技术中,Flush 机制并不新鲜,它的思想是无需等到网页内容全部加载完毕,一次性写回客户端,而是可以部分逐次的返回。如果网页很大的话,一次性写回全部内容显然是个不明 智的选择,因为这会造成网页的长时间空白。Flush 机制允许开发人员将网 阅读全文
摘要:
jQuery官方今天正式发布了jQuery 2.0版本。 该版本的主要变化如下:不再支持IE 6/7/8,如果在IE9/10版本中使用“兼容性视图”模式也将会受到影响。更加轻量,2.0版本文件与1.9.1相比小了12%。模块化,你可以自定义构建一个更小、更轻量的版本。兼容jQuery 1.9版本的API。如果你仍有大量目标用户在使用IE 6/7/8版本,你应该在项目中使用jQuery 1.9版本,或者期待即将在2个月内到来的1.10版本。由于该版本变化较大,如果从1.9之前版本升级至该版本,建议使用jQuery迁移插件,并阅读jQuery 1.9 升级指南。详细信息:jQuery 2.0 Re 阅读全文
摘要:
JavaScript 函数式脚本语言特性以及其看似随意的编写风格,导致长期以来人们对这一门语言的误解,即认为 JavaScript 不是一门面向对象的语言,或者只是部分具备一些面向对象的特征。本文将回归面向对象本意,从对语言感悟的角度阐述为什么 JavaScript 是一门彻底的面向对象的语言,以及如何正确地使用这一特性。 前言当今 JavaScript 大行其道,各种应用对其依赖日深。web 程序员已逐渐习惯使用各种优秀的 JavaScript 框架快速开发 Web 应用,从而忽略了对原生 JavaScript 的学习和深入理解。所以,经常出现的情况是,很多做了多年 JS 开发的程序员对闭包 阅读全文
摘要:
一款优秀的菜单对网站而言是非常重要的,它不仅可以让用户方便地找到想要的信息,而且更让人有一种特殊的用户体验。下面给大家分享7款风格新颖的jQuery/CSS3菜单导航,希望大家会喜欢。 1、CSS3立体飘带状菜单CSS3立体飘带状菜单,该菜单鼠标滑过时,菜单项向上立体凸起,结合黑色的木质背景,整个菜单显得非常立体生动。在线演示 / 源码下载2、CSS3个人资料导航菜单该菜单是用来展示登录的用户信息,包括用户的快捷操作按钮,另外菜单还提供一个个性化的搜索框。在线演示 / 源码下载3、jQuery顶部浮动渐变工具栏jQuery顶部浮动渐变工具栏是一款基于jQuery的顶部导航插件,默认该菜单不显示 阅读全文
摘要:
Geeksphone 今天正式开卖 Firefox OS 开发者预览版手机,一款 119 美元的 Keon 和一款 194 美元的 Peak,两者都搭载 Firefox OS,面向开发者和极客。上线才几小时,网站上的售卖状态已经变成了“售罄”。 由于是首版开发者预览机,,配置也就一般般了:Keon 手机配备 1GHz Snapdragon S1 处理器,3.5 寸 HVGA 屏幕,300 万像素相机,4GB 的 ROM 搭配 521MB 的 RAM,支持 2G、3G 网络和 Micro SD 卡,电池容量为 1580mAh。Peak 稍微高端一点,处理器是 1.2GHz 的双核 Snapdra 阅读全文
摘要:
当一个网站或者一个Web应用推出新功能时,为了让用户了解你的站点(或应用)如何操作,往往都会在站点(应用)中添加一个分步指引的效果。然而这样的效果,对于不懂原生JS的同学来说,是件很头痛的事情。 下面为大家介绍一些可帮助你实现分步指引效果的jQuery插件,你可以根据自己需求定制,它们都具有一个时尚的外观,而且简单易用。1. Intro.jsIntro.js 使用一种引导式的方式来一步步介绍你网站和项目新特性。支持键盘+鼠标的导航方式。2. aSimpleTouraSimpleTour 使用JSON数据进行存储配置和内容。一个浮动窗帮助管理重点元素的浏览、工具提示(可以定位)。3. Pageg 阅读全文
摘要:
在过去的十年中,计算世界已经改变。现在不仅在大公司,甚至一些小公司也积累了TB量级的数据。各种规模的组织开始有了处理大数据的需求,而目前关系型数据库在可缩放方面几乎已经达到极限。 一个解决方案是使用键值(Key-Value)存储数据库,这是一种NoSQL(非关系型数据库)模型,其数据按照键值对的形式进行组织、索引和存储。KV存储非常适合不涉及过多数据关系业务关系的业务数据,同时能有效减少读写磁盘的次数,比SQL数据库存储拥有更好的读写性能。本文就为你介绍9种用于大数据处理的免费键值存储数据库。1. Aerospike 社区版Aerospike是一个以分布式为核心基础,可基于行随机存取内存中索引 阅读全文
摘要:
在MySQL经历了2008年Sun的收购和2009年Oracle收购Sun的过程中,基本处于停滞发展的情况,在可以预见的未来,MySQL是肯定会 被Oracle搁置并且逐步雪藏消灭掉的。MySQL随着相应的各主创和内部开发人员的离去,缔造了各个不同的引擎和分支,让MySQL有希望继续发扬光 大起来。 本文大致讲解一下MySQL目前除了主要的 MyISAM、InnoDB、Heap(Memory)、NDB等引擎之外的其他引擎的发展和现状,以及MySQL主干以外的分支的状况,为了我们未来更好的使用MySQL或者其他分支建立一个了解基础。MySQL存储引擎介绍Falcon存储引擎Falcon存储引擎. 阅读全文
摘要:
一、背景1、起源 MapReduce编程模型的思想来源于函数式编程语言Lisp,由Google公司于2004年提出并首先应用于大型集群。同时,Google也发表了GFS、BigTable等底层系统以应用MapReduce模型。在2007年,Google’s MapReduce Programming Model-Revisted论文发表,进一步详细介绍了Google MapReduce模型以及Sazwall并行处理海量数据分析语言。Google公司以MapReduce作为基石,逐步发展成为全球互联网企业的领头羊。2、项目起源和发展 Hadoop作为Apache基金会资助的开源项目,由Doug 阅读全文
摘要:
oSQL是伴随着web2.0的迅猛发展而在2009年被提出的一个概念,一般可以通俗的理解为高性能的Key Value存储结构的数据库,当然也有其他更广泛的类型。它基于CAP和BASE理论,强调最终一致性,具有数据结构灵活、扩展方便、大数据量下读写性能 高效等特点,在互联网行业被广泛采用。本系列文章将评测广受关注的几个NoSQL数据库产品。本文关注的是HandlerSocket Plugin for MySQL。系列文章:主流NoSQL数据库评测之Tokyo Cabinet HandlerSocket简介: HandlerSocket是日本DeNA公司的架构师Yoshinori开发的一个NoS. 阅读全文
摘要:
本篇要评测的NoSQL产品是MongoDB,它是现在开源社区里越来越受到关注的一个NoSQL产品,按照官方的说法,是一个可扩展的、高性能 的、开源的、面向文档的数据库。Craigslist、foursquare、国内的淘宝网等知名互联网公司都有在他们的生产环境部署了MongoDB。 系列文章: 主流NoSQL数据库评测之Tokyo Cabinet 主流NoSQL数据库评测之HandlerSocket 一、MongoDB简介 mongodb是用C++开发的面向文档的数据库,也就是反传统的数据库范式来设计的,把相关的对象都记录到一个文档里,每个文档内是schema- free的,也就是... 阅读全文
摘要:
本篇要评测的NoSQL产品是HBase,和其他简单的Key-Value结构不同,HBase主要面向处理海 量数据的应用,可以认为是Google BigTable的一个开源版本。由于Facebook使用HBase来存储消息内容和大数据量的实时分析而使得这一产品备受关注。 系列文章: 主流NoSQL数据库评测之Tokyo Cabinet 主流NoSQL数据库评测之HandlerSocket 主流NoSQL数据库评测之MongoDB 一、HBase简介 HBase是用Java开发的,是一个开源的、分布式的、面向列的数据库,其存储的每个值都有一个时间戳,可以根据定义好的规则保存多个版本(默... 阅读全文
摘要:
前段时间Facebook的新版消息系统发布,Facebook对HBase的成功使用也使得很多的HBase案例得以出现,下文是Facebook的 Hadoop工程师Dhruba Borthakur发表的Hadoop系列文章中的一篇,对Facebook选择Hadoop和HBase的原因做了一个说明。 Dhruba Borthakur首先总结了Hadoop和HBase的优势。他认为HBase横向扩展性强。对Facebook这种少量数据存储场景来说,扩容几乎是家常便饭,HBase能够使数据扩容非常容易。并且支持很高的写吞吐。Facebook的消息数据很庞大,每天的写量也很大。同时在同一个数据中心,能够 阅读全文
摘要:
也许你已经在一些地方看到这个消息,Facebook 已经开发一款新的社会化收件箱,集成了电子邮件、即时通讯、短信、文本信息、Facebook站内信息。最重要的是,他们需要每个月存储 1350 亿条信息。他们在哪里存储这些信息?Facebook的Kannan Muthukkaruppan 在《信息背后的技术》一文中给出一个令人惊奇的答案:HBase。HBase 击败了MySQL、Cassandra和其他一些选项,成为了Facebook的选择。 为什么这一选择令人惊奇?Facebook 创建了Cassandra,其目的就是为了建造一个收件箱类型的应用程序,但是最终他们发现,Cassandra的.. 阅读全文
摘要:
MySQL复制操作可以将数据从一个MySQL服务器(主)复制到其他的一个或多个MySQL服务器(从)。试想一下,如果从服务器不再局限为一个MySQL服务器,而是其他任何数据库服务器或平台,并且复制事件要求实时进行,是否可以实现呢? MySQL团队最新推出的 MySQL Applier for Hadoop(以下简称Hadoop Applier)旨在解决这一问题。用途例如,复制事件中的从服务器可能是一个数据仓库系统,如Apache Hive,它使用Hadoop分布式文件系统(HDFS)作为数据存储区。如果你有一个与HDFS相关的Hive元存储,Hadoop Applier就可以实时填充Hive数 阅读全文