zkqiang's space 
  • 首页
  • 归档
  • 分类
  • 标签
  • 友链
  • 关于
  •   
  •   
Crawlab Lite 正式发布,更轻量的爬虫管理平台

Crawlab Lite 正式发布,更轻量的爬虫管理平台

前言Crawlab 是一款基于 Golang 的分布式爬虫管理平台,产品发布已经一年有余,经过开发团队的不断打磨,即将迭代到 v0.5 版本。在这期间我们为 Crawlab 加入了大量社区用户共同期望的功能,使产品更加专业。但与此同时我们也注意到,部分用户并不是分布式爬虫用户,他们更多只是在单机情况下使用 Crawlab。其次目前 Crawlab 逐步加入了丰富的功能,也使整个产品逐渐巨化,大部分

2020-07-15
Golang
爬虫 后端 开源
源码解读 Golang 中 sync.Map 的实现原理

源码解读 Golang 中 sync.Map 的实现原理

简介Go 的内建 map 是不支持并发写操作的,原因是 map 写操作不是并发安全的,当你尝试多个 Goroutine 操作同一个 map,会产生报错:fatal error: concurrent map writes。 因此官方另外引入了 sync.Map 来满足并发编程中的应用。 sync.Map 的实现原理可概括为: 通过 read 和 dirty 两个字段将读写分离,读的数据存在只读字

2020-03-23
Golang
后端 底层 源码
经典面试题:青蛙跳台阶

经典面试题:青蛙跳台阶

「剑指Offer」里的经典题目,近期群里聊到这题,特来复习一波。 题目一只青蛙一次可以跳上 1 级台阶,也可以跳上 2 级台阶。求该青蛙跳上一个 n 级的台阶总共有多少种跳法。 思路首先跳到 n 级台阶可以分解为两种情况: 之前跳到 n-1 级台阶,然后再跳 1 级到达 n 级; 之前跳到 n-2 级台阶,然后再跳 2 级到达 n 级; 因此 n 级跳法数量,等于这两种情况之和。即 F(n

2020-03-09
Python Golang
后端 刷题
探究 Go 语言 defer 语句的三种机制

探究 Go 语言 defer 语句的三种机制

Golang 的 1.13 版本 与 1.14 版本对 defer 进行了两次优化,使得 defer 的性能开销在大部分场景下都得到大幅降低,其中到底经历了什么原理? 这是因为这两个版本对 defer 各加入了一项新的机制,使得 defer 语句在编译时,编译器会根据不同版本与情况,对每个 defer 选择不同的机制,以更轻量的方式运行调用。 堆上分配在 Golang 1.13 之前的版本中,所有

2020-03-01
Golang
后端 底层
一道快速考察 Python 基础的面试题

一道快速考察 Python 基础的面试题

这是前一阵子群友发在群里的一道面试题,利用 Python 字典的特性,可以巧妙地使用精简代码达成完美解。 题目将 data 转换成 new_data 这种形式,写出转换过程。 1234567891011121314151617181920212223data = { 'a_b_h':1, 'a_b_i':2, 'a_

2020-02-08
Python
刷题 经验
编写自己的 GitHub Action,体验自动化部署

编写自己的 GitHub Action,体验自动化部署

本文将介绍如何使用 GitHub Actions 部署前端静态页面,以及如何自己创建一个 Docker 容器 Action。 简介 ActionsGitHub Actions 是 GitHub 官方推出的持续集成/部署模块服务(CI/CD),和 jenkins、Travis CI 是同一类产品定位。 但 Actions 的最大优势,就是它是与 GitHub 高度整合的,只需一个配置文件即可自动

2020-01-20
Other
开源
Python 2 与 3 共存了 11 年,新年就要和它道别

Python 2 与 3 共存了 11 年,新年就要和它道别

在 Python 3.9 都已经进入 dev 版本的 2020 年,Python 2 终于要和我们告别了。 2 and 3Python 2 第一个版本发布于 2000 年 10 月 16 日,到今年正好是第 20 个年头。而 Python 3 发布于 2008 年 12 月 3 日,但由于 3.0 版本在底层进行了大量重构(主要是 Unicode 与 C API 的改动),无法完整兼容 Pyt

2019-12-31
Python
杂文
30 年前的圣诞节,Python 序章被谱写

30 年前的圣诞节,Python 序章被谱写

1989 年圣诞节期间,已经从阿姆斯特丹大学(University of Amsterdam)获得数学和计算机硕士学位的 Guido van Rossum,为了打发圣诞节的无趣,决心开发一个新语言解释器,作为 ABC 语言的一种继承,这个语言就是当下最流行的语言之一 —— Python。 之所以选中 Python(蟒蛇)作为该编程语言的名字,是取自英国 20世纪 70 年代首播的电视喜剧《蒙提.

2019-12-24
Python
杂文
文言文编程火了,可我完全学不懂

文言文编程火了,可我完全学不懂

毕竟有易语言在前,有人认为中文可以降低国人学习编程的门槛,也增强汉语的国际地位。然而最近大火的文言文编程语言,让你明白什么叫“中文比英语还难”。 Hello wenyan最近有个 GitHub 项目火了 —— 文言编程语言 / wenyan-lang。 现在这个项目已经超过 10K Stars 了(昨天看还是 9K,一夜涨了 1K),咱赶紧来研究下。 学语言嘛,当然先从 “Hello wor

2019-12-21
Other
杂文
通过 Python 理解 Mixin 概念

通过 Python 理解 Mixin 概念

Mixin 的概念Mixin 即 Mix-in,常被译为“混入”,是一种编程模式,在 Python 等面向对象语言中,通常它是实现了某种功能单元的类,用于被其他子类继承,将功能组合到子类中。 利用 Python 的多重继承,子类可以继承不同功能的 Mixin 类,按需动态组合使用。 当多个类都实现了同一种功能时,这时应该考虑将该功能抽离成 Mixin 类。 举个例子定义一个简单的类: 12345c

2019-12-07
Python
后端 底层
1234

搜索

Hexo Fluid
总访问量 次 总访客数 人
浙ICP备19029560号-1