Skip to content

Instantly share code, notes, and snippets.

HBase

标签(空格分隔): 开源启示录


3月10日,豌豆荚的张铎成为中国第5位HBase Committer。现在越来越多的公司和开发者都开始关注开源,开源正在经历前所未有的繁荣时期,但这只是开始。从整体比例来看,国内参与开源项目的人并不多,很多人都不知道如何参与开源项目。在这个背景下,InfoQ采访了张铎,希望能深入挖掘HBase项目组织架构、运营、流程等方面的细节。

####演讲嘉宾 张铎,豌豆荚基础技术负责人,目前主要关注存储相关的技术。2010年研究生毕业,来豌豆荚之前一直在网易有道工作,从事的也是基础技术相关的工作。2014年底带领团队开发了名为Codis 的分布式存储解决方案,并于2014年11月7在GitHub上开源。

@xishuixixia
xishuixixia / gist:90213fbcedcb03810474
Created March 13, 2015 07:17
Gaia平台:万台规模的Docker应用

Gaia平台:万台规模的Docker应用

标签(空格分隔): Docker QCon


InfoQ:能否介绍下目前Gaia平台的状态?你们什么时候开始使用Docker的?有多大的规模?(背景、OS版本、Docker版本、规模、平台主要做什么,为什么会选择Docker)

罗韩梅:Gaia平台是腾讯数据平台部大数据平台的底层资源管理和调度系统,其上层业务包括离线、实时以及在线service服务,如Hadoop MR、Spark、Storm、Hive以及腾讯内部的Lhotse、Hermes、广点通等业务。最大单集群规模达8800台、并发资源池个数达2500个,服务于腾讯所有事业群。我们是2014年10月份正式上线Docker,之所以选择Docker,一方面是因为Gaia本来就一直在使用cgroups类型的container,深知其在共享机器资源、灵活、轻量、易扩展、隔离等方面的重要意义。另一重要原因,是Gaia作为一个通用的云操作系统,适合所有类型的业务,但是各个业务的环境依赖是一个比较困扰用户的问题,因此我们引入Docker来解决,主要目的还是通过Docker来将Gaia云平台以更有效的方式呈献给各个业务。

您可否再补充下OS的版本?Docker的版本?除了Docker外,有没有使用生态圈中的其他软件?上面提到,集群规模是8800台,大概有多少Docker?性能如何?

InfoQ:阿里巴巴受邀加入WebScaleSQL,与Facebook、Google、Twitter和Linkedin这样的世界顶级团队共同研发WebScaleSQL,这可以说是中国公司在国际开源项目上的一次亮剑。能介绍下整个受邀的背景和过程么?

褚霸:阿里云RDS团队有MySQL源码小组专门负责维护阿里云的MySQL分支。团队的主要工作是源码级别上的改进,包括Bug修复、性能优化和定制化需求等。在我们改进过程中,如果是Bug修复类型的补丁,或者是足够通用的feature类型的补丁我们都会同时提交到上游,包括Oracle官方、MariaDB和Percona分支。阿里云RDS现在有大量的MySQL用户,在系统维护和服务用户的过程中会碰到各式各样的问题,我们在解决过程中也经常发起讨论,在社区是一个活跃的团队。

WebScaleSQL其他四家公司的参与者也是社区内的专家,讨论技术问题时经常互动,我们的工作大家也是比较了解的。因此在希望扩大WebScaleSQL的参与人员的时候,会邀请我们是情理之中的。最初是Facebook的一位华裔员工先联系的我们,然后我们也很快做了确认答复,整个过程是比较顺畅的。

InfoQ:能介绍下WebScaleSQL么?它有哪些吸引人的特性?接下来阿里云RDS是否准备使用WebScaleSQL?

@xishuixixia
xishuixixia / gist:8aa9a7888f0ddcf835c1
Last active January 15, 2016 09:37
邹达:国内BaaS平台正在落地

BaaS(Backend as a Service)是一种新型的云服务,旨在为移动和Web应用提供后端云服务,包括云端数据/文件存储、账户管理、消息推送、社交媒体整合等。BaaS是垂直领域的云服务,随着移动互联网的持续火热,BaaS也受到越来越多的开发者的亲睐。它作为应用开发的新模型,可以降低开发者成本,让开发者只需专注于具体的开发工作。

BaaS是移动中间件的替代品(或者说备选方案),它使用统一的API和软件开发工具包(SDK)来连接移动应用到后端云存储,传统的移动中间件通过本地的物理服务把后端服务集成到应用中。而BaaS通过云来集成后端服务。中间件和BaaS的最大不同是它们是否包含或者提供云的服务,BaaS可以说是PaaS平台在移动垂直领域的延伸,更可以说是移动中间件和云的融合。而现在它们都在以不同的形式来存在,云的优势很明显,那就是简单、成本低廉,中间件的优势是数据安全,易于扩展。所以从现在的趋势来看,它们不存在明显的取代关系,只不过可能以后BaaS的体量会更大。移动中间件将更多的被有能力的企业使用,同时也会有越来越多的中小型企业、开发者选择使用BaaS。

