使用 Cloudflare 让你的网站更安全

当有一天你和我一样在维护独立博客(或者其他网站)时,你一定更希望将精力聚焦于网站内容上,而非耗费大量时间来解决有关站点性能以及安全方面的问题。作为世界上最大网络的拥有者,Cloudflare® 为像我们一样的网站管理员推出免费层级的服务,提供网站性能与安全性方面的一站式解决方案。

2020 年 12 月 Google 宕机事件复盘

你会在意云服务的可用性到底是 99.99% 还是 99.9999% 吗?要知道,互联网世界中再健壮的基础设施也有不可靠的时候

2020 年 12 月 14 日凌晨 4 点,来自美洲地区的用户发现,所有需要使用 Google 账号登录的站点都发生问题:访问 Gmail、YouTube 等服务时均提示错误信息。一些依赖 Google 账号体系的第三方服务(如 Figma 等)也遇到错误。此时正值欧洲时间正午、东亚晚间时段,许多使用 Google 服务的用户和企业均受到影响。

Asahi Linux——为 Apple 芯片设计的 Linux 系统

自 2020 年苹果发布了多款搭载 Apple 芯片的设备以来,社区中的一些高级爱好者便尝试将不同的 Linux 发行版移植到基于 ARM64 指令集的 Apple 芯片上。在众多项目中,Asahi Linux 便是其中的一个先行者:它通过一种创新且坚实的解决方案将 Linux 系统适配于 Apple 芯片,解决问题的方式富含工程美感,值得大家学习。

一片处理器芯片的照片,图中展示了一块设计精良的集成电路,封装的盖板上有苹果图标,还标记有 APL 1102 等字样
一台 Mac mini 中搭载的Apple M1 处理器芯片,由 Henriok 拍摄

被显示器连接线坑了的一周

继上次升级显示器到小米 27 寸 165Hz 显示器后,最近一段时间出现了一个困扰我的问题:将笔记本电脑连接至计算机后,经常会出现“闪屏”的现象——即显示器偶尔会无征兆的进入黑屏状态,而过了几秒后又恢复正常。虽然问题不大,但非常影响使用体验。本文记录了我的排查历程。

Python 3 中的 metaclass

在 Python 程序设计语言中,大多数类用于生成对象:当你调用这些类时,它们就会返回一个该类的实例(Instance)给调用者。比如调用一个定义了学生所需各种操作的 Student 类,我们就获得了一个新的 Student 实例,这样的操作看起来非常自然。

面向对象编程(OOP)语言的一大核心思想是继承,即如果我手头有几个像 Student 一样的类,并且希望同时为这些类添加一些公用功能的话,我们会选择创建基类,然后修改这些类的定义,使这些类作为该基类的子类。而元类(Metaclass),顾名思义,意为“创建类的类”——当我们希望更深入控制一系列类的创建过程时,我们用它。

本文是中文互联网世界中又一篇讲解 Python 中元类的博客文章。如果这是你第一篇看到的相关文章,又或者你是从别的文章跳转而来,希望本文能为你打开一个理解元类的全新视角。

硬盘危机——Chia 挖矿背后的原理与技术细节(二)

本文是《硬盘危机——Chia 挖矿背后的原理与技术细节》系列的第二篇文章

当一种虚拟资产要进行初始分派时,通常会要求参与者消耗现实世界中的稀缺有限资源(见上一篇文章)来换取获得该资产的机会。对于 Bitcoin 网络来说,稀缺有限资源即为计算哈希值的算力。而 Chia 则选择了存储空间时间作为稀缺有限资源。

在本篇文章中,我们将深入探讨 Chia 网络中的共识算法,了解 Chia 网络是通过何种方法向参与其中的用户分配虚拟资产的。本文主要参考自《Chia Consensus Algorithm》白皮书文档。

在 Apple M1 芯片上畅玩 CS: GO 游戏

如果在几年前,当与你一起打游戏的朋友告诉你他/她购买了一台 MacBook 系列笔记本电脑时,你就会知道这位朋友可能从此无缘现代 3D 游戏了。这种传统的印象从 2020 年起发生了改变——苹果为 13 英寸 MacBook Air 以及 MacBook Pro 推出了基于 Apple M1 芯片的新款设备后,用户惊奇地发现使用他们的设备进行 3D 游戏的性能不逊于一些独立显卡。

作为一名《反恐精英:全球攻势》(CS: GO)游戏的忠实玩家,在本文中我分享使用 Apple M1 芯片畅玩 CS: GO 游戏的一些配置经验,以及应对CS: GO 在 Apple M1 芯片上游戏崩溃的解决方法。

为什么 GNU yes 程序这么快

几乎所有人在学习一门新的程序设计语言时,首先学到的功能便是将一段字符串——通常是“Hello, world!”——输出到屏幕上。在 *NIX 系统中,就一直存在着这样一个功能简单的程序,能够重复地将字符 “y”(或是其他什么东西)输出到屏幕上,通常用在一些需要用户重复输入确认指令的场景下:这个程序叫做 yes。

*NIX:表示类 Unix 操作系统,这通常包括 FreeBSD、GNU/Linux、MINIX 以及 macOS 等

Wikipedia