提出问题 在运行项目的服务器的git是1.8.3.1版本的时候,pm2 deploy 项目,服务器fetch不到最新的一次commit. 对于这个问题,在pm2的github也有issues讨论.然后开issues的人表示 pm2-deploy is garbage  并且觉得  I find it funny that it is easier for the authors to blame the problem on git or anything else rather than ch…
首发掘金 记录一次node中台转发表单上传文件到后台过程 本篇跟掘金为同一个作者leung   公司几个项目都是三层架构模式即前台,中台(中间层),后台.前台微信端公众号使用vue框架,后台管理前端使用react,中台(中间层)使用node,后台使用java.此次说的是后台关键上传数据文件时遇到的一个bug,因为是三层架构,前台表单会先提交到node中间层,然后再通过node中间层转发到java后台保存并读取文件数据. 此次遇到了一个bug当表单提交到node中间层的时候node接口reques…
一.经历概要 程序里有个跑数据的job,这个job的主要功能是往数据库写假数据. 既需要跑历史数据(传给job的日期是过去的时间),也需要能够上线后,实时跑(十秒钟触发一次,传入触发时的当前时间). 其中一个job比较奇葩点,要写入的数据比较难以随机生成,是产品的同事从互联网上找的数据,比如当前网络上的热门话题,然后导入到数据库中.所以, 我这边随机的时候,不能乱造.因此我的策略是,从数据库将已经存在的那几条真实数据查询出来,然后job中根据随机数,选择其中一条来仿造一条新的, 随机生成新记录的…
一次ceph recovery经历 背景 这是一个測试环境. 该环境中是cephfs 一共12个节点, 2个client.2个mds.8个osd mds: 2颗CPU,每一个4核.一共是8核. 128G内存, 单独的两个节点,仅仅作为mds cpu型号: Intel(R) Xeon(R) CPU E5-1620 v3 @ 3.50GHz osd节点, 每一个24核, 8 × 4T SATA盘, 1 SSD:INTEL SSD SC2BB48 (480G) 64G内存 cpu型号: Intel(R…
目录 问题描述 查看core文件 使用gdb查看core文件 总结 问题描述 今天在写代码时,运行时奔溃了.segment fault,而且是在程序退出main()函数后,才报的. 唯一的信息是:Segmentation fault (core dumped) 简直是一头雾水. 查看core文件 系统默认是不会生成core文件的,ulimit -c unlimited把core文件设为无限大. 使用gdb查看core文件 gdb ./example/sudoku_batch_test core…
我是用了netty搭建了一个UDP接收日志,堆启动配置 Xmx256  Xms256 ,项目刚启动的时候,系统进程占用内存很正常,在250M左右. 长时间运行之后发现,进程占用内存不断增长,远远超过了我设置的堆内存大小,查看幸存者,伊甸园,老年代,gc都很正常,堆使用数据一切正常,甚至我怀疑元空间占用内存大,查询之后发现,元空间也只用很小,而且自从程序启动开始,浮动很小.为此,我又把JVM相关知识点又拿出来翻了一遍 那么多出来的内存使用是从哪里来的? 后来通过查询相关资料才发现,Java进程内存…
本文记录了打PSU的全过程,意在体会数据库打PSU补丁的整个过程. 1.OPatch替换为最新版本2.数据库软件应用19121551补丁程序3.数据库应用补丁4.验证PSU补丁是否应用成功 1.OPatch替换为最新版本 [oracle@DB usr2]$ id uid=(oracle) gid=(oinstall) 组=(oinstall),(dba) 环境=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023 [oracle@DB usr…
起因,阿里云多次提醒我的一台服务器有恶意发包行为,且给出了一些解决办法.之前也没太在意,就按照解决办法处理了一下.然后过一段时间,还是提示有此行为. 猜肯定是中了木马了,开始以为是被肉鸡了拿来做DDoS攻击别人了.今天去服务器上仔细看了一下.然后发现了问题究竟(目前猜应该如此,还等待观察). 现将过程记录如下: 1.先查看一下端口情况,发现有些名为ddg.xxxx的进程很可疑.然后看了下远程的链接IP,美国.法国等地方,很奇怪.网上搜了一下,没什么结果. [root@zhangtianguo ~…
起因 自己租用的BandwagonVPS上安装了个CentOS7,然后开始安装各种软件,结果yum安装MySQL发现MySQL在yum源中的Mysql不对劲,于是自己百度搜索安装方法. 终于我搜到了这篇文章:http://www.mamicode.com/info-detail-503994.html,于是我就兴高采烈地安装了起来. 安装过程 我不建议这么安装,因为我经历的是一个失败的过程,最后我也卸载掉了. 下载mysql的repo源 注意这是社区版的mysql 我在/usr/local下面新…
实验室有台旧电脑,想用它一台服务器. 不知为何,U盘启动盘死活不能启动,所以放弃了安装Linux的念头,直接在原来的XP上弄一个服务器,毕竟用的人也不多,也就局域网的这几个人, 本来主要是搭建一个FTP服务器,用xlight那是相当的方便啊! 但是,搭个支持php的http服务器确实废了周折,虽然去年就已经在自己的机子上搭了几次. 接着就是一阵折腾了. * * * * * * 我想省略一部分,因为中间折腾得太久了!直到现在我才搞明白!原来windows下的php以及apache都是在不同的vc平…
今天从qwiklab实验获取一组数据,大概有5万条,在qwiklab实验室使用的是pgsql数据库,但是今天想把他插入本地的mysql数据库中. 1.首先是查看一下数据内容: 数据中有的是空值,有的是boolean类型的值.那我们就要想想怎么插入数据库了. 2.我们先在mysql中建表. 建表语句比较长,一共有18个字段. 这里说一下:因为一开始是将数据中的“true”和“false”的数据插入到Mysql的boolean类型中,但是出现了50万条的警告,平均一条数据就10个警告.出现警告的原因…
新电脑安装了Ubuntu 14.04,但是网络连接中只有以太网而没有WiFi的选项. 打开System Setting系统设置-Software&Updates软件&更新-Additional Drivers附加驱动,无法加载出相应的驱动,更换为国内源也无法显示出相应的驱动. 打开Terminal使用命令查询网卡(hardware of Internet)状态 $ lshw -C network 详细信息如下 *-network UNCLAIMED description: Network…
1.环境的构建: 使用Mac系统自带的Git进行版本管理存在,Git是系统的Xcode集成的 查看版本的命令: $ git --version git version (Apple Git-) 查看git的安装目录: $ which git /usr/bin/git 2.常用命令 #使用git命令初始化文件夹,即创建git本地仓库 $ git init Initialized empty Git repository in /Users/Mac/Desktop/myapp/.git/ #配置全局…
REPL (Read-eval-print loop),即输入—求值—输出循环.如果你用过 Python,就会知道在终端下运行无参数的 python 命令或者使用 Python IDLE 打开的 shell,可以进入一个即时求值的运行环境.Node.js 也有这样的功能,运行无参数的 node 将会启动一个 JavaScript 的交互式 shell: $ node > console.log('Hello World'); Hello World undefined 进入 REPL 模式以后,…
1.appium server启动后,执行测试脚本,appium日志报错,提示appium setting未安装(原因是小米手机在用appium desktop调试时总是提示是否安装appium setting,并且默认是拒绝,调试过程中嫌麻烦就永久拒绝安装了),给小米手恢复允许通过USB安装appium setting 的权限,调试成功.并且有个惊喜的发现,通过启动appium server执行测试脚本时,只有第一次提示是否安装appium setting ,之后再执行脚本就不会再提示了,简直…
背景: 项目使用Python自带的logging库来打印日志 项目部署在一台Centos7的机器上 项目采用gunicorn多进程部署 过程: 1.LOG日志代码封装: 采用logging库,并设置when='MIDNIGHT',以天为单位,进行日志分割,前一天的日志会自动加上前一天的日期,最新日志始终会打印到mock-service.log文件中,以下为log打印的封装 #!/usr/bin/env python # -*- coding: utf-8 -*- # @Time : 2019/8…
1. 问题背景 在一次新版本功能开发完毕,配合测试的过程中,测试反馈某个XxlJob定时任务一直执行失败,在分析了日志之后,找到了报错的原因: Packet for query is too large (7251422 > 4194304). You can change this value 是因为在程序中做了批量INSERT,而一次插入的数据量太大,超过了MySQL服务器的配置,导致插入失败.所以,我们只需要将这个配置改大一点就行. 2. 解决方案确定 经过搜索,发现决定单次插入数据量的配…
本文衔接上文"记录一次无聊的(经历了Nodejs -> Shell -> C)的探索问题过程",服务器上git版本是1.8.3.1,使用的pm2来管理nodejs进程,并且配置了一键deploy项目.在deploy执行过程中,新版本的pm2 => pm2-deploy的shell中没对git老版本做兼容,上文提到解决方案: 1. pm2-deploy做兼容,相关shell例子也已给出 2. 升级服务器git版本 本文围绕一次 git 升级操作展开,并且分享此次过程的操…
在我多年的 Python 编程经历以及在 Github 上的探索漫游过程中,我发掘到一些很不错的 Python 开发包,这些包大大简化了开发过程,而本文就是为了向大家推荐这些开发包. 请注意我特别排除了像 SQLAlchemy 和 Flask 这样的库,因为其实在太优秀了,无需多提. 下面开始: 1. PyQuery (with lxml) 安装方法 pip install pyquery Python 解析 HTML 时最经常被推荐的是 Beautiful Soup ,而且它的确也表现很好.提…
搜索 此文档来源自网络 安装 PYTHON❝ Tempora mutantur nos et mutamur in illis. (时光流转,吾等亦随之而变.) ❞ — 古罗马谚语 深入欢迎来到 Python 3 的世界.让我们继续深入.本章中,您将安装适合自己的 Python 3 版本. 何种版本的 PYTHON 适合您?对 Python 要做的第一件事情是安装.还是说已经装了? 如果使用的是托管服务器上的帐号, ISP[互联网供应商] 可能已经安装了 Python 3 .如果是在家运行的 L…
为记录阿里的电面经历,特与大家分享,岗位是JAVA研发工程师. 一面主要问题如下: 1)首先自我介绍 2)数据结构算法的基本问题,如排序算法,二叉树遍历,后序遍历非递归,图的最短路径问题 3)对一个数组进行绝对值排序的算法 4)java中hashmap的底层实现 5)java中垃圾回收机制GC原理等 6)介绍自己的项目,数据库中用到的数据结构数据模型,死锁的概念(问的应该是数据库的死锁),如何避免死锁? 7)乐观锁和悲观锁? 8)一致性hash算法 9)项目中业务对象的关联关系/关联方式,谈谈左…
很多刚刚接触nodejs的初学者,都会经历一个很繁冗的环境安装过程. 一般主要要安装nodejs,npm和express三样东西.那么这三样东西分别是干什么的呢? 本篇文章就大致介绍一下这三样东西分别是干什么的: nodejs 首先要说的是nodejs,既然我们要装nodejs,那这个其实就没什么好解释的. nodejs就是运行框架,就像C#和.net,JAVA和JRE一样,nodejs就是nodejs. 所以其实装了nodejs以后,nodejs其实就已经可以编码和运行了. npm npm是一…
前言:一条线,竖着放,如果做不到精进至深,那就旋转90°,至少也图个幅度宽广. 通俗解释上面的胡言乱语:还没学会爬,就学起走了?! 继上篇<Nodejs学习笔记(二)——Eclipse中运行调试Nodejs>之后,代码编写环境就从Sublime转战到Eclipse下,感觉顺手多了.于是就跟着Scott老师学起了Nodejs建站的课程(推荐大家点进去看看),踏上了未爬先走的路子. 作为一个白里透白的小白来说,今天主要记录下如何用Nodejs搭建一个小小的网站,以及自己对于这种Nodejs建站的运…
github代码托管地址: https://github.com/Iwillknow/microblog.git 根据<NodeJS开发指南>实例进行实战{{%并且希望一步步自己能够逐步将这个博客系统一点点完善,我会在github上及时更新代码%}}.不得不提下的是,因为版本原因,只是按照书本上的步骤是无法使程序正确跑起来.这样倒有一个很好的好处,在不断地解决问题的过程中,将学到更多的东西. 本文不会对app构建步骤进行详细说明,因为你完全可以参照书本进行搭建.本文重点是解读代码,解读整个ap…
最近在学习nodejs,作为一个从未学过javascript的程序员,把自己学习的过程贴出来,当做记录和总结吧. 1. nodejs的原理: nodejs完全是基于事件轮询机制的一个javascript框架,内部有维护一个事件的队列,每一个事件id对应一个响应函数,进程循环读取队列的事件,调用响应函数进行处理,注册到调用是一个异步过程,其实和c语言里面的注册回调函数,然后调用回调函数的流程一样,整个实现机制比较简单,只是使用js写出来的可能更容易上手. 2. nodejs通过模块来实现封装性的,…
记录一下今天在linux下折腾nodejs的过程,相互学习: (不知道为什么用源代码安装,调用npm的时候老是会出现找不到npmlog的 错误,后来换用下了个二进制 来搞,假设那个牛牛知道为什么.希望你能留个言,多谢啦) 第一步:下载nodejs二进制库 wget http://nodejs.org/dist/v0.10.32/node-v0.10.32-linux-x64.tar.gz 第二步:下载ghost开源码: wget https://ghost.org/zip/ghost-0.5.2…
本文为在Fedora 20下编译安装Mathmap1.3.5的编译过程,如果你仅仅需要快速的安装Mathmap,那么请拉至文末的"快速安装" 其实,过程还是很有趣的,充满Error,曲折,学会使用搜索才能解决遇到的种种问题,探索的过程是重要的,这也是本文流水式记录安装过程的原因,以前也编译过软件,但是失败的经历甚多,曾经由于不会的实在太多,导致编译gimp结果把桌面搞崩.本次安装过程仍是胡乱摸索,文末会有收获及总结. 如果你要在Ubuntu下编译Mathmap,你可能需要去看下面这个帖…
前言 只有光头才能变强 这阵子跑去面试Java实习生啦~~~我来简单介绍一下背景吧. 广州三本大三在读,在广州找实习.大学开始接触编程,一个非常平庸的人. 在学习编程时,跟我类似的人应该会有一个疑问:究竟学到什么程度才能找到一份实习/工作呢? 针对的是中小公司.. 我是在6月1号开始投的简历找Java实习: 实习憎投了17份: 在前程无忧投了69份(没有算今天刚投的): 在boss直聘沟通51个,可以发送8份简历出去: 下面是我的简历(我不会写简历,需要修改的地方还请大家不吝在评论区留言) 可能…
经历各种坑,从硬件到文件,终于安装成功. 有需要安装或使用S4HANA(含Fiori)的同学可以参考. 安装文件分享给大家 链接:http://pan.baidu.com/s/1mi7LfIS 密码:pbc6,包括所有S4HANA安装文件,VMware vSphere安装文件,GUI安装文件等. Fiori配置指南请自行下载,www.sapdoc.cn/114.html 1. 硬件准备 这里的坑最多,百度上没人给出具体的硬件要求,SAP账户找不到了也没法查相关的Note,直接买了Dell R71…
版权所有@foreach_break] [博客地址 http://www.cnblogs.com/foreach-break] 可以转载,但必须注明出处并保持博客超链接 背景 自从2013年离开北京后,就没有在固定单位上班了.期间捣鼓过一些东西,也挣了点小钱,日子也没有到过不下去非要找工作的地步. 只是觉得自身仍有不足,作为技术,还是想再开阔一点,再深刻一点,再专业一点. 也没有去刻意地投递简历,本来老婆怀孕,自己在家,时间比较多,所以就写写博客,所以会有一些来自私信的机会. 既然有机会,那就愉…