自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Clockworkai's Blog

不会写代码的猪,是没用的猪

  • 博客(40)
  • 收藏
  • 关注

原创 关于 Anaconda 创建环境后没有名字的问题

写在前面好久没写文章了,今天水一篇吧。正好倒腾了一下 Anaconda ,遇到点问题,记录一下细节。关于 Anaconda 在 Windows 下的环境命名问题。Anaconda 的 “约定优于配置”首先,先说一下 Anaconda 的命名原理:在装好 Anaconda 后,会有个目录,比如我的是在 D:\ProgramData\Anaconda3 这里,然后这个目录下有个 envs 目录,这个目录下的文件夹的名字 就是 conda 虚拟环境的名字。这在软件设计里叫“约定优于配置”,这是一种约定,

2021-01-07 11:15:59 7758 5

原创 关于使用 VSCode 进行格式化 Vue.js 代码的记录

最近在做一个网站,前端用的是 Element + vue.js,然后编辑器用的是 VSCode。在使用 VSCode 的时候,首先要安装 vetur 插件,但是 vetur 插件格式化代码会有问题,比如 tab 键的空格数量是 4 ,单引号变双引号,语句结束加分号等问题。一开始因为不太熟练,第一次单干前端,就忍着不使用格式化代码,慢慢有功夫了,决定彻底解决格式化的问题。问题1:格式化后,单引...

2019-09-12 11:55:13 274

原创 关于一些面试题的记录

本月因为离职在家了,做着一个全栈开发的外包,没啥技术突破好记录的。正巧最近在一个全栈群里有一些有趣的面试题。这边作为一些记录,也算是保住“月更博主”的称号。问题1:如何用 git 命令查看某个文件某一行最后是谁改的?看到这个问题,第一反应是 IDEA 的 show history 功能,日常都是这样玩的,但是这里要求用git 命令行去做。去搜了一下,发现 git blame 可以做到。...

2019-08-31 14:44:33 293

原创 使用 etcd 的分布式锁进行选主的尝试

最近做项目在使用 etcd, 由于项目里很多定时任务,在实现高可用的时候需要进行选主,即只执行一次定时任务。之前的项目用的是 zookeeper 进行选主。大概思路是抢一个key,没抢到的就不执行了,抢到的就执行,类似于 redis 的 setnx 。因为项目本身用了 etcd,所以再引入 zookeeper 是不太合适的,同时 zookeeper 选主一旦定时任务如果执行失败,无法重试。e...

2019-07-12 14:59:17 1521 1

原创 Etcd 的最大连接数问题 (grpc 的最大连接数问题)

最近有个项目要用 etcd ,同时会有很多服务来连 etcd ,但是没搞清楚 etcd 的最大连接数是多少,总是心里虚,虽然可以压测。首先试了一下,测试机器上可以创建多少个连接,大概 879 个左右。但是为什么是 879 个呢?etcd 用的是 grpc,所以 etcd 的最大连接数问题也是 grpc 的最大连接数问题。所以去 grpc-java 的 issues 上找了一下,正好发现有...

2019-06-13 17:57:03 4826 1

原创 jetcd 连接无法断开问题修复

项目马上要上线了,突然发现预发布环境的 etcd 连不上了。虽然别人催的很紧急,但出于保存现场的目的,还是详查了一下为啥 etcd 连不上。排查结果排查过程就不详细列举了,就是一个抽丝剥茧的过程。很艰难,其实最后发现真相才觉得过程都不值一提。结论是:jetcd 在创建 watcher 之后,如果要关掉它,不管是Client.close()、还是watcher.close(),都无法马上...

2019-05-30 19:41:57 1145

原创 etcd 源码阅读环境搭建

最近一个项目用了 etcd,想研读一下 etcd 源码。既然是源码阅读,第一步就是搭建源码阅读环境,好像网上没有类似的文章;官网也没有提供文档。在下不算特别熟悉 go 语言,有一年没认真写 go 了,所以倒腾了很久。总算还是倒腾出来了,遂写文章记录一下,好记性不如烂键盘。注:本文暂时基于 etcd 的 master 分支,对于 release-3.3 分支,还没有详细研究过,详细研究过之后...

2019-05-30 19:24:59 871

原创 etcd TLS 全攻略

最近做了一个分布式数据推送项目,第一版是用普通 http 轮询,第二版是 grpc 的 stream 长连接,第三版是用 etcd 的 watch 功能进行监听。其中跨机房的数据备份是用官方提供的 make-mirror,于是乎如何在公网上安全保密的传输就格外重要了。make-mirror首先,make-mirror 这个官方工具有个巨大的缺点,就是假如两个 etcd 集群都设了账号密码...

