请稍侯

系统设计入门【转载】

本文在system-design-primer基础上,根据自身对系统设计学习情况,收集和汇总分布式系统设计相关资料,用于后续学习和巩固。 系统设计入门 目的 学习如何设计大型系统。 为系统设计的面试做准备。 学习如何设计大型系统 学习如何设计可扩展的系统将会有助于你...

算法刷题总结【转载】

算法刷题总结,原文labuladong 目录 第零章、必读文章 学习算法和刷题的框架思维 我的刷题心得 动态规划解题套路框架 回溯算法解题套路框架 BFS 算法解题套路框架 手把手带你刷二叉树(纲领篇) 一文搞懂单链表的六大解题套路 一文秒杀所有岛屿题...

延迟消息设计与实现【转载】

本文转载自博客和微信公众号 1 缘起 很多时候,业务有“在一段时间之后,完成一个工作任务”的需求。 例如:滴滴打车订单完成后,如果用户一直不评价,48小时后会将自动评价为5星。 一般来说怎么实现这类“48小时后自动评价为5星”需求呢? 常见方案:启动一个cron定时任务,每小时跑一...

supervisor进程管理工具

Supervisor是一款基于客户端、服务端模式的进程管理工具。当然,通过nohup、screen等命令也可以实现Linux程序的后台运行,但是如果服务因为内存泄露等原因导致程序异常退出,上述方案就无能为力了。Supervisor就是这样由Python开发的通用进程管理工具,能够将一个普通进...

关系型数据库设计【转载】

本文转载自博客 数据库设计,一个软件项目成功的基石。很多从业人员都认为,数据库设计其实不那么重要。现实中的情景也相当雷同,开发人员的数量是数据库设计人员的数倍。多数人使用数据库中的一部分,所以也会把数据库设计想的如此简单。其实不然,数据库设计也是门学问。   从笔者的经历看来,笔者更赞成...

Go性能优化【转载】

本文转载自知乎专栏 Go的性能优化其实总的来说和C/C++等这些都差不多,但也有它自己独有的排查方法和陷阱,这些都来源于它的语言特性和环境。 性能优化前提——任何好的东西都是在正确的前提上 代码界的很多事是和我们生活的哲学息息相关的,我们想要做好一件事,首先要保证我们能按时完成我们的任...

几种NoSQL的使用误区【转载】

本文转载自博客 最近经常看到关于NoSQL怎么用的讨论,加上自己也已经有四年多在正式项目中使用NoSQL数据库的经验,写下来与大家分享。 1 通常不适合Java程序 NoSQL数据库最大的特点就是数据结构自由,不管是键值对还是JSON格式。使用动态语言,Ruby、Python或Java...

Archlinux构建系统

1 pacman命令 在archlinux中通过pacman来管理软件,全称为package manager,使用方式如下: 更新系统 pacman -Syu 更新整个系统 pacman -Sy 同步本地包数据库和远程的仓库 pacma...

一篇文让你秒懂CDN(转载)

原文链接 著名的 《哲学简史》 将2400年的西方哲学取精用宏、深入浅出地呈现给读者。虽然 内容分发网络(CDN) 的历史要比哲学史短得多,但受此启发,Akamai将CDN 18年来的演化历程浓缩到本文中,以期帮助人们了解CDN的成因、历年的变化以及未来发展前景。 第一章 缓存年代(19...