(五十二) Android anr 分析步骤总结
前言:最近经手了比较多的anr问题,声明经手不是解决,只是从log上推断造成anr的原因,以此作为根据转交给对应的人来处理。(四十三)统计应用具体方法执行时长-AndroidProfilerCPU原文出处
搭建keepalived+mysql主从复制高可用
准备工作:完成keepalived的安装完成docker的安装docker镜像里面自行安装iproute2, vim, iputils-ping(可选)等工具,便于测试apt-get install iproute2apt-get install vimapt-get install iputils-ping 主数据库master1.使用docker安装mysqlmkdir -p ~/compos
深入浅出地,彻彻底底地理解python中的编码
python处理文本的功能非常强大,但是如果是初学者,没有搞清楚python中的编码机制,也经常会遇到乱码或者decodeerror。本文的目的是简明扼要地说明python的编码机制,并给出一些建议。问题1:问题在哪里?问题是我们的靶子,心中没有问题去学习就会抓不住重点。本文使用的编程环境是centos6.7,python2.7。我们在shell中键入python以打开python命令行,并键入如
JavaScript 原型概念深入理解
原文链接原型是JavaScript中一个比较难理解的概念,原型相关的属性也比较多,对象有”[[prototype]]”属性,函数对象有”prototype”属性,原型对象有”constructor”属性。为了弄清原型,以及原型相关的这些属性关系,就有了这篇文章。相信通过这篇文章一定能够清楚的认识到原型,现在就开始原型之旅吧。认识原型开始原型的介绍之前,首先来认识一下什么是原型?在JavaScrip
iOS中对NSArray中自定义的对象进行排序
原文链接我们开发的每个程序都会使用到一些数据,而这些数据一般被封装在一个自定义的类中。例如一个音乐程序可能会有一个Song类,聊天程序则又一个Friend类,点菜程序会有一个Recipe类等。有时候我们希望在程序中显示的列表数据是按照一定顺序进行排列的,本文我们就来看看在iOS中有哪些方法可以对NSArray中的对象进行排序。下面是目录:小引使用NSComparator进行排序使用NSDescri
PHP5.3利用PDO连接MSSQL
PHP5.3利用PDO连接MSSQL2000,纠结好久,终于连接成功!现将PDO成功连接MSSQL的步骤简要整理如下:1、下载microsoftdrivers forphpforsqlserver(目前有2.03.0版本,分别又分有ts和nts版,可通过phpinfo()中的ThreadSafety:enable确认是ts,详见驱动自带手册)2、复制驱动至php文件夹的ext文件夹后,修改php.
PHP之编译安装
1.安装php所需的软件包 [root@zhu1~]#yum-yinstalllibjpeglibjpeg-*libpnglibpng-*libmcryptlibmcrypt-*fteetypefreetype-*zlibzlib-*bzip2bzip2-*ncursesncurses-*libxml2libxml2-*2.解压,打补丁,编译,安装 [root@zhu1~]#tarzxvfphp-
python笔记一
字符串学习----------input交互输入----------name = input( 'please enter your name:' )print (name)----------input交互输入计算----------value1 = 1024 * 512value2 = input('num1:')value3 = input('num2:')print (value1)pri
手摸手教你写一个vue的toast弹窗组件
相信普通的vue组件大家都会写,定义->引入->注册->使用,行云流水,一气呵成,但是如果我们今天是要自定义一个弹窗组件呢?首先,我们来分析一下弹窗组件的特性(需求):轻量--一个组件小于1Kib(实际打包完不到0.8k)一般都是多处使用 --需要解决每个页面重复引用+注册一般都是跟js交互的 --无需在里面写今天,我们就抱着上面2个需求点,来实现一个基于vue的toast弹窗组件,下图是最终完成
python flask flash消息闪现
flash消息闪现很多人都不用flash这个组件,其实特别好用。好的应用和用户界面的重点是回馈。如果用户没有得到足够的反馈,他们可能最终会对您的应用产生不好的评价。Flask提供了一个非常简单的方法来使用闪现系统向用户反馈信息。闪现系统使得在一个请求结束的时候记录一个信息,然后在且仅仅在下一个请求中访问这个数据。这通常配合一个布局模板实现。具体请查看:http://docs.jinkan.org/
精通 Node 爬虫 -03- 知乎专栏爬虫实战
《nodejs爬虫——知乎专栏》,并没有详细的说明这个爬虫的全部工作原理,只是贴了一份代码。经过了一年,原来的代码已经做了很多优化,并使用了知乎的api模块,后来发现api模块的作者很久没有维护导致API不可以,所以自己手动维护了知乎专栏的一小部分,不过并没PR(作者issues都不回复了,PR也没人理的)。代码仓库,这里就不多说了。README吧。
Hive:percentile_approx 原理与实现
背景不久前,我们处理了一个用户工单,该工单对应的HQL如下所示:这个HQL看上去并不复杂,其目的不过是计算column0这个字段的几个近似分位点(percentile_approx),就一个stage,应该会比较顺利地完成计算才对。不巧的是,其MapReduce任务在reduce阶段抛出如下异常:顺着stacktrace,我跟踪了一下NumericHistogram(为了支持percentile_
CSS预处理语言的模块化实践
原文链接:http://www.codeceo.com/article/modularization-of-css-preprocessing-language.html编写css是前端工作中,一项普通而又频繁的劳动,由于css并不是一门语言,所以在程序设计上显得有些简陋。对于小型项目来说,css的量还不至于庞大,问题没有凸显,而如果要开发和持续维护一个较为大型的项目,那就需要对css进行管理和规
对软件测试的10大误解(上)
在IT行业,特别是那些并不真正从事软件测试行业的业者,对软件测试往往有一些常见的误解,对测试行业的发展和健康都有不利的影响。本文总结了10大常见误解,希望能起到一些正本清源的作用一、测试工程师的工作是破坏软件“测试工程师的工作就是破坏软件”是一个常见的误解。作为程序员十大金句之首的“在我机器上是好的”往往来源于这一误解。测试人员好像有什么魔力,能够把正确运行的程序在测试环境上搞得不能工作。但是这不
在多个页面使用同一个HTML片段方法
上一篇文章中我们使用textarea来模拟AJAX的返回结果,造成了一些误解。这里我们首先用asp.net的GenericHandler做一个简单的后台来重现这个AJAX过程。1.HTML页面: $(function() { $("#clickToInsert").click(function() { $.get("service.ashx?file=pa
redis 入门 非关系数据库
nosql非关系数据库(redismongodb)优点:去掉了关系数据库的"关系特性"易扩展有非常高的读写性能尤其在大数据量下灵活的数据模型(无需提前简历字段)高可用缺点:没有统一的标准层出不穷四大分类:一、键值对存储=>redis优势:查找速度比较快劣势:存储数据缺少结构化二、列存储优势:查找速度比较快扩展性强劣势:功能比较局限性三、文档数据库=>MongoDB优势:数据结构要求不严格劣势:查询
.NET IL实现对象深拷贝
对于深拷贝,通常的方法是将对象进行序列化,然后再反序化成为另一个对象。例如在stackoverflow上有这样的解决办法:https://stackoverflow.com/questions/78536/deep-cloning-objects/78612#78612。这种序列化的方式,对深拷贝来讲,无疑是一个性能杀手。今天大家介绍一个深拷贝的框架DeepCopy,github地址:https:
饿了么vue,项目创建流程代码篇(beterr-scroll基本使用)
惯例插件安装导入npminstall--save-devbetter-scroll使用的基本流程1.给要滚动的内容区域div等,定义一个可做标识的class类,这里使用xx-xx-hook2.惯例导入插件importxxfrom'better-scroll',此处这里的别名将作为实例化对象的构造类3.实例对象,传入滚动内容元素,因为要监听内容区域的高度,所以初始化应在created过程中去监听,这
组件划分(父组件向子组件传递信息)----记录每天的学习
vue里面组件的划分:1、功能模块:如selectpagenation...2、页面区域:如headerfootersidebar...Vue组件的实现---components1、app.vue里面引入组件2、通过components来注册组件如:importHeaderform'./header'importFooterform'./footer'newVue({data:{isShow:tr
入门Java简易的扑克牌
创建玩家packagecom.pukepai;publicclassMan{privateIntegerid;privateStringname;publicMan(Integerid,Stringname){this.id=id;this.name=name;}publicIntegergetId(){returnid;}publicvoidsetId(Integerid){this.id=id