解密传统组件间通信与React组件间通信 (yanhaijing.com)
在React中最小的逻辑单元是组件,组件之间如果有耦合关系就会进行通信,本文将会介绍React中的组件通信的不同方式

通过归纳范,可以将任意组件间的通信归类为四种类型的组件间通信,分别是父子组件,爷孙组件,兄弟组件和任意组件,需要注意的是前三个也可以算作任意组件的范畴,所以最后一个是万能方法
by @技术头条 2018-09-20 21:52 分享 查看详情
Linux 用户应该换到 BSD 的 6 个理由 (linux.cn)
迄今我因 BSD 是 自由及开源软件(Free and Open Source Software)(FOSS)已经写了数篇关于它的文章。但总有人会问:“为什么要纠结于 BSD?”。我认为最好的办法是写一篇关于这个话题的文章。

为什么用 BSD 取代 Linux?

为了准备这篇文章,我与几位 BSD 的用户聊了聊,其中有人使用了多年 Linux 而后转入 BSD。因而这篇文章的观点都来源于真实的 BSD 用户。本文希望提出一个不同的观点。
by @技术头条 2018-09-20 21:50 分享 查看详情
Python 调试器入门 (linux.cn)
Python 生态系统包含丰富的工具和库,可以让开发人员更加舒适。 例如,我们之前已经介绍了如何使用交互式 shell 增强 Python。本文重点介绍另一种可以节省时间并提高 Python 技能的工具:Python 调试器。
by @技术头条 2018-09-20 21:45 分享 查看详情
查看一个归档或压缩文件的内容而无需解压它 (linux.cn)
在本教程中,我们将学习如何在类 Unix 系统中查看一个归档或者压缩文件的内容而无需实际解压它。在深入之前,让我们先厘清归档和压缩文件的概念,它们之间有显著不同。归档是将多个文件或者目录归并到一个文件的过程,因此这个生成的文件是没有被压缩过的。而压缩则是结合多个文件或者目录到一个文件并最终压缩这个文件的方法。归档文件不是一个压缩文件,但压缩文件可以是一个归档文件,清楚了吗?好,那就让我们进入今天的主题。
by @技术头条 2018-09-20 21:45 分享 查看详情
极致技术探索:显卡工作原理 (linux.cn)
自从 sdfx 推出最初的 Voodoo 加速器以来,不起眼的显卡对你的 PC 是否可以玩游戏起到决定性作用,PC 上任何其它设备都无法与其相比。其它组件当然也很重要,但对于一个拥有 32GB 内存、价值 500 美金的 CPU 和 基于 PCIe 的存储设备的高端 PC,如果使用 10 年前的显卡,都无法以最高分辨率和细节质量运行当前最高品质的游戏AAA titles,会发生卡顿甚至无响应。显卡(也常被称为 GPU,即图形处理单元Graphic Processing Unit),对游戏性能影响极大,我们反复强调这一点;但我们通常并不会深入了解显卡的工作原理。

出于实际考虑,本文将概述 GPU 的上层功能特性,内容包括 AMD 显卡、Nvidia 显卡、Intel 集成显卡以及 Intel 后续可能发布的独立显卡之间共同的部分。也应该适用于 Apple、Imagination Technologies、Qualcomm、ARM 和其它显卡生产商发布的移动平台 GPU。
by @技术头条 2018-09-20 21:44 分享 查看详情
FreeDOS 的简单介绍 (linux.cn)
FreeDOS 是一个古老的操作系统,但是对于多数人而言它又是陌生的。在 1994 年,我和几个开发者一起 开发了 FreeDOS —— 这是一个完整、自由、兼容 DOS 的操作系统,你可以用它来玩经典的 DOS 游戏、运行过时的商业软件或者开发嵌入式系统。任何在 MS-DOS 下工作的程序在 FreeDOS 下也可以运行。

在 1994 年,任何一个曾经使用过微软的商业版 MS-DOS 的人都会迅速地熟悉 FreeDOS。这是设计而为之的;FreeDOS 尽可能地去模仿 MS-DOS。结果,1990 年代的 DOS 用户能够直接转换到 FreeDOS。但是,时代变了。今天,开源的开发者们对于 Linux 命令行更熟悉,或者他们可能倾向于像 GNOME 一样的图形桌面环境,这导致 FreeDOS 命令行界面最初看起来像个异类。

新的用户通常会问,“我已经安装了 FreeDOS,但是如何使用呢?”。如果你之前并没有使用过 DOS,那么闪烁的 C:\> DOS 提示符看起来会有点不太友好,而且可能有点吓人。这份 FreeDOS 的简单介绍将带你起步。它只提供了基础:如何浏览以及如何查看文件。如果你想了解比这里提及的更多的知识,访问 FreeDOS 维基。
by @技术头条 2018-09-20 21:43 分享 查看详情
介绍 Linux 中的管道和命名管道 (linux.cn)
要在命令间移动数据?使用管道可使此过程便捷。

