0%

前言

docker 非常的简单,在目标软件需要庞大的依赖的时候,我们只需要使用官方或者第三方打包好的镜像即可快速安装软件,当然也是有代价的,资源占用稍微多一点,不过比起花费大量的时间和知识起一套环境是值得的。

本次演示将在 debian9 和树莓派上进行。

阅读全文 »

前言

由于 vulrt 没有提供开箱即用的 arch 镜像所以不得已只有手动安装 arch 了。至于为什么要安装 arch ,我个人的原因是因为 arch 有较新版的 gcc 。

顺便说一句不要看 vultr 官方文档的 arch 安装,简直有毒

阅读全文 »

常常有人用 go 与 c语言比较二进制的大小,而且举例 go 生成的二进制多么的大 c 生成的二进制多么的小,这点我是看不下去的。因为 go 官方的编译器生成的二进制是静态的,而 c 语言一般使用 gcc 生成 二进制,而 gcc 默认是动态的。用静态和动态比较是非常不公平的。如果实在需要比较的话,就静态对静态 动态对动态。

linux 可以使用 ldd 查看 可执行文件是否包含动态链

接下来就开始演示了。

阅读全文 »

前言

upx 是一款压缩可执行文件的软件,压缩率在 20% 到 %70 之间。在可执行文件运行的时候并不需要解压软件,程序在内存中自动展开。

本教程在 linux 下进行,理论上支持所有 linux 发型版。

阅读全文 »

前言

centos 作为 RHEL 了延伸版继承了 RHEL 的稳定性,但是稳定是有代价的,就是源里的安装包过于老旧,所以我们在某些时候不得不编译软件,但是手动编译的话容易造成服务器的不稳定,除非清楚的知道自己做了什么。不然的话我是建议编译的。而且使用源方式安装的软件对比编译安装时有很多优势的。

除非你很有钱一个服务器只承载单一服务,那就随便了。

阅读全文 »

前言

debian 最新稳定版,默认软件源有点轻微的过时了,所以当我们必须要使用软件的新功能的话就只有编译或者添加源。而且编译浪费时间,还容易造成系统的不稳定。而且添加软件源就牵扯到一个信任问题了。所以我选择了 backports 源。

backports 源曾经是第三方源后来因为做的比较好被 debian 官方收编了。dackaports 源的软件全部来自于 debian 的下一个版本,所以质量和稳定性都是有保证性的。

本次演示在 debian9 下进行

阅读全文 »

前言

nginx 从 1.9.0 开始支持 tcp 转发,1.9.13 支持 udp 转发。利用 nginx 数据转发模块我们可以方便的进行链路优化。

本次演示在 linux 下进行,包括 debian 和 centos。debian 使用的是 debian9,centos 使用的是 centos7。

如果你使用了云服务商提供的外部防火墙的话,你还需要参考云服务商的文档进行配置。或者你使用了云服务商提供的修改过的系统比如 aliyun ,请参考 yun 服务商的文档配置防火墙。

fedora 官方源打包的 nginx 不包含 tcp/upd 数据转发模块,这是我之前踩过的坑,这里只是顺便说一下,本文不演示 fedora 的 nginx tcp/upd 数据转发。

阅读全文 »

前言

因为之前在使用某些软件的时候发现有部分软件只监听 localhost ,导致服务无法在公网上正常访问。然而我并不想修改软件的配置文件,而且有的软件修改配置文件可能出现暗坑,所以我选择了 websocket 的方式将他们开放到公网,因为这种方式更具备通行性。

就在前几天发现某款软件也是默认监听的 localhost ,如果我是在本地使用也就算了,可是我是在服务器上使用它,所以轻车熟路的使用上了 websocket 将它反向代理到了公网。

在反向代理的的时候你可以在代理层套上 ssl 以保证链接的安全性,但是不能使用 http 登录认证,登录认证可以在被代理的软件上进行设置。

阅读全文 »

前言

julia 作为一款专为科学计算设计的语言,有着动态语言的简单和静态语言的速度,以上纯属吹逼,大家不用在意。我打算了解 julia 其中一部原因是因为和 python3 有着相似的语法,而且听说数学计算能力不错。详情请参见 https://zh.m.wikipedia.org/zh-cn/Julia_(编程语言)

阅读全文 »

前言

dart 作为 google 主导的两门编程语言之一,可能并没有另外一门编程语言那么出名。

dart 的每次发布好像都被寄予厚望,但是好像每次都不温不火,抱着试试看的心态打算安装 dart 来玩一下。

阅读全文 »