自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(291)
  • 收藏
  • 关注

原创 关于服务性能优化思考

一、服务指标1.应用性能指标     QPS/QPM     Response Meantime     TP 90/95/992.机器性能指标1)内存和线程指标JVM本身提供了一组管理的API,通过该API,我们可以获取得到JVM内部主要运行信息,包括内存各代的数据、JVM当前所有线程及其栈相关信息等等。各种JDK自带的剖析工具,包括jps

2017-03-06 23:58:35 5185 1

原创 分布式理论:关于一致性讨论

一、回顾分布式特点   1.集中式特点      一台或多台计算机组成中心接节点,所有的数据都存在中心节点上。Client端只负责数据的展示,Server处理数据的存储和处理。显而易见,优点是结构简单容易部署,无需考虑服务多个节点部署,更不用考虑节点之间的协调。缺点是系统性能以来中心节点的性能,无法水平扩展。   2.分布式特点     对等:各个节点没有主次之分

2016-07-31 14:34:58 3850

原创 教你如何对ios崩溃(crash)日志做符号化

一、场景        客户端的开发流程都相似,如android,搞ios开发就要不停地发版本,随之而来的就是各种版本的崩溃日志(称为crash log)。如果不能好好地管理,那么开发人员很快就会在crash log和版本的海洋里迷失方向。解决崩溃问题是移动应用开发者最日常的工作之一。如果是开发过程中遇到的崩溃,可以根据重现步骤调试,但线上版本就无能为力了。        国内,一

2016-02-23 20:28:43 23209 1

原创 ios的crash分析工具

最近搞ios的crash log的分析,总结一下:搞iPhone开发就要不停地发版本,随之而来的就是各种版本的crash log。如果不能好好地管理,那么开发人员很快就会在crash log和版本的海洋里迷失方向。作为后台平台的开发,时刻为客户端着想,操醉了心的。MAC上有个免费的小工具——dwarfdump,可以简便地检测出app和相应的dSYM。使用起来很简单。分三步即可。

2015-11-22 17:27:18 1269

原创 教你如何对产品做AB测试(abtest)