在 Linux 中,pipe 能让你将一个命令的输出发送给另一个命令。管道,如它的名称那样,能重定向一个进程的标准输出、输入和错误到另一个进程,以便于进一步处理。
by @技术头条 2018-09-20 21:42 分享 查看详情
如何“干掉”if…else (cmsblogs.com)
if...else 是所有高级编程语言都有的必备功能。但现实中的代码往往存在着过多的 if...else。虽然 if...else 是必须的,但滥用 if...else 会对代码的可读性、可维护性造成很大伤害,进而危害到整个软件系统。现在软件开发领域出现了很多新技术、新概念,但 if...else 这种基本的程序形式并没有发生太大变化。使用好 if...else 不仅对于现在,而且对于将来,都是十分有意义的。今天我们就来看看如何“干掉”代码中的 if...else,还代码以清爽。
by @技术头条 2018-09-20 21:41 分享 查看详情
10 个在 Linux 上也有的流行的 Windows 程序 (linux.cn)
回顾过去,2018 年是 Linux 社区的好年景。许多仅在 Windows 和/或 Mac上 有的程序可在 Linux 平台上使用了,而且不用麻烦。向 Snap 和 Flatpak 技术致敬,这些技术已经为 Linux 用户带来了许多“受限制”的程序。

今天,我们为你提供了一个有名的 Windows 程序列表,你不需要寻找它们的替代品,因为它们已经在 Linux 上可用。
by @技术头条 2018-09-20 21:41 分享 查看详情
利用剪切板JS API优化输入框的粘贴体验 (www.zhangxinxu.com)
输入框输入内容我们有时候为了方便,会直接粘贴内容,例如IP,网址,或者陌生人的手机号。但是,有时候我们复制的内容包含冗余信息,或者格式不准确,还需要重新编辑,体验就不好了。实际上,我们可以直接控制剪切板里面的复制的文字内容,可以实现粘贴的数据是我们希望的准确的数据格式,省去用户重新自己编辑的麻烦,可以有效提升用户的交互体验。

具体该如何实现呢?请看本文的介绍以及可以直接复制粘贴就可以使用的JS代码。
by @技术头条 2018-09-20 21:38 分享 查看详情
负载均衡http自动转https的实现方法 (log.zhoz.com)

通常,http自动转https的实现方法有两种全局方式1、修改Apache2、修改.htaccess原理一样,2--5行:ServerName zhoz.com# SSLRewriteEngine OnRewriteCond %{SERVER_PORT} !^443$RewriteRule ^.*$ https://%{SERVER_NAME}%{REQUEST_URI} [L,R]但遇到了负载均衡服务器时,由于服务器间是通过http方式访问的,所以以上方式判断不了。用Js直接读取来处理,代码如下:<script type="text/javascript">var url = window.location.href;if (url.indexOf("https") &
by @技术头条 2018-07-05 13:43 分享 查看详情
如何使用 virsh 命令创建、还原和删除 KVM 虚拟机快照 (linux.cn)
在虚拟化平台上进行系统管理工作时,经常需要在开始重大操作比如部署补丁和代码前先设置一个虚拟机快照snapshot。

虚拟机快照是特定时间点的虚拟机磁盘的副本。换句话说,快照保存了给定的时间点虚拟机的状态和数据。

我们可以在哪里使用虚拟机快照?

如果你在使用基于 KVM 的虚拟机管理程序(hypervisor),那么可以使用 virsh 命令获取虚拟机或域快照。快照在一种情况下变得非常有用,当你已经在虚拟机上安装或应用了最新的补丁,但是由于某些原因,虚拟机上的程序变得不稳定,开发团队想要还原所有的更改和补丁。如果你在应用补丁之前设置了虚拟机的快照,那么可以使用快照将虚拟机恢复到之前的状态。
by @技术头条 2018-07-05 13:33 分享 查看详情
Dry:一个命令行交互式 Docker 容器管理器 (linux.cn)
Docker 是一种所谓容器化的操作系统级的虚拟化软件。

基于 Linux 内核的 cgroup 和 namespace 等资源隔离特性,Docker 可以在单个 Linux 实例中运行多个独立的容器。

通过将应用依赖和相关库打包进容器,Docker 使得应用可以在容器中安全隔离地运行。
by @技术头条 2018-07-05 13:33 分享 查看详情
我们可以在同一个虚拟机中运行 Python 2 和 3 代码而不需要更改代码吗? (linux.cn)
从理论上来说,可以。Zed Shaw 说过一句著名的话,如果不行,那么 Python 3 一定不是图灵完备的。但在实践中,这是不现实的,我将通过给你们举几个例子来说明原因。

