
面试&&经历
coder_xia
苦练杀敌本领
展开
-
使用异步HttpClient时线程hang住
某次处理问题,发现线上的某个线程池全部hang住,jstack发现堆栈如下"pool-3-thread-50" #70 prio=5 os_prio=0 tid=0x00007fa451317800 nid=0x5f23 in Object.wait() [0x00007fa44e6e5000] java.lang.Thread.State: WAITING (on object mo...原创 2019-12-07 14:23:38 · 1214 阅读 · 1 评论 -
为什么程序员工资相对于传统行业工资显得略高
前几天在知乎上看过一个还蛮有意思的讨论,it行业程序员的工资是否虚高?链接在这,实际上,由于混知乎的很多人都是程序员,导致回答几乎一边倒的认为不高,而且你行你上的态势。也看了一个回答,还算不错的,链接在这,不过太宏观了点,逼格太高,难免不接地气,下面我从一个从业者角度说下自己的理解吧。 是不是虚高?不是。但是第一个链接里程序员的理由实际上太牵强了,其它行业就不用学习?其它行业就不原创 2016-03-25 22:01:57 · 2850 阅读 · 0 评论 -
SSHException: Incompatible ssh peer (no acceptable kex algorithm)
使用公司维护助手原创 2015-12-23 10:19:16 · 10695 阅读 · 0 评论 -
linux nfs文件挂载模拟云存储
背景产品上线前兼容性测试,云存储未到位;系统:SUSE Linux Enterprise Server 11 SP1 解决方法其中一个服务器A开放nfs服务,模拟云存储,其它服务器挂载A的目录,模拟实现同一存储实施前提,需要有portmap和nfs-utilsrmc01:/root # rpm -qa |grep portmapportmap-5beta-74原创 2015-12-17 14:36:47 · 2017 阅读 · 0 评论 -
su: cannot set user id: Resource temporarily unavailable
EnvironmentNovell Open Enterprise Server (Linux based)Novell SUSE Linux Enterprise Server 9SituationUnable to login as a particular userUnable to start an SSH session as a particular userU转载 2015-12-15 15:41:08 · 997 阅读 · 0 评论 -
python2.4升级到python2.6
系统:SUSE linux SP1参考http://www.linuxidc.com/Linux/2013-06/86119.htm,不同处在于安装setuptools时报错..... File "/home/local/usr/cp2/lib/python2.6/hashlib.py", line 138, in sha224 = __get_builtin_const原创 2015-09-22 17:31:22 · 1246 阅读 · 0 评论 -
oracle用户登录报错-bash: ulimit: open files: cannot modify limit: Operation not permitted
问题现象使用ssh连接oracle用户时提示错误-bash: ulimit: open files: cannot modify limit: Operation not permitted操作系统版本:cat /etc/SuSE-releaseSUSE Linux Enterprise Server 11 (x86_64)VERSION = 11PATCHLEVEL原创 2015-11-06 19:48:57 · 7311 阅读 · 0 评论 -
windows下搞个python环境
参考http://www.cnblogs.com/windinsky/archive/2012/09/20/2695520.html,下载python包在eclipse安装py-dev插件时,找不到,一打开http://pydev.org/updates,发现打不开,难怪找不到,还是只能手动安装啊去到官网http://www.pydev.org/manual_101_install.htm原创 2015-07-22 20:14:30 · 498 阅读 · 0 评论 -
mysql“Access denied for user 'root'@'IP地址'
xshell连接mysql毫无问题,使用toad登录时提示“Access denied for user 'root'@'10.1.6.130' (using password: YES)”,搜到以下解决办法http://www.cnblogs.com/wonder315/archive/2011/11/02/2233010.html 遂考虑使用grant all privile原创 2013-12-27 17:29:35 · 4485 阅读 · 0 评论 -
扒照片
#! -*- coding:utf-8 -*-import urllib2import urllibimport cookielibimport osimport re# 登录信息data = {'actionFlag':"loginAuthenticate", "lang":"en", "loginMethod": "login",原创 2015-08-07 20:45:24 · 926 阅读 · 0 评论 -
补充个python监控小函数,证书过期发送警告
背景现网发生过几次证书过期发生的业务中断,老这样搞不太好,于是决定在原有监控脚本基础上增加监控项,提前指定时间发送短信给维护人员问题现有证书主要就是一些提供https连接用的,有keystore文件,有.crm文件,也有pem文件,所以获取到期时间的命令有所不同,如下:Test:/home/xia/tomcat/conf # keytool -list -v -keystore k原创 2014-06-06 17:56:40 · 2772 阅读 · 0 评论 -
awk来调用linux命令解决个日志采集问题
背景做了个web页面的日志查询工具,给用服同事使用,以应对服务器太多的困扰,需要将现网日志拿回来家里进行模拟。问题:部件A有10台主机,将某小时内文件压缩为A_IP.tar.gz,B有8台主机,同样命名。每个tar.gz包解压后为201405291200.tar.gz这种包含具体日志文件的压缩包。问题是如A部件10台主机到本地后两台服务器上,解压总会有同名文件,简单重命名分钟是没法解决原创 2014-05-30 08:59:15 · 1338 阅读 · 0 评论 -
A simpleContent extension must define a base type
问题起因:tomcat做soap开发,从服务器上下载了wsdl后,发现soapui导入报错,报错内容见标题;问题原因:wsdl中定义有问题,在simplecontent中必须有extension或者restriction内容,见http://blog.youkuaiyun.com/caolaosanahnu/article/details/7962735;全文搜索simplecontent,发现问题wsd原创 2016-07-26 09:11:52 · 1057 阅读 · 0 评论 -
执行shell脚本报错 cannot execute binary file
现象:我本地编写了shell脚本,拷贝到某台SUSE11服务器上执行正常,到suse10机器上就报错了通常情况下这个个错误的原因有以下几个1、可能是没有执行权限;2、可能是32位机器跑了64位写的程序;3、可能用了ARM机器跑X86生成的代码。然而我这个就是个shell,不至于啊,一Google也没有类似案例,用file命令一查,清楚了# file newMemEnv.sh原创 2016-07-30 15:12:46 · 23368 阅读 · 0 评论 -
记录下并行优化时的一个问题
最近在做模块性能优化时,尝试将请求外部模块和操作数据库这种耗时操作又非前后关联的动作改为并行,用到了CompletableFuture.runAsync,遍历复杂集合时修改为parallelStream; 实际上parallelStream和CompletableFuture.runAsync的并行都是使用了Fork/join的线程池来处理,可以参考http://blog.dyn...原创 2018-11-26 21:32:13 · 761 阅读 · 0 评论 -
一个进程里两处日志时间时区不一样的问题
最近发现一个进程里打出来的日志里时区不一样,一个是UTC时间,2018-09-12 10:48:12.278,一个是北京时间2018-09-12 18:48:15.453。北京时间的是log4j输出的,UTC时间的是我们自己输出的,我们自己的时间字符串来源是大概如下两行代码:SimpleDateFormat dateFormat = new SimpleDateFormat("yyy...原创 2018-09-18 19:04:26 · 3164 阅读 · 0 评论 -
Cannot get a connection, pool error Timeout waiting for idle object
性能测试时,报错org.apache.tomcat.dbcp.dbcp.SQLNestedException: Cannot get a connection, pool error Timeout waiting for idle object,日志中最后的堆栈如下:Caused by: java.util.NoSuchElementException: Timeout waiting for ...原创 2018-05-28 11:57:33 · 7920 阅读 · 0 评论 -
vsftpd版本引起的下载失败
问题背景:应用启动时去某机器上下载文件,但是其中某一台总是下载失败,但是手动是可以的问题过程:首先,我们怀疑是vsftpd配置问题,比如主被动模式配置错误,发现ftp都是vsftpd的独立模式模式,没有用xinetd代理,而且模式都是一致,那为什么会有的机器行,有的机器不行呢?添加jsp模拟下载,类似如下代码(使用的ftp类来自于commons-net-3.1.jar) FT原创 2017-08-07 19:27:49 · 1694 阅读 · 0 评论 -
使用TCP同时进行上传和下载的吞吐量为什么比单独进行时要低
TCP的发包一般是由收到TCP ACK触发的,没有收到TCP ACK时TCP发送端一般是不会发包的(超时重传的情况除外)。下面示意图就是在描述:没有收到接收端发来的TCP ACK包时,发送端停止发送数据包。左边是接收端,右边是发送端,-号表示发送端待发的数据包,=号是TCP ACK。 | ---- ---- |假设有8个包要发送---- | ----转载 2017-08-21 15:01:19 · 1063 阅读 · 0 评论 -
tomcat connectionTimeout 问题
问题现象在某个时刻,后端收到了平时4-6倍的请求(保密起见,略去产品和事件),在10分钟后居然没有请求可以接进来问题原因经过分析,首先,是后端服务器的线程池满了,线程池满的原因:1.server.xml中maxThread=512,导致超过512的之后的请求只能排队,等待有线程释放后,才能被处理;2.connectionTimeout配置为10000,这个配置导致建立一个soc原创 2017-08-15 10:20:53 · 75015 阅读 · 10 评论 -
LD_LIBRARY_PATH设置不当导致的自动安装失败
问题现象某天自动安装的时候,发现安装出错,最后定位到是自动安装脚本执行时会有如下报错./cfg_utility: error while loading shared libraries: libxerces-c.so.26: cannot open shared object file: No such file or directory我们自动安装时会修改xml中配置项,因为在安装脚本原创 2017-07-04 09:07:27 · 1492 阅读 · 0 评论 -
tomcat keepAliveTimeout=0问题
最近升级了tomcat上线,之后几天服务端句柄很高,定位后发现是应用服务上有很多连接,但是实际没有这么多用户在线,在测试环境上重现,抓包发现在keepAliveTimeout=0的情况下,是客户端发起FIN包,而改为2000之后,则是服务端发FIN包,参考https://tomcat.apache.org/tomcat-7.0-doc/config/http.html,keepAliveTimeo原创 2017-04-12 16:56:30 · 10740 阅读 · 1 评论 -
LineIterator中文乱码问题
业务中某功能最开始是用文件读取,类似如下 RandomAccessFile raf = new RandomAccessFile(new File("daily.log"), "rw"); String line = null; StringBuffer sb = new StringBuffer(); while((line =原创 2017-08-17 19:45:10 · 2782 阅读 · 0 评论 -
无界队列导致内存耗尽问题一例
某个边缘的功能,需要将某些数据存入数据库,由于功能边缘且数据较少,存入频率为5秒保存一次,一次保存10条;保存的数据用Vector保存,往集合里放,正常情况下量极少也没出问题。然后在某一天,突然发现服务容灾状态了,根据经验,不是数据库挂了就是后端某应用挂了,查看日志,发现是这个数据量过多,结果数据入库又这么慢,于是内存就爆的了怎么解决?1.队列别光加入,超过10000时放弃,以原创 2017-08-17 19:22:59 · 6222 阅读 · 1 评论 -
SHELL脚本并发问题一则记录
问题背景使用自动安装框架进行业务安装,调用SHELL脚本来修改权限等操作,包括修改server.xml配置等信息,某天两个安装任务一起运行时,发现密码字段为空,单独运行命令或单个安装任务则不会出现问题。问题原因SHELL代码出问题段代码类似如下逻辑:passwd=""passwd=`encrypt xxx`modXmlPasswd $passwd在第一个任务跑完第二行时,第原创 2017-06-19 08:32:43 · 552 阅读 · 0 评论 -
crontab原理
详细解释见https://www.quora.com/How-does-cron-work crontab实际上是启动服务后读取所有配置文件,然后睡一段时间(一般也是一分钟)后运行下一个任务,从链接里看,是半小时监控一次crontab文件是否有改动。对suse而言,crontab服务启动后,会检查/var/spool/cron/tabs下所有用户的定时任务,然后加载到内存的队列中,然原创 2017-03-09 08:33:05 · 4222 阅读 · 0 评论 -
ftp配置模式问题导致下载失败
问题现象:某部件下发到我们部件的内容,去ftp下载的时候失败,报错无权限,ftp 550550错误,一般有如下几种可能:1. 路径错误2. 路径下文件不存在3. 文件所在目录对于ftpvrpv8用户无执行权限由于代码一直运行良好,目前是在测试环境测试,所以路径错误排除;检查了下权限依然正常;无招,问了下之前的维护,才知道原因:代码里用了port模式去连接ftp服务器,但原创 2016-11-25 09:58:32 · 5799 阅读 · 0 评论 -
Caused by: java.io.IOException: CreateProcess error=87, The parameter is incorrect
问题现象:搭建CI服务时,自动构建使用ant脚本编译时报错:Caused by: java.io.IOException: CreateProcess error=87, The parameter is incorrect,搜索发现https://community.oracle.com/thread/2245134?tstart=0 说这个问题是因为classpath 太长,考虑到这么ja原创 2016-08-27 17:31:06 · 3936 阅读 · 0 评论 -
suse11 安装 apache 记录
环境:SUSE 11 SP1软件包:httpd-2.2.25.tar.gz、tomcat-connectors-1.2.31-src.tar.gz 步骤1.创建apache2目录2.将以上2个tar.gz包上传至apache2目录,解压cd apache2tar -zvxf httpd-2.2.25.tar.gzcd $HOME/apache2/httpd-2.2.25原创 2014-03-26 21:36:12 · 8024 阅读 · 0 评论 -
面试题-位操作
如何准备:Bit manipulation can be a scary thing to many candidates, but it doesn’t need to be! If you’re shaky on bit manipulation, we recommend doing a couple of arithmetic-like problems to boost your s转载 2012-08-30 09:39:24 · 1870 阅读 · 2 评论 -
俄罗斯方块一个实例
这个也比较像,主要借鉴消行的处理/* 俄罗斯方块人工智能版 *//* 作者:wzb32 *//* Copyright(C) 2007.11 - 2007.12 *//*导入类包*/import java.awt.*;import java.applet.*;import java.awt.event .*;/*创建一个从Applet派生并实现Runnable和ItemListen转载 2012-05-29 23:06:25 · 2083 阅读 · 0 评论 -
俄罗斯方块ai评价
http://blog.youkuaiyun.com/coollangzi/article/details/5770329 代码 http://blog.youkuaiyun.com/coollangzi/article/details/5777489可惜了是c++的,给的框架是java,慢慢改另有不完整http://www.cnblogs.com/leeairw/archive/2008转载 2012-05-29 21:36:38 · 1187 阅读 · 1 评论 -
2012微软暑期实习笔试
今天去南大参加了下微软暑期实习生的笔试,根据回忆记录下题目吧,根据自己翻译,有的也许翻译不准确 试卷为英文, 题目形式为20个选择题,1-7难度为easy,打对3分,少选2分,空白0分,打错-2分;8-18,答对5分,少答3分,打错扣3分,空白0分,最后两题貌似答对8分,少答5分1、对80个题目进行选择排序,在主循环32次迭代之后,能保证多少个元素是排好序的(never moved原创 2012-04-08 00:05:47 · 1994 阅读 · 0 评论 -
求质数算法的N种境界 (N > 10)
http://blog.youkuaiyun.com/program_think/article/details/7032600 太长,就不帖原文了,只是说下感受吧,除了说天外有天人外有人这种,更多是想到当前想法的不正确,太纠结于对错,而不是想法,做东西也只是想的实现就完成,而不是怎么能更有效率,得改进啊转载 2011-12-04 16:14:23 · 1642 阅读 · 0 评论 -
面试题总结——位的一些东西
今天看了下《编程之美》,正好看到将帅问题,将答案看完后,感觉,去微软这帮人果然很猛,而且发现,面试题老喜欢搞一些bit级运算的东东,所以就总结一下,以备不时只需。希望也能帮到看的人。 现在大家都喜欢在位上搞点文章,从最简单的移位运算比乘2快,到进阶的bit map法解决大数据量问题;从高层的bitset封装类逐个位图法排序,到底层编程的CPU大小端,感觉面试,能在bit上做文章的东西真原创 2012-04-04 22:56:07 · 1261 阅读 · 0 评论 -
图解USB安装Ubuntu Server10.04.3
安装环境硬件环境:1、X86 intel 赛扬4302、512M内存系统版本:Ubuntu-10.04.3-server-i386内核版本:2.6.32-34准备工作:1、 软硬件准备软件准备:UltraISO破解版硬件准备:Kingston2G优盘一个2、 制作优盘启动盘1)启动ultraiso,打开原创 2012-02-27 12:13:59 · 6519 阅读 · 2 评论 -
复习UML下图示
看C++网络编程,ACE的东东,不少东东都是用UML图示表示的,比如类图,比如生命周期,用力图,于是复习了下UML的图http://www.cnblogs.com/iceWolf/archive/2008/04/11/1145571.html 会更清晰明了一些,对于原创 2011-10-13 18:44:09 · 832 阅读 · 0 评论 -
面试题之丑数的C++实现求解(孤陋寡闻了,才知道丑数这么high的东东)
问题描述: 我们把只包含因子2、3和5的数称作丑数(Ugly Number)。例如6、8都是丑数,但14不是,因为它包含因子7。习惯上我们把1当做是第一个丑数。求按从小到大的顺序的第1500个丑数。(昨天突然发现个不错的博客:http://blog.csdn.原创 2011-08-22 13:42:16 · 34196 阅读 · 4 评论 -
今天蛋疼的“WINDONS无法启动,找不到SYSTEM32/DRIVERS/isapup.sys”
一个不爽,今天把电脑重装了,各种嗨皮,然后装vs2010,装matlab2007,装驱动,重启之后,问题发生了,居然黑屏,居然进不去系统,还提示“WINDONS无法启动;找不到SYSTEM32/DRIVERS/isapup.sys” 一搜,果然还是有救的。http://zhida原创 2011-08-08 18:41:10 · 3457 阅读 · 0 评论 -
面试题-链表
如何准备Linked list questions are extremely common These can range from simple (delete a node ina linked list) to much more challenging Either way, we advise you to be extremely comfortable with the eas转载 2012-08-30 09:36:18 · 1036 阅读 · 0 评论