-
起因: 公司部署在hk的爬虫服务器突然挂掉了。后来发现只是在深圳办公区无法访问。排查后发现原因是docker的网络(包括docker network的subnet或者是某个容器的ip)与该host在内网的ip段相同,导致冲突。 排查过程: 有两个方面需要排查。一个是docker服务启动时的默认网络。 默认网络使用bridge桥接模式,是容器与宿主机进行通讯的默认办法。 修改默认网段可以参考 http://blog.51cto.com/wsxxsl/2060761 除此之外,还需要注意docker创建的network的网段。 使用docker network ls 命令查看当前的网络 然后可以使用docker inspect 查看每 …
Read More -
现象: 使用docker compose 挂载 named volume 无效(且没有错误提示) 排查过程: 一开始是没有使用docker-compose命令,直接使用docker run -v 命令,挂载两个绝对路径,没有问题。 然后使用named volume,在这里使用了local-persist 插件,来指定数据卷(volume)在host上的位置。直接用docker run -v 命令,依然没有问题。 接下里打算放到docker compose里面,发现并没有挂载成功。 但是在docker compose里面,挂载两个绝对路径是ok的。 于是怀疑是volume的问题 此时使用docker inspect 查看 …
Read More -
在meidum上看到一篇很赞的文章...无奈关键部分一律无法加载出来...挂了梯子也不行,很心塞...刚刚突然发现加载出来了...以防之后再次无法访问,所以搬运过来. There are couple of articles on how to integrate Scrapy into a Django Application (or vice versa?). But most of them don’t cover a full complete example that includes triggering spiders from Django views. Since this is a web …
Read More -
lua是一门轻量级的脚本语言...好像比较适合写游戏?在 太阳神三国杀 中见过很多lua脚本。 由于splash 的渲染脚本需要用lua来写,因此来学习一波。 直接上语法...看到了python和pascal的影子orz -- Two dashes start a one-line comment. --[[ Adding two ['s and ]'s makes it a multi-line comment. --]] ---------------------------------------------------- -- 1. Variables and flow control. …
Read More -
先放资料,可能比较侧重于go在系统调用方面的内容. 这里不会记录详细的go的语法,只会记录学习的过程,踩到的坑,以及其他我认为值得记录的内容. go的switch语句终于是人类思维的语句了...匹配中了不需要加break.. defer关键字可以延迟语句到上层函数退出时再执行,而且是会把延迟的语句压入栈,然后按照FILO的顺序执行...好像有点有意思? 参数列表..如果有多个变量的类型相同,只写一个类型关键字就行... :=并不是pascal中的赋值符号(浪费感情...,而是简洁定义变量的语法,不能使用在函数以外. 感觉go中同时有一点C++和很多python的影子... 30分钟上手GO语言--基础语法 A Go …
Read More -
再次迫于生计。。。 参考了面向新人的 Python 爬虫学习资料 大致的学习路线为: 一: 简单的定向脚本爬虫( request --- bs4 --- re ) 二: 大型框架式爬虫( Scrapy 框架为主) 三:浏览器模拟爬虫 ( Mechanize 模拟 和 Selenium 模拟) 有Python基础和一点html基础的话。。。貌似上手是0难度的 年轻人的第一个爬虫(虽然代码是直接copy的... ''' 抓取百度贴吧---生活大爆炸吧的基本内容 爬虫线路: requests - bs4 Python版本: 3.6 OS: mac os 12.12.4 ''' import requests import time …
Read More -
最近的项目需要java和python之间的进程通信,想到了之前使用过的的grpc. 参考官方quickstart * JDK: version 7 or higher 看起来只依赖jdk,美滋滋 然后按照文档执行 ./gradlew installDist 报错: Task :grpc-compiler:compileJava_pluginExecutableJava_pluginCpp FAILED FAILURE: Build failed with an exception. * What went wrong: Execution failed for task …
Read More -
2018 to do list
Oct 14, 2018 · 1 min read迫于最近的事情有点多,还是记录一下。 果然to do list什么的,还是要按照年份记录啊。 * <del>了解linux strace命令</del> * 速成go语言,并了解go于系统调用https://hackernoon.com/strace-in-60-lines-of-go-b4b76e3ecd64 * 熟悉hustoj V2版本目前的代码 * <del>看完<code in practice></del> * mit 6.828 lab1。。。感觉要咕 * 看完<unix 系统系统手册>的20,21章信号部分, 为hustoj的重构补充基础知识. …
Read More -
迫于生计,又要从零开始学习spring. 在这篇文章之前,对java的基础是2015年写过一个java大作业,对spring是一无所知。 为了学习spring,我按顺序做了以下事情: * 学习了一下java语法,教程关键词是"java tutorial for cpp programmers",比如[Learning a New Programming Language: Java for C++ Programmers ](http://pages.cs.wisc.edu/~hasti/cs368/JavaTutorial/) * 对spring有个大体的了解。视频教程要比官方文档或者博客迅速得多。推 …
Read More -
真是个不明觉厉的术语...其实是个特别简单的概念orz 用白话讲,如果一个class A中用到了class B的实例,那么class B的实例就是class A的依赖,如果不是在class A中定义class B的实例,而是通过某个接口,将class B的实例传入classA,就叫依赖注入。 public class Example { // private DatabaseThingie myDatabase; // public Example() { // myDatabase = new DatabaseThingie(); // } public Example(DatabaseThingie …
Read More