190505-InfluxDB之权限管理

influxdb安装完毕之后,默认属于裸奔状态,为了安全起见,当然是需要加上权限管理,下面介绍下如何设置权限

190429-Python之获取本机ip地址

环境区分,一种常见的case就是根据ip地址段进行界定,通过给开发环境,测试环境和生成环境映射到不同的ip地址段机器,因此也就有了获取ip地址的需求

190424-Python之16进制与10进制转换

最近正好用到了16进制和十进制之间的互转,发现python相比于java而言,有更优雅的实现方式,下面记录一二

16进制转10进制

1
2
s = '0x12da'
ans = int(s, 16)

10进制转16进制

1
ans = hex(120)

190412-FastJson序列化对象中非字符串类型key输出非标准格式json串问题记录

采用fastjson作为项目的json序列化和反序列化工具,遇到一个蛋疼至极的问题, 如Map,key为int,则输出的字符串中,key没有被双引号括起来,导致前端解析失败

190403-HashMap的key典型错误使用姿势

记录一个非常低级的错误导致的java应用一直fullgc的问题;根本原因就是HashMap的key使用姿势不对

190401-SpringBoot远程debug设置

记录下SpringBoot jar启动方式,开启远程debug的命令

1
java -server -Xms512m -Xmx512m -XX:AutoBoxCacheMax=20480 -Xdebug -Xrunjdwp:server=y,transport=dt_socket,address=9999,suspend=n -jar web.jar

190326-MySql查询时间戳日期互转

mysql内部提供了时间戳和日期互转的函数方便直接使用

  • from_unixtime(time_stamp) : 将时间戳转换为日期
  • unix_timestamp(date) : 将指定的日期或者日期字符串转换为时间戳

190319-Python之URL解析姿势

记录下python3+中,如何解析url,获取想要的信息过程, 首先看下url的构造,基本结构如下

IMAGE

我们主要借助的是 urlparse 来实现参数解析

190318-Python之异常堆栈信息打印

使用python的logging模块进行日志打印,发现堆栈信息总会被吃掉,导致分析问题缺少必要的上下文,搜索一番才发现,原来是使用姿势不对

190315-Quick-Fix 通过反射执行任意类目标方法的实现全程实录(中篇)

全程实录上篇,主要介绍了如何解析传入的String参数为我们目标方法的参数类型和对象,其中主要讲述的是基本类型、Class类型、泛型以及普通的POJO类型转换;我们这一篇,目的则放在如何找到需要执行的类和方法,这里需要借助前面的参数解析结果来确定目标方法

190311-Quick-Fix 通过反射执行任意类目标方法的实现全程实录(上篇)

反射可以说是java中非常强大的一个特性了,而我们的quick-fix整个项目,也都是基于反射的基础实现任意目标方法的调用执行,对于fix项目而已,核心在于以下几点

  • 如何将外部请求定位我们需要执行的类、方法
  • 如何将外部参数转换为目标方法的可执行参数
  • 如何执行目标方法

简单来讲,就是封装参数为目标类型,定位目标,然后执行

190308-Mysql DDL出现长时间等待MDL问题分析

给表新增字段时,发现锁表了,查看进程,提示Waiting for table metadata lock,等待锁释放;然而蛋疼的是几分钟过去了,依然没有任何的进展

现在就有几个问题了

  • Metadata Lock 是什么鬼
  • 是什么原因导致一直等待

190216-MongoDB之Collection导入导出

mongodb中集合的导入导出,在robot3t工具中没有找到对应的方法,记录下控制台的操作流程

主要利用: mongoexportmongoimport

190212-linux线程数、进程查询

ssh登录远程服务,忽然提示su: failed to execute /bin/bash: 资源暂时不可用,然后通过root账号登录服务器没有问题,但是使用su切换用户时,依然失败,提示上面的错误,搜索一下可能原因是线程数沾满,杀掉一些占用大量线程的进程即可;然后记录下linux下线程数的相关操作

190211-Python之时间和日期使用小结

对于日期的操作可以说是比较常见的case了,日期与格式化字符串互转,日期与时间戳互转,日期的加减操作等,下面主要介绍下常见的需求场景如何实现

190127-Git项目代码行数统计

统计项目某个某个时间段的行数

1
git log --author="$(git config --get user.name)"  --before='2018-12-31 23:59:59' --after='2018-01-01 00:00:00' --pretty=tformat: --numstat | awk '{ add += $1 ; subs += $2 ; loc += $1 - $2 } END { printf "added lines: %s removed lines : %s total lines: %s\n",add,subs,loc }'

190124-查看进程tcp连接情况

如何查看一个进程的tcp连接情况?

1
lsof -p 进程号 -nP | grep TCP
Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×