Google《Android性能优化》学习笔记
渲染篇1) Why Rendering Performance Matters现在有不少App为了达到很华丽的视觉效果,会需要在界面上层叠很多的视图组件,但是这会很容易引起性能问题。如何平衡Design与Performance就很需要智慧了。2) Defining...
View Article10种简单的Java性能优化
你是否正打算优化hashCode()方法?是否想要绕开正则表达式?Lukas Eder介绍了很多简单方便的性能优化小贴士以及扩展程序性能的技巧。最近“全网域( Web Scale)”一词被炒得火热,人们也正在通过扩展他们的应用程序架构来使他们的系统变得更加“全网域”。但是究竟什么是全网域?或者说如何确保全网域?扩展的不同方面全网域被炒作的最多的是扩展负载(Scaling...
View Article优化 SQL SELECT 语句性能的 6 个简单技巧
SELECT语句的性能调优有时是一个非常耗时的任务,在我看来它遵循 帕累托原则。20%的努力很可能会给你带来80%的性能提升,而为了获得另外20%的性能提升你可能需要花费80%的时间。除非你在...
View Article用“逐步排除”的方法定位Java服务线上“系统性”故障
李斯宁(高级测试开发工程师)一、摘要由于硬件问题、系统资源紧缺或者程序本身的BUG,Java服务在线上不可避免地会出现一些“系统性”故障,比如:服务性能明显下降、部分(或所有)接口超时或卡死等。其中部分故障隐藏颇深,对运维和开发造成长期困扰。笔者根据自己的学习和实践,总结出一套行之有效的“逐步排除”的方法,来快速定位Java服务线上“系统性”故障。二、导言Java语言是广泛使用的语言,它具有跨平台的...
View ArticleScrum——在变化中求进化
贾儒(高级开发工程师)移动互联网当道的今天,变化已经是大家习以为常的事情了。也许昨天还在街边苦等久久不来的出租车,今天已经可以在手机上点点预约车辆准时到达门口。优秀的产品带来了生活习惯、甚至生活方式的变化,这是从前无法想象的。在这背后则是互联网产品服务的变化,在这个大潮中,“进化”的周期变得越来越短,大家也许还记得当年各大杀毒软件厂商,每年才会发布一个新的功能版本,而如今几乎每一天大家的手机上都会收...
View ArticlePresto 来自Facebook的开源分布式查询引擎
PrestoDB 来自Facebook的开源分布式查询引擎Presto是一个分布式SQL查询引擎, 它被设计为用来专门进行高速、实时的数据分析。它支持标准的ANSI SQL,包括复杂查询、聚合(aggregation)、连接(join)和窗口函数(window...
View Article从底层理解Python的执行
最近我在学习 Python 的运行模型。我对 Python 的一些内部机制很是好奇,比如 Python 是怎么实现类似 YIELD VALUE、YIELDFROM 这样的操作码的;对于 递推式构造列表(List Comprehensions)、生成器表达式(generator expressions)以及其他一些有趣的 Python...
View Article学习笔记:The Log(我所读过的最好的一篇分布式技术文章)
前言 这是一篇学习笔记。学习的材料来自Jay Kreps的一篇讲Log的博文。原文很长,但是我坚持看完了,收获颇多,也深深为Jay哥的技术能力、架构能力和对于分布式系统的理解之深刻所折服。同时也因为某些理解和Jay哥观点吻合而略沾沾自喜。Jay Kreps是前Linkedin的Principal Staff...
View Article学习笔记:Twitter核心数据类库团队的Hadoop优化经验
一、来源Streaming Hadoop Performance Optimization at Scale, Lessons Learned at Twitter(Data platform @Twitter)二、观后感2.1 概要 此稿介绍了Twitter的核心数据类库团队,在使用Hadoop处理离线任务时,使用的性能分析方法,及由此发现的问题和优化手段,对如何使用JVM/HotSpot...
View Article为 Java 程序员准备的 Go 入门 PPT
这是 Google 的 Go 团队技术主管经理 Sameer Ajmani 分享的 PPT,为 Java 程序员快速入门 Go 而准备的。视频这个 PPT 是 2015年4月23日在 NYJavaSIG中使用的。前往 YouTube 观看视频 主要内容1. Go 是什么,谁在使用 Go? 2. 比较 Go 和 Java 3. 代码示例 4. 并发 5. 工具Go 是什么?“Go...
View Article防范 DDoS 攻击的 15 个方法
为了对抗 DDoS(分布式拒绝服务)攻击,你需要对攻击时发生了什么有一个清楚的理解. 简单来讲,DDoS 攻击可以通过利用服务器上的漏洞,或者消耗服务器上的资源(例如 内存、硬盘等等)来达到目的。DDoS 攻击主要要两大类: 带宽耗尽攻击和资源耗尽攻击. 为了有效遏制这两种类型的攻击,你可以按照下面列出的步骤来做:1. 如果只有几台计算机是攻击的来源,并且你已经确定了这些来源的 IP 地址,...
View ArticleRedis 的 5 个常见使用场景
在这篇文章中,我们将阐述 Redis 最常用的使用场景,以及那些影响我们选择的不同特性。1、会话缓存(Session Cache)最常用的一种使用Redis的情景是会话缓存(session...
View Article运维角度浅谈MySQL数据库优化
一个成熟的数据库架构并不是一开始设计就具备高可用、高伸缩等特性的,它是随着用户量的增加,基础架构才逐渐完善。这篇博文主要谈MySQL数据库发展周期中所面临的问题及优化方案,暂且抛开前端应用不说,大致分为以下五个阶段:...
View Article6行代码实现一个 id 发号器
id 发号器的问题, @一乐的这篇文章说的很透彻了: http://weibo.com/p/1001603800404851831206但参考实现就显得有些复杂。最近在雪球工作中正好需要用到发号器,于是用 Lua 在 Redis 上实现了一个最简单的: -- usage: redis-cli -h 10.10.201.100 -p 10401 EVAL "$(cat getID.lua)" 1...
View Article比较全面的MySQL优化参考
本文整理了一些MySQL的通用优化方法,做个简单的总结分享,旨在帮助那些没有专职MySQL DBA的企业做好基本的优化工作,至于具体的SQL优化,大部分通过加适当的索引即可达到效果,更复杂的就需要具体分析了,1、硬件层相关优化1.1、CPU相关在服务器的BIOS设置中,可调整下面的几个配置,目的是发挥CPU最大性能,或者避免经典的NUMA问题:1、选择Performance Per Watt...
View Article搭建远程会议系统(简单得集成到edx里)
这一周简直就是在客串系统管理员啊,搭建各种服务还是挺有意思的公司目前人员比较分散,挺多城市都有,可能需要召开远程会议什么的。edx项目中似乎也有远程教学的需求,所以准备搭建一个远程会议系统github首先当然是去github搜索一番,键入conference。按照star降序排列我们看到:WebRTC-Experimentbigbluebuttonvoicechat筛选一番觉得bigbluebutt...
View Article