Python 代码上线检查清单

查看原文

  • 简化代码
  • 类型检查
  • 加上 repr, copy, pickle 支持(应该是为了更好的排查故障,排除潜在 bug
  • 检查循环引用(会造成死循环
  • 认真思考并发
  • 处理一些奇怪的用例
  • 吸取教训
  • 回到第一条
read more

系统编程是什么

查看原文

本文探讨了大家常说的“系统编程”,或者“底层”。早期的系统编程主要是指把一系列程序集成起来。在现代,这个词汇的语义已经有了不少变化,会更接近于 low-level programming。

read more

使用 Terraform 快速启动 EKS 服务

查看原文

本文介绍了如何使用 Terraform 启动 AWS EKS 服务。目前 AWS 提供了 Kubernetes 1.10 的服务,运行在 us-west-2, us-east-1, eu-west-1 这三个地区。在使用 Terraform 之前,你需要一个 AWS 账号,以及已经在本地配置好了 aws configure 之类的信息。

第一步:创建 VPC,配置 vpc, 子网,路由表,互联网网关。其中子网存放在某个可用区中,可通过 ${data.aws_availability_zones.available.names[count.index]} 获得当前 AZ。如果有私有/公开两种子网,可以自己稍微改造下 …

read more

CLI 工具推荐 2018.37

查看原文

本文列出了一些作者认为会改进工作流的命令行工具:

  • bat > cat: 更好的对代码文件的输出
  • prettyping > ping: 更直观的 ping 结果
  • fzf > ctrl+r: 模糊匹配
  • htop > top: 更全的系统当前性能
  • diff-so-fancy > diff: 除了颜色,还有变更部分的高亮
  • fd > find: 更简单的操作
  • ncdu > du: 更简单的操作
  • tldr > man: 懒人更想用 cheat sheet 替代查 man
  • ack/ag > grep: 更快更好用的 api
  • jq > grep: 处理 JSON 的利器
read more

gPRC with JSON

查看原文

本文介绍了如何混用 gRPC 和 JSON。尽管你可以用 Protobuf,gRPC 其实是编码无关的 RPC 工具,例如本文,你可以用 JSON 作为序列和反序列化层。为什么要这么做呢?因为有时候你不需要所有 gRPC 的特性,可能想跟自己的项目更多结合一些,但又想拥有某些 gRPC 的好处。

本文使用了 Gson: 允许你可以提供类,将实例和JSON数据互转。

Service: 服务就是方法的集合(a Service is a collection of Methods.)。一个方法要提供名字,Marshaller(如何解码请求,如何编码响应)。

你要做的事情是

  • 提供一个 Marshaller 实现,内部编码解码 JSON 数据到类实例。
  • 注册方法的时候,也登记上自定义的 Marshaller …
read more

Python 3 Type hints cheat sheet

查看原文

本文是关于如何给 Python 3 代码写类型注解的 cheat sheet。

  • 赋值:a: int = 1
  • 声明:a: int
  • 内建类型:x: int, x: float, x: bool, x: str, x: bytes, x: List[int], x: Set[int], x: Dict[str, float], x: Tuple[int, str, float]
  • 可能为空:x: Optional[str]
  • 函数:def a(n: int) -> str …
read more

Cost of CORS Request on SPA

查看原文

本文介绍了CORS 请求可能会严重降低单页应用(SPA)的性能。每个 CORS 请求默认会发出两个请求:OPTIONS / 以及真正的请求,前者查看是否被允许发起跨域请求。尽管你可以用 Access-Control-Max-Age 把前面的 preflight request 缓存住,但是这个缓存是针对单个 URL 的,而不是跟着域名走。假设你有这样的 URL: /users/report/:id, 那这类请求其实没有被缓存多少,每次你要查看一个新的用户的数据,你都要发出至少两个请求。

read more

The Servers Are Burning

查看原文

本文作者认为软件 Bug 无法避免,成熟稳重的工程师比起擅长写代码,应该跟擅长在程序挂了的时候快速找出问题在哪里。尽早将软件部署到真实的网站流量面前,如果有错就快速响应打 Patch 或者回滚。

read more

« Page 8 / 54 »