- 博客(75)
- 收藏
- 关注
转载 何登成大神对Innodb加锁的分析
背景MySQL/InnoDB的加锁分析,一直是一个比较困难的话题。我在工作过程中,经常会有同事咨询这方面的问题。同时,微博上也经常会收到MySQL锁相关的私信,让我帮助解决一些死锁的问题。本文,准备就MySQL/InnoDB的加锁问题,展开较为深入的分析与讨论,主要是介绍一种思路,运用此思路,拿到任何一条SQL语句,都能完整的分析出这条语句会加什么锁?会有什么样的使用风险?甚...
2017-12-20 13:37:00
257
转载 有没有必要参加IT培训
近几年,IT培训机构可谓是琳琅满目,稂莠不齐。培训Java的,培训PHP的,培训大数据的等等吧,不一而足。自己也算是IT技术圈子待了好多年了,面试过一些机构培训出来的学生,也有几个好哥们在培训机构做讲师,所以对培训机构有一定了解。这里呢,就不讨论选择哪个培训机构,也不讨论培训什么技术,只想对是否需要参加培训,谈谈我个人的看法。一、对于零基础的人。零基础的人,要么是大...
2017-11-26 11:32:00
244
转载 做技术,有没有必要参加IT培训
近几年,IT培训机构可谓是琳琅满目,稂莠不齐。培训Java的,培训PHP的,培训大数据的等等吧,不一而足。自己也算是IT技术圈子待了好多年了,面试过一些机构培训出来的学生,也有几个好哥们在培训机构做讲师,所以对培训机构有一定了解。这里呢,就不讨论选择哪个培训机构,也不讨论培训什么技术,只想对是否需要参加培训,谈谈我个人的看法。一、对于零基础的人。零基础的人,要么是大...
2017-11-25 21:09:00
262
转载 unable to create new native thread
一、认识问题:首先我们通过下面这个测试程序来认识这个问题:运行的环境(有必要说明一下,不同环境会有不同的结果):32位 Windows XP,Sun JDK 1.6.0_18, eclipse 3.4,测试程序:import java.util.concurrent.CountDownLatch; public class TestNativeOutO...
2017-06-07 10:11:00
240
转载 一不小心,陷入TCP的性能问题
一、现象 在一次访问请求nginx中,通常只需要几毫秒的RT,但当请求数据达到某一个数值时,rt明显提高,甚至超过了300毫秒。 二、问题的原因 大家都知道,TCP为了提高带宽利用率和吞吐量,做了各种优化。比如delay ack和Nagle算法。就是这样的一些优化使用不慎,导致陷入性能问题。接下来就先分别说说delay ack和Nagle算法。什么是delay a...
2017-06-02 21:51:00
124
转载 Broken pipe错误终极解释
叙述 想必或多或少在Java的服务器都会遇到过这种异常,如下图 由于Java偏上层,日常开发接触系统底层的机会偏少,要搞清楚什么原因导致的这种异常,肯定是先要百度google一番。网络解释云里雾里 百度+google下,巴拉巴拉还真不少介绍这个错误的文章。欣喜地翻了一篇又一篇,但好像我依旧不明白具体什么原因导致的,云里雾里啊。...
2017-03-17 13:05:00
3810
转载 peer not authenticated的终极解决方案
一、前述 使用httpclient发起https请求时,可能会遇到如下异常:javax.net.ssl.SSLPeerUnverifiedException: peer not authenticated at sun.security.ssl.SSLSessionImpl.getPeerCertificates(SSLSessionImpl.java:397)...
2016-12-30 19:24:00
1314
转载 天天写业务代码,如何成为技术大牛
前序 在工作之余浏览公司的技术网站,看到了以下这篇文章,细细读来真心觉得不错,写得有价值很实在。于是想联系下作者,问一下是否可以转载。打开钉钉一搜,作者是资深技术专家,差不多就是技术总监级别啊,这也从侧面旁征了,以下的内容是有其亲身经历,切实体会的,而不是鸡汤口号之流。相较与作者的级别,自己确实惭愧汗颜,所以没好直接聊天询问而是在文章底下留言。在得到了作者的同意后将文章的内容贴到...
2016-11-04 18:02:00
125
转载 从N个元素的集合中随机取m个元素的算法实现
最近有一个需求,比较简单,就是如标题所说的,从N个元素中随机取m个元素,当然这m个元素是不能存在重复的。本以为这么简单的需求,应该有现成的工具类来实现,但是几次查找居然没找到(有知道的可以推荐下哈^_^)。只好自己实现了下。 自己的实现思路也不知道是不是有问题,或者还有没有更好的思路来实现,所以在这里贴出来,供有兴趣的猿友提提建议、找找问题,或者找到更好的实现思路。 废话...
2016-10-19 09:32:00
349
转载 IntelliJ IDEA 内存优化最佳实践
提醒:此文是博主摘自其他地方的,觉着不错就贴到自己的博客里留作笔记用,同时也作分享用。无意冒犯原创。本文作者在和同事的一次讨论中发现,对 IntelliJ IDEA 内存采用不同的设置方案,会对 IDE 的速度和响应能力产生不同的影响。 Don’t be a Scrooge and give your IDE some more memory 不要做守财奴,给ID...
2016-10-16 20:57:00
108
转载 Mysql5.6 online ddl
Innodb性能改善方面: --Users can add indexes and perform standard table alterations while the database remains available for application updates。 支持在线操作(add index、alter table):例子一:在线添加索引:开启一个sessi...
2016-07-08 19:34:00
107
转载 Mysql 中 show full processlist
processlist命令的输出结果显示了有哪些线程在运行,可以帮助识别出有问题的查询语句,两种方式使用这个命令。1. 进入MySQL/bin目录下输入mysqladmin processlist;2. 启动mysql,输入show processlist;如果有 SUPER 权限,则可以看到全部的线程,否则,只能看到自己发起的线程(这是指,当前对应的MySQL帐户运行的线程...
2016-07-05 07:31:00
102
转载 spring整合mybatis使用<context:property-placeholder>时的坑
背景 最近项目要上线,需要开发一个数据迁移程序。程序的主要功能就是将一个数据库里的数据,查询出来经过一系列处理后导入另一个数据库。考虑到开发的方便快捷。自然想到用spring和mybatis整合一下。甚至用mybatis的自动代码生成,可以省下大量dao层的开发。整合的坑 之前的项目:以前也有过这种类似的程序,就把spring和mybatis整合的配置直接拿来修改...
2016-06-24 11:14:00
120
转载 TCP四步挥手的各种状态转换图
对于TCP四步挥手时的各种状态转换,网上有很多资料。但是有很多描述不是很容易理解,甚至是描述错误,不如这篇文章里http://www.cnblogs.com/Jessy/p/3535612.html#3428191 说:对此我表示不以为然。而且很容易误导初学者。在这里我贴出一个网上画的比较好的TCP四步挥手时的状态转换图:转载于:https://www.cnblogs.com...
2016-05-12 08:13:00
134
转载 TCP四种计时器
TCP共使用以下四种计时器,即重传计时器、坚持计时器、保活计时器和时间等待计时器。这几个计时器的主要特点如下:1、重传计时器当TCP发送报文段时,就创建该特定报文段的重传计时器。可能发生两种情况:(1)、若在计时器截止时间到(通常是60秒)之前收到了对此特定报文段的确认,则撤销此计时器。(2)、若在收到了对此特定报文段的确认之前计...
2016-05-10 22:38:00
198
转载 TCP滑动窗口机制的简洁模型
模型图:我们可以大概看一下上图的模型:首先是AB之间三次握手建立TCP连接。在报文的交互过程中,A将自己的缓冲区大小(窗口大小)3发送给B,B同理,这样双方就知道了对端的窗口大小。A开始发送数据,A连续发送3个单位的数据,因为他知道B的缓冲区大小。在这一波数据发送完后,A就不能再发了,需等待B的确认。A发送过来的数据逐渐将缓冲区填满。这时候缓冲区中的一个报...
2016-05-10 09:02:00
95
转载 JAVA安全模型
作为一种诞生于互联网兴起时代的语言,Java 从一开始就带有安全上的考虑,如何保证通过互联网下载到本地的 Java 程序是安全的,如何对 Java 程序访问本地资源权限进行有限授权,这些安全角度的考虑一开始就影响到 Java 语言的设计与实现。可以说 Java 在这些方面的探索与经验,对后来的一些语言与产品都带来了积极影响。本篇文章中将介绍 Java 中安全模型,以及如何利用安全访问...
2016-04-02 13:54:00
90
转载 MongoDB性能优化
一、索引MongoDB 提供了多样性的索引支持,索引信息被保存在system.indexes 中,且默认总是为_id创建索引,它的索引使用基本和MySQL 等关系型数据库一样。其实可以这样说说,索引是凌驾于数据存储系统之上的另一层系统,所以各种结构迥异的存储都有相同或相似的索引实现及使用接口并不足为 奇。1.基础索引在字段age 上创建索引,1(升序);-1(降序):...
2016-02-26 00:22:00
104
转载 mysql权限管理
经常遇到有网友在QQ群或者论坛上问关于mysql权限的问题,今天抽空总结一下关于这几年使用MYSQL的时候关于MYSQL数据库的权限管理的经验,也希望能对使用mysql的网友有所帮助!一、MYSQL权限简介关于mysql的权限简单的理解就是mysql允许你做你权利以内的事情,不可以越界。比如只允许你执行select操作,那么你就不能执行update操作。只允许你从某台机器上连接m...
2016-02-16 12:34:00
72
转载 TCP滑动窗口机制
我们可以大概看一下上图的模型:首先是AB之间三次握手建立TCP连接。在报文的交互过程中,A将自己的缓冲区大小(窗口大小)3发送给B,B同理,这样双方就知道了对端的窗口大小。A开始发送数据,A连续发送3个单位的数据,因为他知道B的缓冲区大小。在这一波数据发送完后,A就不能再发了,需等待B的确认。A发送过来的数据逐渐将缓冲区填满。这时候缓冲区中的一个报文被进程读取,缓...
2016-01-07 17:03:00
97
转载 TCP三次握手和四次挥手状态变迁解析
TCP是TCP/IP的传输层控制协议,提供可靠的连接服务,采用三次握手确认建立一个连接:首先需要了解几个名词:tcp标志位,有6种分别为:SYN(synchronous建立联机) 、ACK(acknowledgement 确认) 、PSH(push传送) 、FIN(finish结束)、 RST(reset重置) 、URG(urgent紧急);URG 紧急指针,告诉接收TCP模块紧要指针域...
2016-01-06 20:28:00
73
转载 TCP三次握手,四次挥手
前言在面试的过程中,TCP的传输协议经常会出现。以前我参加面试的过程中就被问到过,现在轮到我面试其他人的时候,我也会问一些相关的问题。作为一名开发者,无论使用什么样的开发语言,最基本的网络知识一定要理解透彻,这样才能获得更好的职业发展。TCP链接协议概述建立TCP需要三次握手才能建立,而断开连接则需要四次握手。整个过程如下图所示:建立连接的过程首先Client端发...
2016-01-06 19:50:00
82
转载 CSS浮动文摘
很早以前就接触过CSS,但对于浮动始终非常迷惑,可能是自身理解能力差,也可能是没能遇到一篇通俗的教程。 写在前面的话: 由于CSS内容比较多,没有精力从头到尾讲一遍,只能有针对性的讲解。 如果读者理解CSS盒子模型,但对于浮动不理解,那么这篇文章可以帮助你。 本文以div元素布局为例。教程开始: ...
2015-08-02 11:25:00
526
转载 Spring加载xsd引起的问题小记
前言 最近要把之前写好的监控系统加上报警功能,就是通过rpc调用发短信发邮件的服务发送报警信息。发短信发邮件的功能是通过dubbo管理提供的。自然使用这些服务就难免用到spring。而我这又是一个storm工程,为了方便,我都是用maven-shade-plugin把所有依赖的jar打到一起。 在本地运行没有任何问题,但已提交到在线环境的storm(在线环境是没法连接到...
2015-06-19 12:12:00
147
转载 kafka配置参数
Kafka为broker,producer和consumer提供了很多的配置参数。 了解并理解这些配置参数对于我们使用kafka是非常重要的。本文列出了一些重要的配置参数。官方的文档Configuration比较老了,很多参数有所变动, 有些名字也有所改变。我在整理的过程中根据0.8.2的代码也做了修正。Boker配置参数下表列出了Boker的重要的配置参数, 更多的...
2015-06-13 18:30:00
1043
转载 nginx常见内部参数,错误总结
1、日志简介nginx日志主要有两种:访问日志和错误日志。访问日志主要记录客户端访问nginx的每一个请求,格式可以自定义;错误日志主要记录客户端访问nginx出错时的日志,格式不支持自定义。两种日志都可以选择性关闭。通过访问日志,你可以得到用户地域来源、跳转来源、使用终端、某个URL访问量等相关信息;通过错误日志,你可以得到系统某个服务或server的性能瓶颈等。因此,将日志好...
2015-06-02 21:16:00
163
转载 从毕业到现在的总结
2013年前 本人2013年毕业,本着大学生活过去不再有,而工作时间有很多的心态。2012年我决定留在学校,好好享受剩下的仅有的校园生活。2013年初 班里的人渐渐地一个个参与了实习,我开始按耐不住了,本着自己文化课成绩和编程能力在班里都还不错的,我决心来北京闯闯。于是只身来到北京,住在回龙观还有向北的地方,房租不贵,但却环境恶劣,马路上尘土飞扬,而且只有一路公交车到达最...
2015-05-08 08:58:00
78
转载 storm坑之---传递对象
继之前遇到的那个同步问题的坑之后(storm坑之---同步问题),最近对代码又做了调整和重构,并且又遇到了另一个storm开发中应该值得警惕的坑。接下来说说这个坑的大体情况。 在我的storm程序中,Abolt需要将数据封装成一个对象同时发送给Bbolt和Cbolt各一份,Bbolt和Cbolt分别对对象做一定的处理后,更新到数据库。在查看日志时,意外的发现有些数据是不正确的诡...
2015-05-04 19:26:00
87
转载 Java多线程读取大文件
前言 今天是五一假期第一天,按理应该是快乐玩耍的日子,但是作为一个北漂到京师的开发人员,实在难想出去那玩耍。好玩的地方比较远,近处又感觉没意思。于是乎,闲着写篇文章,总结下昨天写的程序吧。 昨天下午朋友跟我聊起,他说有个需求,需要把上G的txt文件读取写入到数据库。用普通的io结果自然是OOM了,所以果断用NIO技术。为了提高速度,自然还得用上多线程技术。 接下来就介绍...
2015-05-01 10:14:00
417
转载 storm坑之---同步问题
最近在做一个监控系统,用来监控网站上各个业务功能的调用量以及处理时间,以便及时发现问题,及时处理。做这种实时统计处理系统,自然首先想到了storm,于是现学现用,自然遇到了一些坑,而且不少是网上也难以找到的问题。在这里就做个记录,记录下这个最让我苦恼的错误。 首先我的业务逻辑是按分钟统计一分钟中的调用次数的数据,所以我在bolt里跑了一个定时器,定时将统计数据发到下一个bolt...
2015-04-25 17:02:00
128
转载 KafkaConfig介绍
public class KafkaConfig implements Serializable { /** 一个借口,实现类有ZkHosts,和StatisHosts **/ public final BrokerHosts hosts; public final String topic; // kafka topic name publ...
2015-04-24 19:43:00
377
转载 kafka设计原理介绍
背景介绍Kafka简介 Kafka是一种分布式的,基于发布/订阅的消息系统。主要设计目标如下:以时间复杂度为O(1)的方式提供消息持久化能力,即使对TB级以上数据也能保证常数时间的访问性能高吞吐率。即使在非常廉价的商用机器上也能做到单机支持每秒100K条消息的传输支持Kafka Server间的消息分区,及分布式消费,同时保证每个partition内的消息顺序传...
2015-04-23 23:12:00
233
转载 Java中不同的并发实现的性能比较
Fork/Join框架在不同配置下的表现如何?正如即将上映的星球大战那样,Java 8的并行流也是毁誉参半。并行流(Parallel Stream)的语法糖就像预告片里的新型光剑一样令人兴奋不已。现在Java中实现并发编程存在多种方式,我们希望了解这么做所带来的性能提升及风险是什么。从经过260多次测试之后拿到的数据来看,还是增加了不少新的见解的,这里我们想和大家分享一下。Exe...
2015-03-09 16:36:00
107
转载 ”Connection reset by peer“引发的思考
闲来无事,把之前写的一个游戏服务器框架(《一个java页游服务器框架》),部署到阿里云服务器上,测试运行了下,结果看到后台log中打印出了“Connection reset by peer”。出于好奇疑问就查了一下相关资料,网上说一般有这几种: ①:服务器的并发连接数超过了其承载量,服务器会将其中一些连接Down掉; ②:客户关掉了浏览器,而服务器还在给客户端发送数据;...
2015-03-09 12:24:00
557
转载 RPC原理详解
RPC 功能目标RPC 的主要功能目标是让构建分布式计算(应用)更容易,在提供强大的远程调用能力时不损失本地调用的语义简洁性。为实现该目标,RPC 框架需提供一种透明调用机制让使用者不必显式的区分本地调用和远程调用。 下面我们将具体细化 stub 结构的实现。RPC 调用分类RPC 调用分以下两种:同步调用客户方等待调用执行完成并返回结果。异步调用客户方调用后不...
2015-03-08 09:20:00
165
转载 iptables详解
iptables简介 netfilter/iptables(简称为iptables)组成Linux平台下的包过滤防火墙,与大多数的Linux软件一样,这个包过滤防火墙是免费的,它可以代替昂贵的商业防火墙解决方案,完成封包过滤、封包重定向和网络地址转换(NAT)等功能。iptables基础 规则(rules)其实就是网络管理员预定义的条件,规则一般...
2015-03-07 19:39:00
117
转载 一个java页游服务器框架
一、前言 此游戏服务器架构是一个单服的形式,也就是说所有游戏逻辑在一个工程里,没有区分登陆服务器、战斗服务器、世界服务器等。此架构已成功应用在了多款页游服务器。在此框架中没有实现相关业务逻辑,只有简单的测试用的注册登陆功能。但在此框架中添加相应的业务逻辑也是比较轻松的,只需要添加相应的协议,编写对应的消息处理器即可。 下面是项目代码的地址: 服务器工程---Gam...
2015-02-28 14:08:00
72
转载 【转】FastCgi与PHP-fpm关系
刚开始对这个问题我也挺纠结的,看了《HTTP权威指南》后,感觉清晰了不少。首先,CGI是干嘛的?CGI是为了保证web server传递过来的数据是标准格式的,方便CGI程序的编写者。web server(比如说nginx)只是内容的分发者。比如,如果请求/index.html,那么web server会去文件系统中找到这个文件,发送给浏览器,这里分发的是静态数据。好了,如果...
2015-01-22 10:57:00
79
转载 CentOS 7添加yum源
RedHat下主要有两个distribution,一曰RHEL(Red Hat Enterprise Linux)一曰Fedora.前者主要是供服务器使用,优点是稳定,缺点是老的掉牙,后者是供桌面使用的,优点是特别新,repo的速度几乎可以和archlinux媲美,缺点是发布两年EOL(End-of-life_(product))就到了,我见过某服务器从不关机,也不更新Kernel...
2015-01-22 10:34:00
118
转载 NIO的一坑一惑小记
前言 不知不觉,已那么长时间没有更新东西了,说来真是汗颜啊。(主要是最近在技术上豁然开朗的感觉越来越少了-_-|||) 最近一直在学习Linux相关的东西。又一次接触到了I/O复用模型(select/poll/epoll),由于好久没在用NIO写过代码了,今天就小试写个例子,以巩固下对I/O复用模型的理解。这不,遇到了一个坑,也产生了一点疑惑。^_^。...
2015-01-14 11:59:00
101
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人