你有没有过这样的时刻?
夜深人静,走在回家的路上,一抬头,看见天边挂着一轮月亮。清辉洒下,周遭忽然安静了。你盯着它看了好几秒,说不上为什么,心里某个地方被轻轻触动了一下。
然后你掏出手机,想拍下来。拍完一看——根本拍不出那个味道。
你放下手机,继续看月亮。这时候你忽然懂了:这月亮,千年前也有人这样仰头看过。
而且是同一个月亮。
一、初唐:那轮照亮了整个唐诗的月亮先来聊一个起承转合的故事。
公元 706 年左右,一个叫张若虚的扬州人,写了一首长诗。这个人一生只留下两首诗,其中一首叫《春江花月夜》。就这一首,够他吃一千三百年。
「春江潮水连海平,海上明月共潮生。」
这开头就很大气。月亮从海...
一段往事几年前我第一次买服务器,商家发来一封邮件,里面是一串东西:
123IP: 47.88.xx.xx用户名: root密码: Kd9#mP2$...
我老老实实地打开终端,敲下:
1ssh root@47.88.xx.xx
输入密码,连上了。那一刻觉得自己特别厉害——看,我会用服务器了。
但这种「厉害」只持续了三天。第四天我查看日志,发现有人从莫斯科、纽约、新加坡轮番尝试登录我的服务器。几十个 IP、几千次尝试。我的密码虽然不算弱,但那一刻的寒颤是真实的:互联网上,有人每分钟都在敲你的门。
那个密码后来被我换成了密钥登录,从此再没用过密码连服务器。
在服务器运维的世界里,SSH ...
汉武帝天汉二年,公元前 99 年。
汉将军李陵率五千步兵出征匈奴,遭遇单于主力八万骑兵。鏖战八日,矢尽粮绝,援军不至——李陵投降了匈奴。
消息传回长安,满朝文武纷纷谴责李陵。汉武帝刘彻震怒,问太史令司马迁怎么看。司马迁是李陵的同僚,两人并无深交,但他实话实说:李陵以五千步卒对抗八万骑兵,杀敌过万,打光了最后一支箭才被俘——他恐怕是诈降,将来有机会一定会报效汉朝。
这话触怒了汉武帝。他认定司马迁在为李陵开脱——你一个史官,竟敢替叛将说话?
于是司马迁被下了大狱,罪名是「诬上」,按律当死。
当时的汉朝,死罪有两条路可走:一是交五十万钱赎命,二是接受宫刑——腐刑。
司马迁家贫,拿不出五十万钱。...
豫章故郡,洪都新府。星分翼轸,地接衡庐。襟三江而带五湖,控蛮荆而引瓯越。物华天宝,龙光射牛斗之墟;人杰地灵,徐孺下陈蕃之榻。雄州雾列,俊采星驰。台隍枕夷夏之交,宾主尽东南之美。
都督阎公之雅望,棨戟遥临;宇文新州之懿范,襜帷暂驻。十旬休假,胜友如云;千里逢迎,高朋满座。腾蛟起凤,孟学士之词宗;紫电青霜,王将军之武库。家君作宰,路出名区;童子何知,躬逢胜饯。
时维九月,序属三秋。潦水尽而寒潭清,烟光凝而暮山紫。俨骖騑于上路,访风景于崇阿。临帝子之长洲,得天人之旧馆。层峦耸翠,上出重霄;飞阁流丹,下临无地。鹤汀凫渚,穷岛屿之萦回;桂殿兰宫,即冈峦之体势。
披绣闼,俯雕甍,山原旷其盈视,川泽纡...
之前写低配服务器优化那篇时,好几次提到 systemd 的 MemoryMax、Restart 这些配置。有朋友来问这些具体怎么配、systemd 到底怎么用。干脆写一篇,把最常用的场景都摊开说清楚。
Systemd 是什么?Systemd 是现在几乎所有 Linux 发行版默认的 init 系统——说人话就是:它是操作系统启动后第一个运行的进程(PID=1),负责拉起和管理所有其他进程。
CentOS 7 之后、Ubuntu 15.04 之后、Debian 8 之后,全部默认用 systemd。
你可以把它理解成「操作系统自带的进程管理器」,比 pm2、supervisor...
傍晚六点半,太阳终于不那么凶了。
我坐在阳台上,看光影一寸一寸地退场。对面的楼房被夕阳镀了一层暖金,像老电影里的定格画面。楼下孩子们还在疯跑,他们的影子被拉得很长,在水泥地上画出流动的剪影。
这就是夏天最好的时刻——白天的燥热开始消退,夜晚的凉意还未降临,天地间有一种恰如其分的温柔。
小时候,黄昏是一天中最自由的时间。
放学后书包一扔,就和邻居家的小孩跑到田埂上捉蜻蜓。那时候的夏天好像比现在更长,天也黑得更晚。我们追着红蜻蜓跑过一片又一片稻田,直到炊烟从村子的各个角落升起来,母亲的声音远远传来——「回家吃饭啦——」
那个「啦」字拖得很长,带着方言的尾音,在暮色里回荡。我们于是呼啦啦地散...
你有没有过这样的时刻——
打开手机相册,发现里面有七千多张照片。其中四千张是截图——截图里有微信公众号文章、有商品页面、有聊天记录、有别人发的朋友圈、有自己拍的文档。你翻了一下,发现大部分当时觉得「有用所以先存着」的内容,你后来一次都没再看。
你心想:嗯,该清理一下了。然后你退出了相册。
因为光是想想那工作量,就已经累了。
不只是相册。你的浏览器收藏夹里躺着两百多个链接,最早的收藏日期是2018年。你的微信收藏夹里也有好几百条。你的电脑桌面上散落着各种「新建文件夹 (3) 」、「新建文件夹 (4) 」、「新建文件夹 (5) 」。
你给自己找的理由很合理:「先存着,以后有空再看。」
但这个...
我手上有一台 2 核 1.8G 内存的 ECS,跑着 nginx、Node.js、Python 服务,外加 Hexo 博客和每天自动写文章的 Agent。最初我总担心它随时会 OOM 崩掉——1.8G,连现在一个 Chrome 标签页都喂不饱。
但实际上,它已经稳稳跑了几个月,没出过事。这篇就把压箱底的优化策略摊开说说。
第 1 招:Swap 不是万能的,但没有 Swap 是万万不能的物理内存不够用,Swap 就是你的兜底。但很多人对 Swap 有误解——觉得它慢、伤磁盘,干脆关掉。这是把洗澡水和孩子一起倒掉了。
关键配置:把 swappiness 调到合适的值。
1234567# 查看...
你有没有过这样的时刻——
买了一台云服务器,兴致勃勃搭好了博客,过两天又想跑个私人音乐服务,再过几天又挂了个图床。然后发现这些服务各自占一个端口:http://你的域名:3000、http://你的域名:8080、http://你的域名:9000……地址栏里一串数字,既不优雅,又难记。
更麻烦的是,HTTPS 证书怎么配?3000 端口一个证书、8080 又一个?要疯。
这时候你就需要 Nginx 反向代理了。
什么是反向代理?用大白话说:反向代理就是你网站的前台接待员。
所有访客都来到 https://你的域名,接待员根据访客想去的地方,把他们引到背后对应的服务去处理。
123 ...
你有没有过这样的经历——
深夜,躺平,正要入睡。大脑忽然像开了个私密放映会,精准地播放出你五年前在一次聚会上说错话的画面。那个被你遗忘多年的尴尬瞬间,不仅画质高清,还带环绕立体声——你甚至能想起当时有人轻轻咳了一声。
你翻了个身,心想:算了,都过去了。但大脑不依不饶,又给你播了一段:七年前在教室里回答错问题、全班安静的那三秒钟。
你忍不住在被窝里发出了一声痛苦的呻吟。
如果你以为只有你这样,放心,全人类共享这个诡异的现象。它甚至有自己的学名,叫 「自传体记忆的消极偏向」 ,但大家更喜欢叫它——「尴尬闪回」。
为什么大脑要保存这些黑历史?要回答这个问题,得先搞清楚一个前提:大脑不是一个快...