2019-04-30 09:42:27 1879

原创 PostgreSQL 使用总结

本文不是一篇有严肃主题的 blog ,只是好记性不如烂键盘,权当做 PG 使用总结的记录,包括一些问题的总结。关于 PG 的一些理解PG 有一点特别让人痛苦的:创建一个用户一定要创建一个系统用户,据我司运维说,这是为了创立管理员。只好先记着了,印象中 MySQL 是不需要创建用户的,不知道是不是会有安全问题。进入用户su - postgres在 root 用户下,按下 su ...

2019-03-10 10:59:31 315

原创 GitHub 无法连接问题

最近遇到 ping github.com 总是显示往 127.0.0.1 发送测试包。主要是移动的网络会有问题。采用“某种手段”的全局模式之后,网页可以上 github 了,但是 iTerm2 仍然无法 clone 或者 push 。直觉上的错误解决方案直觉上总是觉得应该是 iTerm2 去连代理,然后找了一堆解决方案,总是感觉比较麻烦,而且不可控因素比较多,同时失败率较高。...

2019-02-17 15:56:32 2030

原创 IPv6 踩坑记录

最近在写 IPv6 相关的需求,在此记录一些技术细节IPv6 存储方法首先 IPv6 的长度是128位,所以最直接的存储方式就是存一个 byte 数组,长度为16( JDK 的源码里就是这么干的),但是 byte 终究操作不是特别熟练,总之在下没有采用这种方式。Long 的长度是 64 位,所以还可以使用两个 Long 去存储一个 IPv6,但是请注意,所有的比大小需要在无符号的基础上。...

2019-01-20 17:50:30 1392

原创 微信公众号文章(HTML)转 Word、PDF 方法

事情是这样的,一个朋友需要把一个微信公众号文章导出,然后转成 PDF ;之后又加了一个需求,需要转成 Word。遂记录一下解决方案。解决方案HTML 转 PDF用 Chrome 打开微信公众号链接,然后在 Chrome 的设置里选择“打印”,然后选择另存为PDF。注意:一般页脚上会有网页的链接,如果需要去掉的话,请把页眉和页脚的勾选去掉。同时导出前注意是否所有图片都正常加载了。...

2019-01-13 08:54:25 34729 5

原创 记 Spring Cloud 的首次请求卡住问题

首先这不是 Spring Cloud 的锅,只是我遇到时是在用 Spring Cloud。为了之后大家排查问题比较方便,我决定加上这个关键字。解决方案启动参数加上:-Djava.security.egd=file:/dev/./urandom问题描述在一个微服务启动之后,有些接口会在首次请求的时候卡住,需要三到四分钟才会返回,然后会有 Broken pipe 报错。调试发现,本...

2018-12-31 11:30:06 1595

原创 Deep Complex Networks 项目运行攻略

首先,本文档会尽量多地覆盖一些细节。也就是说尽量把你当做啥都不懂的,宁可错杀一千,绝不放过一个你不知道的知识点,敬请谅解。(此风格为Tips)正文开始,现在越来越多的论文会在GitHub上公开源代码。本文档是如何将GitHub上的代码运行起来的技巧。这里多说一些关于GitHub的技巧吧,GitHub是一个面向开源及私有软件项目的托管平台。类似的有码云(马爸爸真的没有生气吗??),原来...

2018-11-10 07:37:39 2057 8

原创 PostgreSQL 和 MySQL 关于单引号、双引号、反单引号的区别。

解决方案写在前面:MySQL 可以使用单引号(’)或者双引号(")表示值,但是 PG 只能用单引号(’)表示值,PG 的双引号(")是表示系统标识符的,比如表名或者字段名。MySQL可以使用反单引号(`)表示系统标识符,比如表名、字段名,PG 也是不支持的。事情的起因是同事发现好像反单引号(`)不能在 PG 中使用。在 MySQL 和 Spark SQL 中,我觉得用反单引号是一个优秀的习...

2018-10-30 09:04:32 5729 1

原创 Spring Cloud 使用 log4j2 的各种坑

已经连续46天没有写文章了,主要是最近忙着折腾 Spring Cloud 。后续在下会持续发布一些关于 Spring Cloud 相关的文章。今天记录一些关于 log4j2 的坑。配置 log4j2pom.xml 需要把自带的 logging 剔除掉,然后加上 log4j2 的依赖。 <dependency> <groupId&gt...

2018-09-21 15:18:32 6127

原创 MacBook 如何将 Touch Bar 上的默认按键移出(比如 Siri )