随着移动互联网的发展,移动行业的分工也会像其它行业一样逐渐细化,后端服务就是这样被抽象出来,它统一向开发者提供文件存储、数据存储、推送服务等实现难度较高的功能,以帮助开发者快速开发移动应用。在国外,BaaS服务已经受到巨头的重视,2013年4月,Facebook收购Parse;2014年6月,苹果发布了CloudKit;2014年10月,Google收购了Firebase。Parse、CloudKit、Filrebase都是国外知名的BaaS类产品,苹果和谷歌通过BaaS服务可以更好的完善其生态圈,Parse也可以帮助Facebook建立它在移动端的地位,从巨头们在BaaS方面的布局也可以看出BaaS的价值。总体来说,BaaS平台的优势包括:

  • 提高效率:减少移动APP开发中各个环
@xishuixixia
xishuixixia / gist:927e5f9e161650aec909
Created January 9, 2015 04:14
解读2014之Docker篇:才气、运气、勇气

####编者按

2014年,整个IT领域发生了许多深刻而又复杂的变化,InfoQ策划了“解读2014”年终技术盘点系列文章,希望能够给读者清晰地梳理出技术领域在这一年的发展变化,回顾过去,继续前行。

毫无疑问,Docker已经成为2014年最热门的技术之一,它被爱好者冠以云计算新星、下一代虚拟机等称号,可见大家对其的期望之高。2014年,Docker的发展可谓是一路凯歌,从年初的B轮融资到年末的DockerCon欧洲大会,Docker在这一年里顺风顺水,就连微软、谷歌、AWS这样的巨头也敬它三分。

InfoQ从2014年5月开始重点关注Docker,先后策划了深入浅出源码解读CoreOS实战Docker周报等系列专栏,共产出了百余篇新闻与文章,同时还建有两个千人的QQ群以供读者学习交流。在这一年里,作为负责Docker专栏的技术编辑,我密切关注了Docker的每一次融资、收购、合作,也亲身见证了一个技术的发展之路。本文作为Docker专栏的年终总结,分析了过去一年Docker的发展、模式、应用,并结合自己的理解展望了2015年Docker的发展以及与它相关的技术变革。

另本文的标题来自热播无胸版电视剧《武媚娘传奇》张公公之口。

@xishuixixia
xishuixixia / 107.md
Last active August 29, 2015 14:12 — forked from aliang2052/107.md

新闻

  1. 《神车来助力!大众汽车将支持Android Auto》:Google在去年发布了安卓系统的分支Android Auto,专用于汽车,和苹果的CarPlay展开竞争。目前越来越多的汽车厂商加入了Google的汽车开放联盟,采用Android Auto。现在,大众汽车也要支持Android Auto了!大众将会在今年推出支持Android Auto的车型,高尔夫等著名车型都会支持Android Auto。
  2. 《面向Android平板的Office预览版现全面开放》:在今年11月微软限量发布了针对Android平板的Office预览版本,只有少量注册用户才能访问使用。在经过数月反馈信息的收集,微软今天正式宣布面向所有Android平板用户开放Office预览版本,从而尽可能的收集更多反馈信息,为正式版发布做最后的准备。
  3. 《Android TV今春将登陆索尼、夏普、飞利浦产品》:在去年6月份举行的Google I/O大会上,谷歌发布了最新版本的Android TV智能电视操作系统,并于去年年末在自己的Nexus播放器上推出了该系统,使之首次与消费者见面。谷歌周二宣布,今年春季,谷歌的Android TV系统将登陆到索尼、夏普、飞利浦等厂商电视产品上。

