最近一直在做大数据下载和上传工作,其中比较麻烦的就是一个大文件经过分段下载以后如何确保其完整性。比如下载到一半断了,需要进行断点续传。比如上传过程中出现了问题,无法上传大文件,需要切成小份,上传以后在合并。
Read moreMongoDB分片集群扩容与缩容
MongoDB开启分片以后,有两种扩容(缩容)方式。一种是纵向扩容,在现有的分片副本集上添加新的机器节点。这种只需要在副本集内部进行数据复制。另一种是横向扩容是扩展分片数量,需要创建新的副本集并创建新分片,随后要进行数据自动分割迁移。
Read moreCURL断点续传
CURL帮助文档
Curl非常有用,以下是遇到的一些问题和解决方案。
Read more使用CentOS 7.9搭建ShadowSocks服务
由于在网上搜索了一圈,发现都是使用Python直接安装ShadowSocks服务,但是目前python支持的版本为ShadowSocks 2.8,非常老旧的版本。首先为了安装Python 3.10也花了不少时间,主要是遇到了openssl的问题。所以本文分两个部分:第一部分为安装Python3.10,主要是要说明那个pip报SSL错误的大坑;第二部分为安装shadowsocks-libev。
Read more基于xPath的Javascript模拟操作
开发爬虫最基本的技能就是通过xPath定位获取数据,无论是Beautiful Soup还是Lxml这些包,通过xpath定位数据节点并提取数据都是非常高效且方便的。除了xPath以外,也可以使用正则表达式进行数据提取,但是在表达式的编写上要复杂许多。
Read more在Docker环境中工作
使用Docker可以很方便的进行开发和测试环境搭建。之前读了一篇文章《Docker Tips for Beginners》,大致了解了在什么环境下安装什么Docker应用。因为使用Docker Desktop可能会发生许可证问题(你在大公司工作的话,也说不清楚到底是个人使用,还是商业化使用),所以我的整个Docker环境是使用VirtualBox虚拟机,Centos7和Docker CE组建的。(VMWare的Workstation Player也会有许可证问题,VirtualBox Extension Pack也会有许可证问题,建议不要安装)
Read morenode-gyp编译安装与Python版本
在使用yarn或者npm安装js包的过程中,常有需要使用node-gyp重新编译的情况,并且每次遇到这种情况,大多与python相关。我不是专业前端开发,所以对于node-gyp具体在node中扮演什么角色不是特别清楚,但是每次node-gyp编译出现问题都与python的版本相关。
Read moreFlink意外关闭的2种情况
今天突然发现无法访问Flink的Web界面了。这个Flink系统是用了一台主机使用Stand alone方式部署的。因此使用Bitvise ssh client登录到远程服务器,查看Flink的日志。这里需要注意的是在Flink系统的log文件夹中有两类日志,一类是文件名中包含了standalonesession的Job Manager日志,一类是文件名中包含了taskexecutor的Task Manager日志。关于Flink系统的,我们主要看standalonesession日志。
Read moreExcel函数VLOOKUP和ISNA使用技巧
对于程序员来说,遇到需要数据处理的情况,首先想到写代码实现。其实如果熟悉Excel的一些公式的话,可以非常方便的使用这些公式实现。最近就遇到一个问题,里面涉及到在Excel表中查找数据,并判断该数据对应字段的值,并更新回源数据。简单来说如果要使用代码实现的话,大概要写读Excel文件、for循环、判断、更新源数据字典、最后写回Excel文件。但是如果使用Excel中的固定函数,就特别简单。大致用到IF、ISNA、VLOOKUP三个函数。 Read more