解决方案写在前面:系统偏好设置 -> 键盘 -> 自定功能栏,然后就可以将鼠标光标移到 Touch Bar 上,然后就可以将一些默认的按键移出了。问题描述:平常用 MacBook 在按 delete 键时总是容易误触到 Siri 键,然后总是得按两次 esc 键退出。今天我终于不想拖延了,决定把 Siri 键从 Touch Bar 。解决方案然后去查了一下得出:...

2018-08-05 16:23:44 6868

转载 Shell curl 命令报错:(60) SSL certificate problem: self signed certificate

curl 命令向服务器发送 https 请求root@53c79d8a7095:~# curl --header "PRIVATE-TOKEN: Nf1kK4MeF4fPMo7d4jY2" https://172.16.0.168/api/v4/projects?search=xxxxcurl: (60) SSL certificate problem: self signed cert...

2018-07-27 17:22:52 28392 5

原创 Spark 源码阅读学习(一)

写本文的目标就是立下 flag :好好研读 Spark 源码,从 branch-0.7 这个分支开始。如何通过阅读源码提高自己大家都说要多读优秀开源框架的源码,那么怎么读呢?像 Apache Spark 在 GitHub 上有两万多个 commit,将源码导入 IDEA 之后好多好多源码文件,看着很绝望。后来我去看知乎上的如何去阅读并学习一些优秀的开源框架的源码?,很多优秀的回...

2018-07-25 20:22:57 1429 1

原创 Linux Shell 命令自动补全(各方资料汇总补全版)

在下所在的公司定义了一种路径,配合自定义的 loader 命令;遂命令在下完成自定义路径的自动补全需求。关于Linux Shell命令自动补全已有的一些优秀 blog没有开花的树的《详解Linux Shell命令自动补全》 这篇文章讲得比较系统,最后给的 demo 也特别优秀。Linux中10个关于命令行自动补全的技巧 注意这篇文章中的第10条:如果定义的补全规则没有生...

2018-07-13 18:42:28 4189

原创 Kafka 获取N条消息

解决方案写在前面:./kafka-console-consumer.sh –topic xxxxxx –bootstrap-server localhost:9092 –max-messages 10 –from-beginning业务线有使用 Kafka,有时想从 Kafka 里弄些数据出来做测试,但是 --from-beginning 就有点太多了,同时满屏刷,不太好,如果有类似于...

2018-06-08 16:55:03 6672 3

原创 Docker 学习笔记(一):Docker 基本命令 和 用 Dockerfile build 一个 JDK 镜像

本文档为学习笔记,部分内容将持续更新。 注:本人信仰用最简单的方式去做一些事,怎么简单怎么来,也许不求甚解。Docker 基本命令docker version获取 docker 版本号docker images获取所有的镜像docker rmi xxxx删除镜像源docker ps -a获取所有容器docker ps -a -q 获取所有 CON...

2018-05-13 15:54:45 762

原创 Markdown 入门教程

本文档使用 Markdown 语法编写,同时这是一篇水文,只是专门写的教程,但是不舍得成为抽屉文学。为什么要有 Markdown ?(以下为个人理解)平常大家在 Windows 下都是使用 Word 去编辑一些文字。对于程序员而言,需要依赖一个 Word 软件去编辑文字是一件很痛苦的事,我们希望可以有一种通用的格式规范,可以只是简单依赖记事本,一次编辑,到处都是一样的样式转成PD...

2018-05-12 16:34:50 534

原创 Spark 源码调试总结

最近在测试 Spark 2.3 的性能,其中踩的一些坑,调试源码的一些技巧,适当记录一下。本文是个人随笔,也许逻辑不够清晰,内容较多,敬请谅解。

2018-04-20 15:02:56 1063

转载 在IDEA中配置Gradle Home

本文只是转载 StackOverflow 上的一个问题,同时做个记录,将来方便查找。IDEA 导入项目时需要输入 Gradle Home

2018-04-03 10:13:30 16720

原创 修改 Hive Metastore 里记录的 InputFormat、OutputFormat

解决方案写在前面:alter table xxxx set fileformat parquet因为同事升级Spark时出的bug,误以为需要修改 Hive Metastore 的记录。然后历程比较坎坷,所以记录一下Spark 1.6.2 创建分区表时,在 Hive Metastore 里记录的是# Storage InformationInputFormat: ...

2018-03-29 14:09:36 1666

原创 Spark Worker 启动报错:No subfolder can be created in

解决方案写在前面:在spark-env.sh里有个参数 SPARK_LOCAL_DIRS,是存放shuffle数据落盘的目录,这个报错就是这个目录不存在导致的。创建目录重启worker,再将核数和内存均衡一下。

2018-03-29 10:57:19 863

