这两天工作又比较忙,没看书,没思考,写一篇简单的技术教程。其实我是不想写这种的,因为本身没啥技术含量,只是把写的东西整理一下,即提高不了技术,也没有思考深度,以后要少写,这类还是以笔记的形式记录到博客即可。
最近公司在推jira,但是整体感觉用起来很困难。主要因为是日常浏览器用的会比较多,基本上chrome上都有四五十个tab标签,经常会切到其它tab看东西,然后每次想要找jira的时候都不太好找,所以就想把jira单独打成一个桌面应用,整体操作和心理感受上感觉都简单很多。
electron介绍
Electron是由Github开发,用HTML,CSS和JavaScript来构建跨平台桌面应用
有些APP本身加了签名所以不太好直接拿到接口去抓取,所以需要用APP的浏览行为来抓取数据。当然这不是很好的方法,理论上是可以研究api参数或者反编译来找到签名逻辑,但是这个是比较难的,成本太高,所以如果不是量很大的抓取可以用如下的半自动化方法。
手机+charles+mitmproxy+scrcpy
手机
需要用手机抓包,所以可以用Iphone或者Android 7 以下系统或者root过的安卓手机
charles
charles 本身可以直接抓包,但是它不能二次开发,所以需要把charles的全局代理接口配置到 mitmproxy上
mitmproxy
mitmproxy 也是一个抓包工具,
第一步先用 md-to-pdf 把markdown文件生成多个独立的pdf
第二步使用 wps 的 pdf 合并功能,合并多个文件
为什么要规范 git commit message
无规矩不成方圆,尤其是在多人合作项目中如果每个人按自己的习惯 commit,那么整个 commit 的log将会一团糟糕
commit message 格式
Commit message 都包括三个部分:Header,Body 和 Footer
<type>(<scope>): <subject>
// 空一行
<body>
// 空一行
<footer>
type
feat:新功能(feature)
fix:修补bug
docs:文档(documentation)
style:
问题
搭建好 svn 之后可以正常拉下库,但是 commit 的时候报以下权限错误。
> $ svn commit -m "test" svn: E170001: Commit failed (details follow):
svn: E170001: Authorization failed
解决
问题是因为 svn 权限配置问题。
Kafka 简介
Kafka 是一个基于分布式的消息发布-订阅系统,它被设计成快速、可扩展的、持久的。与其他消息发布-订阅系统类似,Kafka 在主题当中保存消息的信息。生产者向主题写入数据,消费者从主题读取数据。由于 Kafka 的特性是支持分布式,同时也是基于分布式的,所以主题也是可以在多个节点上被分区和覆盖的。
信息是一个字节数组,程序员可以在这些字节数组中存储任何对象,支持的数据格式包括 String、JSON、Avro。Kafka 通过给每一个消息绑定一个键值的方式来保证生产者可以把所有的消息发送到指定位置。属于某一个消费者群组的消费者订阅了一个主题,通过该订阅消费者可以跨节点地接收
webcron
源码地址
功能列表
基本任务创建、启动、手动执行、暂停
任务日志
任务执行结果邮件通知
任务分组
任务运行实例控制
缺点
任务只能在单机跑
不能添加用户
评价
安装部署简单,功能页面简洁,适合任务量不多个人或者小型项目组使用。
gocron
源码地址
功能列表
基本任务创建、手动执行、禁止执行、删除
任务依赖
任务分组
超时、重试
可以选择任务执行结果通知不同用户,通知类型包括邮件(并支持模板配置)、slack、webhook。
任务日志
支持分布式,添加执行任务节点,创建任务可指定任务可运行的节点(如果是单例模式,会选择一台执行)
用户管理
登录日志
执行方式支持
我电脑上原本装了Xcode,但是我电脑是128G,用了两年东西越来越多硬盘不够用了,而我本身开发中很少用Xcode所以就把它卸载了,卸载之后发现Xcode占了11G左右的空间。。
卸载Xcode之后执行git,报错如下:
> $ git status
xcrun: error: active developer path ("/Applications/Xcode.app/Contents/Developer") does not exist
Use `sudo xcode-select --switch path/to/Xcode.app` to specify the Xcode t
前提
我们一般为代码添加远程仓库一般是:
git remote add <name> <url>
比如以我的一个代码库为例:
git remote add origin git@github.com:yushuailiu/go-algorithm.git
这样我们就可以向github提交代码了。但是有时候我们可能想要把代码同时提交到gitee上,那么我们可以像上面一样添加一个新的仓库
git remote add gitee git@gitee.com:liuyushuai/go-algorithm.git
然后如果我们有代码更新我们需要同时更新origin和gitee
shadowsocks 使用的 sockets5 代理,而一般只有浏览器支持,所以使用 shadowsocks 可以实现科学上网,但是其他的应用却仍无法科学上网,所以要想实现全局科学上网需要 Proxifier 支持。
Proxifier介绍
Proxifier是一款功能非常强大的socks5客户端,可以让不支持通过代理服务器工作的网络程序能通过HTTPS或SOCKS代理或代理链。支持 64位系统,支持Xp,Vista,Win7,MAC OS ,支持socks4,socks5,http代理协议,支持TCP,UDP协议,可以指定端口,指定IP,指定域名,指定程序等运行模式,兼容性非常好。有点类