###教程

  1. 《如何定位Android NDK开发中遇到的错误》:Android NDK 是在SDK前面又加上了“原生”二字,即Native Development Kit,因此又被Google称为“NDK”。NDK编译生成的.so文件作为程序的一部分,在运行发生异常时同样会造成程序崩溃。不同于Java代码异常造成的程序崩溃,在NDK的异常发生时,程序在Android设备上都会立即退出。文中作者介绍了如何利用调试工具定位NDK开发中遇到的错误。
  2. [《Android中Handler引起的内存泄露》](http:

新闻

  1. 《小米MIOS操作系统曝光》:最近,有媒体爆料,小米从去年早些时候就秘密开启了一款新操作系统的研发,和此前的MIUI不一样,并非基于Android系统而是基于Firefox系统深度定制。MIOS是一种基于浏览器虚拟的操作系统,用户可以通过浏览器在MIOS上进行应用程序的操作,同时它是以Linux内核为主体的嵌入式操作系统。为了MIOS系统,小米还收购了mios.cn和mios.com.cn两个域名。
  2. 《百度发布Android Wear语音搜索客户端》: 百度日前称,百度手表V1.0是一款为安卓智能手表操作系统(Android Wear)打造的搜索客户端,已登陆谷歌应用商店。百度宣称,对着手表说出想要搜索的内容,等候几秒后,搜索结果内容便会以相应的文字或图片形式展现在表盘上。
  3. 《小米新机发布时间和售价曝光》:据消息,小米将于近期发布一款新机——红米Note 2。该机将配备5.5英寸1080p显示屏,搭载八核64位处理器(骁龙615或MT6752),配置2GB内存+16GB机身存储,提供500万像素前置+1300万像素后置摄像头,电池容量为3000mAh以上,运行基于Android 4.4的MIUI 6系统。至于新机发布的时间,按照小米以往都选择在星期三召开发布会的习惯,红米Note 2很可能会在1月21或28日登场。

####教程

  1. 《Android任务和返回栈完全解析,细数那些你所不知道的细节》:一个应用程序当中通常都会包含很多个Activity,Activity之间是可以相互启动的。任务是一个Activity的集合,它使用栈的方式来管理其中Activity,这个栈又被称为返回栈(back stack),栈中Activity的顺序就是按照它们被打开的顺序依次存放的。该文章翻译自官方文档,对开发者了解Activity的运行原理非

Supersonic框架宣称iOS和Android混合应用也能有原生性能

摘要

Supersonic提供多页面框架,一个混合应用不再是单页面程序,而是由多个页面组成。页面之间通过原生的导航进行管理从而提供流畅的切换动画,整体感觉更像原生应用。

正文

AppGyver日前宣布了一个全新的用于开发Android和iOS混合(Hybrid)移动应用的Supersonic框架,并且承诺提供“真正的原生性能”,AppGyver说,这得益于一个全新设计的实现混合应用的方式。Supersonic也和其自家的跨平台混合应用IDE Steroids做了集成。

Supersonic以CSS框架IonicCordova为基础,但是它采用了另类的方式来混合使用HTML5代码和原生代码,被称之为多页面应用架构。这将给UI性能和处理页面复杂度带来好处,AppGyver说,因而比其他竞争方案有明显的性能优势。

@xishuixixia
xishuixixia / 1223.md
Last active August 29, 2015 14:11 — forked from aliang2052/1223.md
Android开发周报:Android 5.0.2发布

####新闻

  1. 《Android 5.0.2发布,目前仅限Nexus 7可升级》:Google近日发布了Android 5.0的又一个小幅度升级版5.0.2。该版本号是LRX22G,目前只有2012年Wi-Fi版的Nexus 7可升级。 2

  2. 《诺基亚Android新机曝光》:之前诺基亚发布了一款Android平板,这似乎也是他们向外界放出的一个积极信号,那就是不会轻易放弃移动终端,虽然2016年前手机业务不能涉及。现在有外媒送出了一张所谓诺基亚手机的设计图,运行Android系统(基于5.0的Z Launcher),其外形看上去跟小米手机2非常相似。

  3. 《红米1S手机Android 5.0刷机包放出》:继米2和米3之后,红米手机也迎来了Android 5.0。开发者日前在微博上放出了适用于红米手机1S电信版的Android 5.0.1刷机包,可使用TWRP2.8.x.x中文版REC双清后刷入。

####教程

  1. 《导入开源库到基于Android Studio构建的项目中》:谷歌发布了Android Studio 1.0的正式版,也有更多的人开始迁移到Android Studio进行开发。然而,网上很多的开源库,控件等还是以前的基于Eclipse进行开发,很多人不知道怎么导入到自己的基于Android Studio项目中来,作者介绍了一些常见的一些导包场景。
@xishuixixia
xishuixixia / gist:4d9bc8e52dcb46425807
Last active August 29, 2015 14:11
Android 5.0 技术新趋势

Android 5.0 技术新趋势

由于 Android 的版本分裂比较严重,整个新系统升级可能需要一两年甚至更长时间。所以目前使用 Android 5.0 的大部分是喜欢尝鲜的用户,同时现在市场上能够很好支持 Android 5.0 的应用又很少,如果开发者能捕捉这个机会,从这些用户那里得到更好的反馈,或者更好的证明机会,都是非常有价值的。

在 Android 5.0 发布之后,我认为有几个地方可以让开发者做得更好,比如可以建立一个更好看的应用,或者能够解决在应用中最大的性能问题——电量消耗的问题,等等。同时 Android 5.0 也带来了更多的可能性,让开发者可以做出不一样的应用,以及能够在更多的设备上部署服务。下面我分别介绍一下我对 Android 5.0 可能带来的技术趋势的看法。

###更美的应用——Material Design

在 Android 5.0 的宣传中强调最多的一个亮点就是「Material Design」,从设计语言来讲,这个特点是能在将整个素材铺平的同时还遵循一定的物理材质的需求。这样的设计可以让应用感觉更活泼、具有更丰富的颜色,有无处不在的阴影,以及动画效果更真实等等。对于技术来说,Material Design 解决了两个非常大的问题,其一是「阴影」,它所有的阴影都是默认系统实现的——只要配置 Z 轴的高度,所有的阴影都可以通过系统默认实现。