对于字典(dict)来说,这意味着什么?
by @技术头条 2018-07-05 13:31 分享 查看详情
4 个 Linux 下的命令行笔记程序 (linux.cn)
这些工具可以让你在 Linux 命令行下简单而有效地记录笔记和保存信息。

当你需要保存代码段或 URL、想法或引用时,可能会启动文本编辑器或使用桌面或基于 Web 的笔记记录工具。但那些不是你唯一的选择。如果你在终端窗口中工作,则可以使用 Linux 命令行下的许多笔记记录工具之一。

我们来看看这四个程序。
by @技术头条 2018-07-05 13:30 分享 查看详情
DevOps 会让你失业吗? (linux.cn)
你是否担心工作中自动化将代替人?可能是对的,但是这并不是件坏事。

这是一个很正常的担心:DevOps 最终会让你失业?毕竟,DevOps 意味着开发人员做运营,对吗?DevOps 是自动化的。如果我的工作都自动化了,我去做什么?实行持续分发和容器化意味着运营已经过时了吗?对于 DevOps 来说,所有的东西都是代码:基础设施是代码、测试是代码、这个和那个都是代码。如果我没有这些技能怎么办?

DevOps 是一个即将到来的变化,它将颠覆这一领域,狂热的拥挤者们正在谈论,如何使用 三种方法 去改变世界 —— 即 DevOps 的三大基础 —— 去推翻一个旧的世界。它是势不可档的。那么,问题来了 —— DevOps 将会让我失业吗?
by @技术头条 2018-07-05 13:30 分享 查看详情
在 Linux 上寻找你正在寻找的东西 (linux.cn)
怎样在 Linux 系统上使用 find、locate、mlocate、which、 whereis、 whatis 和 apropos 命令寻找文件。


在 Linux 系统上找到你要找的文件或命令并不难, 有很多种方法可以寻找。
find
最显然的无疑是 find 命令,并且 find 变得比过去几年更容易使用了。它过去需要一个搜索的起始位置,但是现在,如果你想将搜索限制在当下目录中,你还可以使用仅包含文件名或正则表达式的 find 命令。
$ find e*
empty
examples.desktop

这样,它就像 ls 命令一样工作,并没有做太多的搜索。
对于更专业的搜索,find 命令需要一个起点和一些搜索条件(除非你只是希望它提供该起点目录的递归列表)。命令 find -type f 从当前目录开始将递归列出所有常规文件,而 find ~nemo -type f -em
by @技术头条 2018-07-05 13:29 分享 查看详情
Linux 中的 5 个 SSH 别名例子 (linux.cn)
作为一个 Linux 用户,我们常用 ssh 命令 来登入远程机器。ssh 命令你用得越多,你在键入一些重要的命令上花的时间也越多。我们可以用 定义在你的 .bashrc 文件里的别名 或函数来大幅度缩减花在命令行界面(CLI)的时间。但这不是最佳解决之道。最佳办法是在 ssh 配置文件中使用 SSH 别名 。
这里是我们能把 ssh 命令用得更好的几个例子。
by @技术头条 2018-07-05 13:25 分享 查看详情
如何解决 “mount.nfs: Stale file handle”错误 (linux.cn)
了解如何解决 Linux 平台上的 mount.nfs: Stale file handle 错误。这个 NFS 错误可以在客户端或者服务端解决。

当你在你的环境中使用网络文件系统时,你一定不时看到 mount.nfs:Stale file handle 错误。此错误表示 NFS 共享无法挂载,因为自上次配置后有些东西已经更改。

无论是你重启 NFS 服务器或某些 NFS 进程未在客户端或服务器上运行,或者共享未在服务器上正确输出,这些都可能是导致这个错误的原因。此外,当这个错误发生在先前挂载的 NFS 共享上时,它会令人不快。因为这意味着配置部分是正确的,因为是以前挂载的。
by @技术头条 2018-07-05 13:25 分享 查看详情
Leader-Follower线程模型概述 (ifeve.com)
IO线程模型一直在演化,由最开始的单线程模型,到BIO方式的单线程接受请求线程池线程具体处理单个请求的读写事件,再到NIO的单线程接受请求线程池里面的单个线程可以处理不同请求的读写事件,一个字没有最快,只有更快。最近发现还有个Leader-follower线程模型,其的出现是为了解决单线程接受请求线程池线程处理请求下线程上下文切换以及线程间通信数据拷贝的开销,并且不需要维护一个队列。
by @技术头条 2018-07-05 13:20 分享 查看详情