三月沙


  • 首页

  • 关于

  • 标签

  • 分类

  • 归档

  • 我的书单

  • 技术编年史

开源项目

china_regions

2022年12月

3100

最全最新中国省、市、地区 JSON 及 SQL 数据,包含完整的行政区划信息

查看项目

markdown-css

2025年9月

150

将 CSS 样式转换为 Markdown 内联样式的工具,支持一键排版微信公众号文章

查看项目

app-turbo

2022年11月

128

基于 Tornado 的 Web 框架,简化开发流程,支持扩展和维护

查看项目

devops-ui

2022年12月

22

基于云的运维管理平台,支持应用管理、部署、日志回显和 Consul 服务注册

查看项目

ember-semantic-ui

2022年7月

20

为 Ember 应用提供的 Semantic UI 组件库,丰富的前端 UI 组件

查看项目

ember-cli-simditor

2022年7月

17

Ember 组件封装,集成 Simditor 富文本编辑器

查看项目

目标 过程 结果

Posted on 11月 20 2017 | In 方法论
目标什么是目标目标是一个方向,用来指导实际行动朝着一个对结果有正向作用的方向前进的,也就是目标应该是一个指向未发生的结果的箭头,用来时刻提醒行动的路线是不是准确的,从这点来说目标指向的结果是一个中长期之后才能发生事情。 目标需要有个 why,用来说明目标背后突出的核心理念是为什么要做一件事,为什么要 ...
Read more »

说说 API 这个事

Posted on 11月 19 2017 | In 技术
移动互联网盛行之前, RESTful API 就已经存在很久了,只不过恰巧移动桌面的的兴起让 RESTful API 变成了几乎任何需要联网设备的标配,它的普及也正好证明了它的重要性程度是和它的普及程度是一样的。虽然没有专门的厂商来定义 RESTful API 的标准,但是得意于大平台的垄断和其 A ...
Read more »

Consul 安装和基本使用

Posted on 11月 15 2017 | In consul
什么是 consulConsul 是一个服务配置和发现工具,它包含的主要特性有: 服务发现通过 DNS 或 HTTP 对依赖的服务的进行发现。 健康检查Consul clients 能够提供很多种表示服务健康状态的指标,包括服务请求状态,节点内存使用情况等,路由会依赖这些信息进行服务选择。 KV 存 ...
Read more »

可视化数据平台 superset :安装和使用

Posted on 11月 14 2017 | In 大数据
什么是 supersetSuperset 是 Airbnb 开源的大数据可视化平台,其特性包括: backend 支持几乎所有主流的数据库 支持复杂的权限控制和管理(OpenId, OAuth 等),满足企业内部不同部门人员对数据的权限要求 丰富的可视化展示,支持自定义创建 dashboard,可 ...
Read more »

使用 airflow 替代你的 crontab

Posted on 11月 13 2017 | In 大数据

Airflow 是什么

Airflow 是 Airbnb 开发的用于工作流管理的开源项目,自带 UI,现在 Apache 下做孵化,地址是https://github.com/apache/incubator-airflow

airflow

Airflow 解决什么问题

Airflow 主要解决的问题可以参考 Airbnb 官方的博客: airflow-a-workflow-management-platform,简单来说就是管理和调度各种离线定时 Job ,可以替代 crontab。

当 cron job 规模达到数百上千时,其对人的要求将会非常高的,如果你的团队经历过这样的事情,应该能体会其中痛苦,所以使用类似 airflow 这样的工具代替 cron 来做定时任务将会极大提高工作效率。

Read more »

如何向小孩子解释计算机是什么

Posted on 11月 9 2017 | In 程序人生
Medium 有篇文章 Explaining Programming to 6 Years Old Kids 讲了如何向小孩子解释计算机,过程挺有意思的,作者总结了两个讲解的原则用来把自己的想法告诉小孩子: 第一,通过提问和绘画的形式让小孩子参与其中第二,通过他们已知的东西来向他们讲解未知的 小 ...
Read more »

Python float 和 decimal

Posted on 11月 8 2017 | In python
在 Python 官方的文档 Floating Point Arithmetic: Issues and Limitations 解释了 Python float 类型的一些问题和限制。 这里我想记录的是 Python 的 Decimal 类型和 float 的转换问题。 Python 的 Deci ...
Read more »

linux 中的 dns 解析

Posted on 11月 8 2017 | In linux
我在用 linux 桌面环境有 2 年了,做服务端开发大部分时候都在和 linux 打交道,后来转投 mac,其实本质都是一样的,好奇 linux 下的 dns 解析的过程,看了很多资料发现过程还是比我想象的要复杂,虽然想好好写一写但投入时间还是挺大的,此篇我也许会慢慢更新直到完整,也许可能就写这 ...
Read more »

Go 常见错误之一:值拷贝和 for 循环中的单一变量

Posted on 10月 24 2017 | In golang

在 Go 常见的错误一文中 http://devs.cloudimmunity.com/gotchas-and-common-mistakes-in-go-golang/ 有这么一段代码:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27

package main

import (
"fmt"
"time"
)

type field struct {
name string
}

func (p *field) print() {
fmt.Println(p.name)
}

func main() {
data := []field{{"one"},{"two"},{"three"}}

for _,v := range data {
go v.print()
}

time.Sleep(3 * time.Second)
//goroutines print: three, three, three
}

Read more »

mysql 在线 scheme 变更方案以及开源工具评测

Posted on 10月 19 2017 | In mysql

mysql schema 变更的一般方案

变更 mysql table schema 是使用 mysql 的过程中经常需要做的一件事,一般意义变更可以根据场景的不同做不同的操作。

直接 alter

如果数据量非常少,读写不频繁,可以直接对表进行 alter,由于数据少直接 alter 并会造成太长时间的锁表,一般情况都是能接受的

停机升级

对于数据量特别大的表,如果直接 alter 将导致线上不可用可以考虑停机修改,当然如果停机时间过长不能接受,只能做在线改了

不停机在线迁移

很多团队面临的业务都无法停机,在线变更 schema 也确实是很多业务团队都会面临的问题,我曾经做过一次 Mongodb 亿级拆分方案,大致思路是:
1、在应用程序中拦截所有的 update,insert,delete 操作
2、为数据一致性建立迁移缓冲区,临时保存迁移用户的所有业务数据
3、在业务代码中利用迁移缓冲区做一致性输出
4、离线迁移所有用户数据

Read more »
1…8910…14

135 posts
26 categories
113 tags
GitHub
© 2026 三月沙
Powered by Hexo
|
Theme — NexT.Mist v5.1.2