工作后好久没上博客园了,虽然不是很忙,但也没学生时代闲了.今天上博客园,发现好多的文章都是年终总结,想想是不是自己也应该总结下,不过现在还没想好,等想好了再写吧.今天写写自己在工作后用到的技术干货,争取以后多上博客园写写总结吧,真是怀念学生时代啊!!! 背景 项目组开发的游戏客户端使用的脚本是python,服务器也是python.之所以选择python,主要还是基于开发效率的考虑,毕竟这是脚本语言天生的优势:其次就是有很多库,不用自己再造轮子了.可能使用过python的同学都会认为python比…
一.前述 maven 线上部署的话会出现一些问题比如java.lang.ClassNotFoundException或者no main manifest attribute的话,是因为maven 配置里面的问题,本文就这问题给出常用配置. 二.具体部署 <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0"…
def upload(request): return render(request, 'upload.html') def upload_file(request): username = request.POST.get('username') fafafa = request.FILES.get('fafafa') with open(fafafa.name, 'wb') as f: for item in fafafa.chunks(): f.write(item) print(user…
选择题做的跟傻逼一样,不多说了..大学只打了ACM还不是计算机科班出身的我,连好多名词都不认识..... 三道编程题很简单,下面给出三道题的大致题意以及题解. 1.给出n和m,满足(2m)可以整除n.求a1~an的和,m表示每m个数变一次符号,ai满足|ai|=i. 例如n=8,m=2,则数列为 -1 -2 3 4 -5 -6 7 8 题解:规律是显然的,每2m个数分别求一下部分和,显然是m*m,然后把所有的部分和累加起来,为n/(2m)*m*m=n*m/2 #include<cstdio>…
针对app线上修复技术,目前有好几种解决方案,开源界往往一个方案会有好几种实现.重复的实现会有造轮子之嫌,但分析解决方案在技术上的探索和衍变,这轮子还是值得去推动的 关于Hot Fix技术 Hot Fix技术,简单来说就是针对线上已发布app出现了bug,在不推送新版本的情况下通过发布修复补丁进行修复.通常是刚上线的app,需要快速线上修复bug,类似的技术就叫做热修复或热补丁. 热修复技术能带来什么 让app具有了上线后被修复的可能性,增加事故风险可控性: 避免为修复bug而快速增发新版本,让…
线上故障主要2种: CPU利用率很高, 内存占用率很大 一.CPU利用率很高 1. top查询那个进程CPU使用率高 2. 显示进程列表 ps -mp pid -o THREAD,tid,time 找到了耗时最高的线程28802,占用CPU时间快两个小时了! 其次将需要的线程ID转换为16进制格式: printf "%x\n" tid 最后打印线程的堆栈信息: jstack pid |grep tid -A 30 从Thread dump日志中可以找到哪行代码造成CPU使用率高 二.内…
来新公司前,领导就说了,线上生产环境Mysql库经常会发生日间内存爆掉被killed的情况,结果来到这第一天,第一件事就是要根据线上服务器配置优化配置,同时必须找出现在mysql内存持续增加爆掉的原因,虽然我主业已经不是数据库更不是dba了.看了下mysql占用内存区域的分布: [root@iZ23nn1p4mjZ osm-all]# pmap -x 55245524: /usr/local/Percona-Server-5.7.16-10-Linux.x86_64.ssl101/bin/mys…
2016-05-25 08:58:34 昨天线上小白系统因为调用外部http接口,超时不释放,导致页面反应很慢,时间一长,报502错误. 上网查了下,502错误是因为服务对于客户的请求没有得到及时的反应,查询日志,发现很多调http接口异常,页面反应也很慢. 瞬间想到缩短http客户端调用http接口的超时时间,搜到这个博客http://blog.csdn.net/xinying0424/article/details/36006383  感谢 HttpClient 4: 连接超时: 连接超时…
   为了同学们看起来一目了,特按如下思路进行讲解. 1.出现的场景    2.分析及解决的过程    3.总结 最近公司要使用zookeeper做配置管理(后面简称ZK),然后自己就提前用虚拟机进行了ZK三台集群的搭建.之后开始选择使用zookeeper的java client工具,google了半天,发现了一个很名强大的Apache的Curator工具,很多底层的东西都已经给你封装好了,所以用起来很方便,因为我使用的场景是做配置管理,所以使用Curator的Framework就够了.Cura…
尝试了太多的python多进程的服务,在tensorflow 的线上GPU服务中总是不理想.tensorlfow serving docker服务这些也有些不便. 今天抽空给大家分享一个成功的经验.失败的坑就太多了,不扯了.包括mutiprocess 和gevent,都不太理想. 1.使用gunicorn.怎么使用的自己查一下. 2.gunicorn --bind 0.0.0.0:10010 -w 3  app_×××:app 3.在docker里这样启动后,虽然是多进程,但是速度并没有加快.怎…
排查了三四个小时,终于解决了这个GC问题,记录解决过程于此,希望对大家有所帮助.本文假定读者已具备基本的GC常识和JVM调优知识,关于JVM调优工具使用可以查看我在同一分类下的另一篇文章: http://my.oschina.net/feichexia/blog/196575 背景说明 发生问题的系统部署在Unix上,发生问题前已经跑了两周多了. 其中我用到了Hadoop源码中的CountingBloomFilter,并将其修改成了线程安全的实现(详情见:AdjustedCountingBloo…
<Python自动化测试修炼宝典>线上课程已经成功入驻网易云课堂...... IT测试老兵利用工作之余,亲自录制的<Python自动化测试修炼宝典>线上课程已经成功入驻网易云课堂,想要提高测试技术的小伙伴可以线上购买课程进行学习. 课程背景 测试人员进阶实战课程.本套课程以作者多年测试实战经验为背景,结合大量测试案例深入浅出讲解目前主流web端.app端自动化测试框架以及使用Python如何从0到1实现接口测试框架的搭建. 课程特色 系统教学+实战案例+开放源码.涵盖Python3…
引用地址:https://blog.csdn.net/qq_35415307/article/details/80707463 本地ng项目没问题,到了线上跳转刷新都会报404错误,相信这个问题每个做ng项目的人都遇到过,下面给出解决方案. 一.原因本地环境没问题,因为本地是路由跳转,前端执行的跳转.部署到线上,它其实走的是后台的路径,假如你部署在tomcat的容器里面,它执行的是JavaWeb的路由.所以找不到. 二.解决这里就要使用hash模式,hash模式是基于锚点(#)做的内部链接机制机…
听说"双11"是这么解决线上bug的 --Android线上热修复的使用与原理 预备知识和开发环境 Android NDK编程 AndFix浅析 Android线上热修复的原理大同小异.这里仅仅针对眼下最火的框架AndFix进行解说.主要从AndFix的使用.原理以及优缺点三个方面进行阐述. 使用方式 介绍 AndFix是一个AndroidApp的在线热补丁框架. 使用此框架,我们可以在不反复发版的情况下,在线改动App中的Bug.AndFix就是 "AndroidHot-F…
一.win10系统Filezilla Xshell SecureFX等无法拖放文件到线上服务器解决办法: 1.按窗口键+R,打开“运行”对话框:输入regedit回车 2.在注册表编辑器地址栏输入以下内容:计算机(名称)\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System 3 .点开“EnableLUA” 选“修改”.把值改成0,确定 4.重启电脑 二.用filezilla拖拽ftp上的文件到桌…
文章首发于[陈树义的博客],点击跳转到原文<线上Kafka突发rebalance异常,如何快速解决?> Kafka 是我们最常用的消息队列,它那几万.甚至几十万的处理速度让我们为之欣喜若狂.但是随着使用场景的增加,我们遇到的问题也越来越多,其中一个经常遇到的问题就是:rebalance(重平衡)问题. 什么是消费组 要想了解 rebalance,那就得先了解消费组(consumer group). 消费组指的是多个消费者(consumer)组成起来的一个组,它们共同消费 topic 的所有消息…
前言 本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理. 作者:CDA数据分析师 豆瓣9.4分!这场线上演唱会到底多好看? 首先让我们看到豆瓣上的数据:截止到目前为止,五月天的这次线上演唱会共有10万余人进行了评价,目前豆瓣评分为9.4分,是非常高的成绩了. 豆瓣评分分布 进一步分析可以看到,评论中有68.4%的人给出了满分5星,其次24.2%的人给出了4星. 豆瓣评论词云图 豆瓣评论中大家都在说些什么呢?可以看到"太短&quo…
一.问题情况 最近用户反映系统响应越来越慢,而且不是偶发性的慢.根据后台日志,可以看到系统已经有oom现象. 根据jdk自带的jconsole工具,可以监视到系统处于堵塞时期.cup占满,活动线程数持续增加,堆内存接近峰值. 二.分析情况 使用jconsole分析: 找到jdk安装路径,点击bin目录下的jconsole.exe,运行.…
一.vue中解决chrome浏览器自动播放音频 需求 有新订单的时候,页面自动语音提示和弹出提示框: 问题 chrome浏览器在18年4月起,就在桌面浏览器全面禁止了音视频的自动播放功能.严格地来说,是Chrome不允许在用户对网页进行触发之前播放音频.不光是这样,在页面加载完毕的情况下,用户没有click.dbclick.touch等主动交互行为,使用js直接调用.play() 方法的话,chrome都会抛出如下错误:Uncaught (in promise) DOMException: 解决…
相信许多小伙伴和我一样,明明在本地运行页面一切正常,而到线上(本人是用的虚拟主机)出现了如下图的问题: 其实这个问题出现的原因很简单,就是我们开发是在windows 系统下,windows系统对大小写不敏感,而虚拟主机Linux,区分大小写,所以解决办法很简单,如下图所示: 解决方法就是, $this->fetch('singlecompanyComment');改为 $this->fetch('singlecompanycomment'); 因为我的模板文件都是小写的,哈哈哈,问题解决了.…
mongo客户端工具下载  https://robomongo.org/download   线上业务,k线 展示出现问题,相同时间戳的数据多次插入导致数据不真实,后经排查发现是每次都是写的四条数据,找开发配合一起查找问题,发现是后台逻辑处理的问题   需求:将重复的数据去掉,只保留一份数据   客户端数据查询:       由于表太多 一张一张去删 很麻烦 于是写了个脚本偷懒   #!/bin/bash # liyongjian5179@.com #将所有的表名导出来 mongo /admin…
1.首先要先准备好环境,安装lldb 工具 要安装3.9版本的,因为每个版本对应dnc版本不一样,3.9的支持2.2 版本,然后确定分析的机器里dnc 版本和线上的生产环境是否一致,自己安装比较费劲,可以使用一些已经安装好的docker镜像来进行分析更简单一点 2.在生产环境生成dump文件可以使用procdump 工具或者直接使用dotnet 自带的工具/usr/share/dotnet/shared/Microsoft.NETCore.App/2.1.1/createdump 9364(线程…
阿里云用户:morenocjm 实践是检验真理的唯一标准,学习技术需要通过实践过程中的不断尝试,才能够快速掌握要领.OTS是构建在阿里云飞天分布式系统之上的NoSQL数据库服务,提供海量结构化数据的存储和实时访问.刚好想用手上的一台ECS做点什么,既然如此,那就通过搭建简单线上产品(alijot.com 快速记)的过程,学习下NoSQL数据库OTS吧. ------------------------------------------------------------------------…
写python代码的人都知道,一个项目写下下来,不可避免的都需要使用很多第三方包,通常我们都是通过pip install ,然而当我们需要上线的时候问题来了,如果中间你自己不记得自己安装了多少个包,这个时候你就面临着需要导出包名字,这个时候你可能想到了 pip freeze > requirements.txt,但是实际开发中你可能会开发很多个项目,每个项目可能都是pip安装了一堆包,如果每次都是这样,导出的包会越来越多.并且多个项目之间并不能很好的隔离,并且可能你每个项目中用的python环境…
继前文 TFS在项目中Devops落地进程(上) TFS在项目中DevOps落地进程(下) 自从之前将开发环境使用TFS进行了自动化之后,就享受在此成果中,其他后续进度就停顿了好一段时间. 毕竟在我们这对于开发而言,做出代码交出发布包事情就结束了,而我们的TFS已经完美的将这个流程给自动化掉了. 本文将聚焦在TFS发布到线上生产环境中所做的一些工作和实践,如果只是纠结于如何使用TFS可以参考上面的2个链接. 之前的线上发布流程 说下我们大概的背景,我们的程序上线流程目前还是相对传统一些,大体是:…
原文地址:http://m.blog.csdn.net/article/details?id=43376943 前言:我们的场景并没有像BAT等大型互联网公司里的系统那么复杂,但是基本上也有一定的规模,暂且就认为我们是一个中型互联网系统.但是工具和思路都是差不多的,因为原理是一样的.同时下面提到的命令,具体详细的用法,我想google上已经有足够多的资源了,这里只说思路与方向. 首先我们分析一下服务器构造和操作系统,服务器我们可以简单的分解为CPU.内存.硬盘(其他部件的我们就不考虑了),操作系…
Fluent版本:Fluent 19.0 Visual Studio版本:Visual Studio 2013 有时候我们想要实现一些功能,比如:我们在使用Fluent进行瞬态计算的时候,想要获取某条线上的物理量随时间的变化,如果我们直接用UDF去输出当然是可以的,但是实现起来难度比较大,而CFD-Post实现这些功能相对比较容易,难道要我们保留所有的结果,最后再在CFD-Post里面慢慢处理?当然有其他的解决办法,我们可以使用Python编写一个模块,用来调用CFD-Post获取该条线段上的物…
摘要:BERT因为效果好和适用范围广两大优点,所以在NLP领域具有里程碑意义.实际项目中主要使用BERT来做文本分类任务,其实就是给文本打标签.因为原生态BERT预训练模型动辄几百兆甚至上千兆的大小,模型训练速度非常慢,对于BERT模型线上化非常不友好.本篇研究目前比较火的BERT最新派生产品ALBERT来完成BERT线上化服务.ALBERT使用参数减少技术来降低内存消耗从而最终达到提高BERT的训练速度,并且在主要基准测试中均名列前茅,可谓跑的快,还跑的好.希望对需要将BERT线上化感兴趣的小…
背景 公司有一个数据处理线,上面的数据经过不同环境处理,然后上线到正式库.其中一个环节需要将数据进行处理然后导入到另外一个库(Sql Server).这个处理的程序是老大用python写的,处理完后进入另外一个库后某些字段出现了乱码. 比如这个字符串:1006⁃267X(2020)02⁃0548⁃10 另外一个库变成:1006?267X(2020)02?0548?10 线上人员反馈回来后老大由于比较忙,一直没有排查,然后我问了下估计是什么原因.老大说他python里面转了utf8,可能是编码问题…
最近帮新来的校招同学排查一个线上问题,问题本身不是很难,但是过程中踩到了一个arthas的坑,挺有意思的. 同时,也分享下在排查过程中使用的一些比较实用的工具,包括tcpdump.arthas.simpleHTTPServer等,希望能对大家有所帮助. 1.问题描述 新开发的一个功能,简单来说,就是读取数据库的数据展示在前台. 本地启动服务调试,用postman调用api,返回数据显示正常,数据中的中文也正常. 但是部署到线上环境后,通过chrome浏览器调用和postman调用接口,返回的非中…