• 3 个可以替代 Emacs 和 Vim 的文本编辑器

    Posted by : lon.y@qq.com on 2018年1月31日

    Vim 和 Emacs 对于 Linux 桌面上进行文本编辑显然是重量级的,但是它们并非唯一之选。 Emacs 和 Vim 的粉丝们,在你们开始编辑器之争之前,请你们理解,这篇文章并不是为了贬低诸位最喜欢的编辑器。我是一个 Emacs 爱好者,但是也很喜欢 Vim。 就是说,我认为 Emacs 和 Vim 并不适合所有人。也许 编辑器之争 略显幼稚,让很多人失望了。也许他们只是想要有一个不太苛刻的现代化的编辑器。 如果你正寻找可以替代 Emacs 或者 V

    阅读全文...

  • 揭秘 Quora 的 Web 服务器架构

    Posted by : lon.y@qq.com on 2018年1月30日

    【导读】:Quora 曾经在 2012 年 8 月使用了一种新的并行架构去渲染页面。相比以前, 3-10 倍的速度来渲染页面。如今,我们又对原来的架构设计做了一些改进,从而进一步提高了速度并节省了成本。Quora 工程师在本文和大家一起分享他们是如何改造的。 原来的并行架构:Webpara 原来的并行架构设计服从主从模式,它的设计和参数是在生产环境中经过一系列基准测试后选定的。该设计中的主结点和从结点在不同的层级里:主结点机器我们称之为 webpara,每

    阅读全文...

  • Nginx 教程(2):性能

    Posted by : lon.y@qq.com on 2018年1月30日

    大家好,分享即关爱,我们很乐意和你分享一些新的知识,我们准备了一个 Nginx 的教程,分为三个系列,如果你对 Nginx 有所耳闻,或者想增进 Nginx 方面的经验和理解,那么恭喜你来对地方了。 我们会告诉你 Nginx 如何工作及其背后的理念,还有如何优化以加快应用的性能,如何安装启动和保持运行。 这个教程有三个部分: 基本概念 —— 这部分需要去了解 Nginx 的一些指令和使用场景,继承模型,以及 Nginx 如何选择 server 块,loca

    阅读全文...

  • Nginx 教程 (1):基本概念

    Posted by : lon.y@qq.com on 2018年1月30日

    简介 嗨!分享就是关心!所以,我们愿意再跟你分享一点点知识。我们准备了这个划分为三节的《Nginx教程》。如果你对 Nginx 已经有所了解,或者你希望了解更多,这个教程将会对你非常有帮助。 我们会告诉你 Nginx 是如何工作的,其背后的概念有哪些,以及如何优化它以提升应用程序的性能。还会告诉你如何安装,如何启动、运行。 这个教程包括三节: 基础概念——你可以了解命令(directive)与环境(context)的区别、继承模式,以及 Nginx 选择服

    阅读全文...

  • 分析了 7500w+ GitHub 代码仓库 哪门语言热度最高?

    Posted by : lon.y@qq.com on 2018年1月30日

    近日,有开发者在 reddit 发布了一个帖子,内容是通过对 GitHub 用户的数据进行分析得到的编程语言排序榜。作者认为,通过计算 GitHub 上有多少人使用每种语言来对所有的编程语言进行排序会很有趣。 下面我们不妨看看这份数据源“独特”的排行榜有哪些值得关注的东西。 首先,作者表示这次分析的数据主要来源于 GitHub Archive 和 GHTorrent。他通过分析 GitHub Archive 上 7500w+ 个不同的仓库中超过 12.5

    阅读全文...

  • 堆和堆的应用:堆排序和优先队列

    Posted by : lon.y@qq.com on 2018年1月30日

    1.堆 堆(Heap))是一种重要的数据结构,是实现优先队列(Priority Queues)首选的数据结构。由于堆有很多种变体,包括二项式堆、斐波那契堆等,但是这里只考虑最常见的就是二叉堆(以下简称堆)。 堆是一棵满足一定性质的二叉树,具体的讲堆具有如下性质:父节点的键值总是不大于它的孩子节点的键值(小顶堆), 堆可以分为小顶堆和大顶堆,这里以小顶堆为例,其主要包含的操作有: insert() extractMin peek(findMin) delet

    阅读全文...

  • 三款简单而优秀的 Linux 网络监视工具

    Posted by : lon.y@qq.com on 2018年1月30日

    通过 iftop、 nethogs 和 vnstat 详细了解你的网络连接状态。 你可以通过这三个 Linux 命令了解当前网络的大量信息。iftop 通过进程号跟踪网络连接,nethogs 快速告知你哪些进程在占用你的带宽,而 vnstat 以一个良好的轻量级守护进程在后台运行,并实时记录你的网络使用情况。 iftop 令人称赞的 iftop 可以监听您指定的网络接口,并以 top 的样式呈现。 这是一个不错的小工具,可以用于找出网络拥塞,测速和维持网络

    阅读全文...

  • Linux 下各文件夹的结构说明及用途介绍

    Posted by : lon.y@qq.com on 2018年1月30日

    linux下各文件夹的结构说明及用途介绍: /bin:二进制可执行命令。 /dev:设备特殊文件。 /etc:系统管理和配置文件。 /etc/rc.d:启动的配 置文件和脚本。 /home:用户主目录的基点,比如用户user的主目录就是/home/user,可以用~user表示。 /lib:标准程序设计库,又 叫动态链接共享库,作用类似windows里的.dll文件。 /sbin:系统管理命令,这 里存放的是系统管理员使用的管理程序。 /tmp:公用的临时

    阅读全文...

  • 可视化解释压缩算法的工作原理

    Posted by : lon.y@qq.com on 2018年1月23日

    压缩技术在生活中无处不在,硬盘上存储数据、发送电视信号、网页传输、流媒体、电子游戏……现代计算几乎没有一个重要领域不使用压缩技术。 那么压缩技术到底是什么? 无论你使用过很多年的电脑压缩软件还是从没想过这个问题,本文将尝试解释,当你压缩一个文件或传输一段视频时,其中的数据到底发生了什么变化。我们将探寻这些重要问题的答案,在此过程中,也许会提出一些新的问题。 对被压缩对象进行压缩,意味着什么? 如何能将目标对象变得比原来更小? 如何具体实现压缩技术 让我们来

    阅读全文...

  • 汇编语言入门教程

    Posted by : lon.y@qq.com on 2018年1月22日

    学习编程其实就是学高级语言,即那些为人类设计的计算机语言。 但是,计算机不理解高级语言,必须通过编译器转成二进制代码,才能运行。学会高级语言,并不等于理解计算机实际的运行步骤。 计算机真正能够理解的是低级语言,它专门用来控制硬件。汇编语言就是低级语言,直接描述/控制 CPU 的运行。如果你想了解 CPU 到底干了些什么,以及代码的运行步骤,就一定要学习汇编语言。 汇编语言不容易学习,就连简明扼要的介绍都很难找到。下面我尝试写一篇最好懂的汇编语言教程,解释

    阅读全文...