转载 补充:compile: version "" does not match go tool version ""

compile: version “go1.9.2” does not match go tool version “go1.10”

2018-03-05 17:43:16 11117

原创 sbt 使用笔记

本文为个人的摘录,将持续更新。完全资料在 https://github.com/sbt/sbt-assembly

2018-01-26 14:28:06 374

原创 给 Spark2.2 加上自定义 Hint 优化

在Spark2.2中,增加了对Hint的解析,支持用户broadcast hint。本文的目的是在 Analyzer 里增加一个 function,支持将指定的 UnresolvedAttribute 加上 Cast。

2018-01-19 09:24:00 1564

原创 关于 macOS High Sierra 系统不带ftp命令的解决方案

解决方案1:找一台系统版本低的MacBook,将 ftp 命令文件拷贝过来(一切命令皆文件)解决方案2:brew install lftp。使用 lftp 命令吧。

2017-11-23 11:16:12 1628

原创 关于 Goroutine 的一些使用细节

在使用 Go 语言的 go 关键字的时候,总是有一种错觉:goroutine 没有执行。

2017-11-08 10:57:35 573

原创 关于 Sublime Text 3 清空缓存文件(之前打开的文件)

在下使用 Sublime Text 经常不注意会打开一些大文件,会直接卡住。这回在 MacBook 环境下遭遇这样的尴尬:打开大的文件,没有及时关掉,直接卡住,只能强制退出。强制退出后,再次打开,仍然会保留当时打开的大文件,即重新尝试打开这个大文件,也就会一直卡住。

2017-09-19 13:39:47 6821 2

原创 致远行的人,自编TensorFlow教程(2)

在上一篇文章中,我们介绍了使用TensorFlow框架有两部分组成:构建计算图,用会话启动计算图。今天我们来介绍 tf.placeholder,feed_dict,实现一个 Wx+b 的函数。本文章仍然保持不够专业的传统,只求达到效果,可以实现一些东西;或者说“路子比较野”。同时确实不一定保证章节与章节之间条理清晰。

2017-07-16 08:41:54 340

原创 致远行的人,自编TensorFlow教程(1)

这是本人自编的 TensorFlow 教程,本人对 TensorFlow 理解有限,请各位看官轻喷。本教程适用于 Python 基础不够好的同学,但仍然要求懂一些Python的基本语法。因为追求更加通俗易懂,本教程追求代码完整,描述冗长,请各位耐心看。谢谢!首先是关于 TensorFlow 的安装,请参考 http://www.tensorfly.cn/tfdoc/get_started/os_s

2017-07-11 08:52:05 346

原创 TensorFlow的个人理解

本篇文章只是基于自己对TensorFlow使用过程中的个人理解,以及一些基本注意事项。 TensorFlow™ 是一个采用数据流图(data flow graphs),用于数值计算的开源软件库。节点(Nodes)在图中表示数学操作,图中的线(edges)则表示在节点间相互联系的多维数据数组,即张量(tensor)。它灵活的架构让你可以在多种平台上展开计算,例如台式计算机中的一个或多个CPU(或G

2017-06-29 15:07:31 482

原创 CentOS 7下安装MySQL

首先下载rpm,比如mysql57-community-release-el7-9.noarch.rpmwget http://dev.mysql.com/get/mysql57-community-release-el7-8.noarch.rpm然后sudo rpm -ivh mysql57-community-release-el7-9.noarch.rpm sudo yum install

2017-05-16 18:36:13 498

原创 关于spark-submit报错java.lang.NoClassDefFoundError: scala/runtime/LambdaDeserialize

解决方案写在前面:将 Scala 的版本改成 2.11.8,环境是 Spark 2.1.0 。

2017-04-23 08:27:55 7361

原创 CentOS7 下安装 Python3.6.1

假设你的CentOS上啥都没装,我们该怎么装 Python3.6.1 呢? wget https://www.python.org/ftp/python/3.6.1/Python-3.6.1.tgz看到这个也许你就关掉页面了,你希望通过 yum 直接安装。当然方法也有,不过貌似只能装 Python3.4。详情看 * http://www.cnblogs.com/elodio/p/490016

2017-04-11 16:42:42 754

转载 nginx: [error] invalid PID number "" in "/run/nginx.pid"

再重启云主机(系统)之后,执行 nginx -t 是OK的,然而在执行 nginx -s reload 的时候报错nginx: [error] invalid PID number "" in "/run/nginx.pid"经过查找,找到http://www.cnblogs.com/yuqianwen/p/4285686.html需要先执行nginx -c /etc/nginx/

2017-04-06 10:00:53 12674 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除