我们经常会面临多个设计方案的选择,比如app或pc端某个界面的某个按钮是用红色还是用蓝色,是放左边还是放右边。传统的解决方法通常是集体讨论表决,或者由某位专家或领导或文青来拍板,实在决定不了时也有随机选一个上线的。虽然传统解决办法多数情况下也是有效的,但A/B 测试(A/B Testing)可能是解决这类问题的一个更好的方法。所谓 A/B 测试,简单来说,就是为同一个目标制定两个方案(比如

2015-10-17 13:16:57 123065

原创 如何成为一个系统/服务/模块的owner

(本人表示任重道远,惭愧)基本技能:各种应用技术 by Ominent Shopper Helper" style="color:rgb(53,114,176); left:auto; top:auto; border:0px!important; bottom:auto!important; clip:auto!important; clear:none!important; d

2015-10-11 23:02:29 2205

原创 从一次 FULL GC 卡顿谈对服务的影响

问题的发现:看到线上的服务机器一些节点时不时地有TCP报警 ,所以我们断定是TCP的连接出现了问题。让我们来回顾一下TCP的三次握手和四次挥手,借网上的一个图: sinai full gc with promotion failed > image2015-9-16 22:15:46.png" height="250" src="http://wiki.sa

2015-09-19 18:58:35 11720 6

原创 线上事故处理总结

1、线上有些机器cpu idle(cpu空闲时间)和load avg(系统负载)报警;这个跟业务逻辑还不太一样,如果业务逻辑错误还可以看 error日志,看看zabbix上监控的上游服务时间相应等等 sinai一次线上问题排查总结 > image2015-8-5 23:49:56.png" src="http://wiki.sankuai.com/download/attachment

2015-08-06 23:51:59 2841

原创 面试经验

1、两个栈实现一个队列2、邮递员最优解建模,匀速,总时间固定,不同包裹价格不同,路径不同,找利益最大化路径3、jvm知识,调优的事例4、设计模式5、数据库索引原理,建索引原则,分库分表6、如何RPC服务进行治理

2015-07-14 12:17:09 669

原创 面试经验

1.常用的哈希算法,怎么解决冲突?好坏?2.java中,hashMap的数据结构?怎么实现?为什么要这么实现?java中concurrentHashMap数据结构?怎么支持并发?put()、get()、remove()实现?怎么利用锁机制?3.四层网路机构?tcp/Ipx协议?tcp和udp的区别?tcp三次握手四次分手的过程?以及各个状态?其中time_w

2015-07-10 00:29:49 937

原创 java HashMap以及concurrenHashMap

1、hash必须解决哈希冲突和溢出问题2、开放定值法:散列表中形成一个探查(测)序列      线性探测:溢出、删除、堆聚      线性补偿再探测      随机探测3、拉链法:key为同义词的节点放在单连表中,散列表是指针数组,存的是链表的头指针。key的hashCode值某些运算(hash值离散化表取摸),然后计算出key在Entry数组中的下标。hash用来均匀化一

2015-07-07 02:27:26 2196

原创 java 锁机制

死锁是两个甚至多个线程被永久阻塞时的一种运行局面,这种局面的生成伴随着至少两个线程和两个或者多个资源。线程以向第一个对象获取封锁这种方式运行。但是当它试着像第二个对象获取封锁时,它就会进入等待状态,因为它已经被另一个线程封锁住了。这样,在线程引起死锁的过程中,就形成了一个依赖于资源的循环。为了分析一个死锁,关注下应用中的Java线程转存,可以使用VisualVM收集资料或者jstack

2015-06-22 02:55:18 697

原创 hashmap 和 concurrentHashMap

通过Hashtable就知道,synchronized是针对整张Hash表的,即每次锁住整张表让线程独占,ConcurrentHashMap允许多个修改操作并发进行,其关键在于使用了锁分离技术。它使用了多个锁来控制对hash表的不同部分进行的修改。ConcurrentHashMap内部使用段(Segment)来表示这些不同的部分,每个段其实就是一个小的hash table,它们有自己的锁。只要多个

2015-06-21 22:58:56 593

原创 Java HashMap 设计原理

HashMap 是Java使用非常频繁的一个类,由于最近比较清闲,特地翻看一下源码。下面为自己的个人体会,其中部分地方参考了网上的一些文章。 1.HashMap的存储特点。 既然叫HashMap,那么它就具有哈希表的一些特点:(1)需要哈希方法,把关键字映射到哈希表中(2)需要解决哈希冲突问题,即不同的关键字映射到同一个哈希地址上。这里先说哈希冲突的解决问题。(该图来源

2015-06-21 21:00:52 687

原创 java 基础整理

1.线程和进程的关系:进程是独立的运行环境,可以看作一个程序或应用,线程可以看作进程中的一个任务,几个进程可以同时有多个线程在运行,线程可以被称为轻量级进程,线程需要较少的资源来创建和驻留在进程中,并且可以共享进程中的资源。2.多线程编程的好处:多线程并发可以提高程序的效率,CPU不会因为某个线程需要等待资源而进入空闲状态,servlet通过多线程方式运行其service方法,一个实例

2015-06-21 20:53:53 878

原创 平台日志服务实现思路

*/一背景二目标三初步实现思路1)参考COS组记录日志系统(基于文档的存储)2)基于数据库的存储思路(1)K-V形式存储(medis)(2" style="margin:0px; padding:0px; font-size:24px; font-weight:normal; line-height:1.25; border-bottom-color:rgb(204,204,204)">

2014-12-17 17:45:15 3701

原创 前端知识--浏览器是如何根据文本渲染的

一、各浏览器使用的内核Apple的Safari, Google的Chrome,  by Ominent Shopper Helper" style="color:rgb(59,115,175); border:none!important; display:inline-block!important; float:none!important; font-weight:bold!impo

2014-12-10 21:14:17 1015

原创 前端知识--学习理解JS

1 web网站开发的主要原则– 用标签元素HTML描述网页的内容结构;– 用CSS描述网页的排版布局样式表的首要目的是为网页上的元素精确定位。其次,把网页上的内容结构和格式控制相分离。即html的标签主要是定义网页的内容,而CSS决定这些网页内容如何显示;– 用JavaScript描述网页的事件处理,即鼠标或键盘在网页元素上的动作后的程序,当用户在客户端的浏览器中显示该网页时,浏览器就会执

2014-12-10 21:12:33 910

原创 前端知识--CSS

1 样式解决什么样的问题HTML 标签原本被设计为用于定义文档内容。通过使用 、、 by Ominent Shopper Helper" style="color:rgb(59,115,175); border:none!important; display:inline-block!important; float:none!important; font-weight:bold!imp

2014-12-10 21:09:59 1247

原创 java web 前端开发框架和流程

1  通常 Java Web 开发框架举个例子,对于广告系统的来说, 我们先不管一些job, by Ominent Shopper Helper" style="color:rgb(59,115,175); border:none!important; display:inline-block!important; float:none!important; font-weight

2014-12-10 21:08:33 35277 4

转载 git命令

http://justcoding.iteye.com/blog/1830388

2014-07-11 01:59:24 605

原创 个人版双向链表的操作

#include #include #include #include using namespace std;typedef struct node{ int data; struct node *pre,*next;}LNode,*ListNode;void InIt(ListNode list){ assert(list!

2014-04-28 17:33:33 649

转载 C语言字符串库函数的实现

http://www.cnblogs.com/luxiaoxun/archive/2012/09/04/2670202.html

2014-04-21 15:55:02 748

转载 操作系统基础知识

操作系统常见面试题总结 1、什么是进程(Process)和线程(Thread)?有何区别?  进程是具有一定独立功能的程序关于某个数据集合上的一次运行活动,进程是系统进行资源分配和调度的一个独立单位。线程是进程的一个实体,是CPU调度和分派的基本单位,它是比进程更小的能独立运行的基本单位。线程自己基本上不拥有系统资源,只拥有一点在运行中必不可少的资源(如程序计数器,一组寄存器和栈)

2014-04-20 16:57:35 679

原创 C++学习笔记---利用对象、引用、指针调用虚函数

虚函数总结:             虚函数只能是类成员函数,它在基类体内部说明,目的是提供一种接口界面;        虚函数不能是友元函数(即非成员函数),也不能是静态成员函数,因为虚函数调用要靠特定的对象来决定该激活哪个函数。虚函数可以在另一个类中被声明为友元函数;   一旦一个函数定义为虚函数,那么无论它传下多少层,都将保持为虚函数,而不必每

2014-04-19 21:51:32 2090

转载 C++之运算符重载

http://www.cnblogs.com/CaiNiaoZJ/archive/2011/08/12/2136598.html

2014-04-19 21:20:24 677

转载 C++:静态联编和动态联编

http://blog.csdn.net/blucexi/article/details/1253265

2014-04-19 21:18:59 561

转载 c++中const使用详解

http://blog.sina.com.cn/s/blog_4a41aeb80100ylpr.html

2014-04-19 15:09:51 561

原创 希尔排序

package com.yunix.shellSort;import java.util.Random;public class Sort { /** * 希尔排序也是一种插入排序方法,实际上是一种分组插入方法 * 先取一个小于n的整数d1作为一个增量,把表的全部记录分成d1个组,所有 * 距离为d1的倍数的记录放在同一个组中,在各组内进行直接插入排序,然后 * ,取第

2014-04-19 15:09:07 593

原创 二叉树的最低公共祖先(剑指offer)

#include #include #include #include #include using namespace std;#define M 2002*2typedef struct Tree{ int data; struct Tree *lson,*rson;} Tnode,*ListTree;int cnt;ListTree a,b;int

2014-04-19 14:12:06 880

原创 递增数列中找和为s乘积最小的两个数

#includevoid getSumKPair(int *arr, int n, int k, int &a, int &b){ int nLow, nHigh; long long product; nLow = 0, nHigh = n-1; a = b = -1, product = 0x7fffffff; int flag=0; wh

2014-04-18 14:44:01 877

原创 不用加减乘除做加法

#include #include #include #include using namespace std;#define M 1001int judge(int n,int m){ if(m==0) return n; return judge(n^m,(n&m)<<1);}int main(){ int n,m; whi

2014-04-18 13:50:08 520

原创 判断B树是否是A的子树

#include #include #include #include using namespace std;#define M 1001typedef struct Tree{ int data; struct Tree *lson,*rson;} TNode,*ListTree;ListTree built(int n){ int val;

2014-04-18 13:36:12 809

原创 非递减合并两个有序单链表

#include #include #include using namespace std;typedef struct Node{ int data; struct Node * next;} LNode,*LinkList;LinkList built(int n){ LinkList p,r,list; list=(LinkList)mal

2014-04-18 00:43:47 3774

转载 python脚本

http://www.jb51.net/article/926.htm

2014-03-31 21:30:59 575

原创 字符串的组合[算法]

http://zhedahht.blog.163.com/blog/static/2541117420114172812217/

2014-03-29 21:07:38 630

转载 判断二叉树是不是平衡[数据结构]

http://zhedahht.blog.163.com/blog/static/25411174201142733927831/

2014-03-29 20:46:22 601

转载 strcpy/memcpy/memmove的实现

1.memmove函数原型:void*memmove(void*dest, constvoid*source, size_t count)返回值说明:返回指向dest的void *指针参数说明:dest,source分别为目标串和源串的首地址。count为要移动的字符的个数函数说明:memmove用于从source拷贝count个字符到dest,如果目标区域和源

2014-03-29 16:09:43 964

原创 Xkeyideal赐教取经之路

1、以字符串、二分、二叉树、大数据、一些技巧性算法为主2、而且千万记住的是要规范自己的编程规范,面试手写代码不比做acm,指针判空等。3、以前写二分扣分点:接口纠正(int find (int *a ,int l,int r,int num)),解决溢出((right - left)>>1 + left)4、求字符串扣分点:assert(str != NULL);异常问题5、另外练

2014-03-28 17:17:46 807

转载 C语言基础笔试面试题

http://www.mianwww.com/?p=12903

2014-03-22 21:18:53 813

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除