[译注]翻译这篇文章,主要是觉得老外在思考问题时,勇于打破固有的技术栈积累,尝试不同的选择,从而找到最合适自己的技术方案、得到真正的实惠。

Synergy SKY提供多种软件解决方案,本文想讨论的是关于一套用于视频相关的呼叫记录(CDR)分析解决方案。

为客户提供方案时有两种选择,一是让客户避免所有的前置安装、构建一套纯粹的云方案,但这种架构还是有很多术语如数据存储、计算需求和管理;二是直接提供一键式软件预装,这也许是我们要做的。

我们在VMWare类似的虚拟机环境,可以构建全栈测试环境,但首先面临的问题就是操作系统的选择。CentOS当然是我们的首选。

在测试过程中,我们经历的其中一个主要的问题是当应用程序占用太多内存时,Systemd会试图让整个dbus-systemd连接崩溃,导致整个系统处于不稳定的状态,只有重启才能解决问题。

我们还遇到一些其它的问题,可能在最新的CentOS中已经解决了吧。

我们在CentOS系统上已经积累了大量的经验,这在我们做决定时是件好事。

我们在构建平台时所关注的点:

  • 容器技术 (docker进行了全方位的测试,LXC进行了一些)
  • 软件包与软件仓库管理工具 (yum/dnf)
  • 自动化安装
  • 服务管理(Systemd)
  • 如何处理系统的基础配置(网络、服务启动等)

带着CentOS的经验,对于FreeBSD的体验过程也是从头编译了所有要用到的软件。

然而抱着“行动前先获得点印象”的想法,我们还是决定测试其它的Linux发行版。这正是事情的一个转折点。

FreeBSD 10.3给我们的第一印象就超出了预期。几分钟就可以完成安装,在线手册编写得异常的好。令我惊讶的是有预先编译好的软件包,几乎是开箱即用。几个小时后,我就用FreeBSD搭好了整个技术栈环境。

通过对基于FreeBSD Jail和ZFS的行业案例的了解及自己的体验,我们立马决定不再寻找其它的替代品,专注于测试和学习FreeBSD。

  • 容器技术 ⇒ FreeBSD Jails
  • 软件包和软件仓库管理工具 (yum/dnf) ⇒ Pkgng / pkg / ports
  • 自动化安装 ⇒ bsdinstall (我们甚至构建了PXE安装镜像,让你可以几分钟运行起来一套开发系统)
  • 服务管理系统 ⇒FreeBSD rc
  • 如何处理系统的基础配置(网络、服务启动等) ⇒ FreeBSD rc 及 rc.conf

我们基于Pkgng作为二进制软件包的发行格式。整个过程中当然也会遇到这样那样的一些挑战,但从来不上稳定性和性能方面的。在OS和用户空间层软件的隔离清晰,这一点完全符合逻辑,也被完美执行了。这也让整个系统自动变得更整洁,很容易知道在哪去找配置文件、在哪存放数据。

FreeBSD 给到我们的是那种“刚好就能用”的体验,而且没有牺牲完整的控制能力。它在实际表现中非常成熟、稳定而又性能强劲!

FreeBSD已经伴随我们走过两年的时间,我们没有再中断过。

有几点要再提一下,也是几个让FreeBSD变得更棒的方面:

  • Freebsd-update, 让你的基础操作系统保持更新、与软件包系统相互独立
  • Pkg 仓库持续更新,不会像ubuntu/debian/CentOS那样
  • 开箱即用
  • 通过ports系统,非常容易修改、重新构建和分发定制后的软件包
  • 原生集成ZFS,而不仅仅是用户空间层面的驱动
  • 商业许可问题更容易处理
  • Network 相关的技术栈,FreeBSD中总共有三种不同的防火墙,我们选择了pf

原文:http://blog.synergysky.com/whydidwebuildoursolutionontopof_freebsd

译文有部分删减

[译]我们为何基于FreeBSD打造解决方案?的更多相关文章

  1. 智能家居巨头 Aqara 基于 KubeSphere 打造物联网微服务平台

    背景 从传统运维到容器化的 Docker Swarm 编排,从 Docker Swarm 转向 Kubernetes,然后在 Kubernetes 运行 SpringCloud 微服务全家桶,到最终拥 ...

  2. PC-BSD 9.2 发布,基于 FreeBSD 9.2

    PC-BSD 9.2 发布了,该版本基于 FreeBSD 9.2. 下载地址:PCBSD9.2-RELEASE-p9-10-02-2013-x64-DVD.iso (3,465MB, SHA256). ...

  3. 开源倾情奉献:基于.NET打造IP智能网络视频监控系统(一)开放源代码

    本文为 Dennis Gao 原创技术文章,发表于博客园博客,未经作者本人允许禁止任何形式的转载. 开源倾情奉献系列链接 开源倾情奉献:基于.NET打造IP智能网络视频监控系统(一)开放源代码 开源倾 ...

  4. 基于jQuery打造的选项卡向上弹出jquery焦点图切换特效

    基于jQuery打造的选项卡向上弹出jquery焦点图切换特效 鼠标经过标题栏,会出现层特效向上滑动,并且在同时进行幻灯片切换,效果十分不错. 有兴趣的童鞋可以下载看看,在IE6方面兼容性也不错,只有 ...

  5. 基于jquery打造的网页右侧自动收缩浮动在线客服代码

    基于jquery打造的网页右侧自动收缩浮动在线QQ客服代码, 当前比较流行的一款QQ在线jquery特效代码, 代码中还带有IE6下PNG图片透明的特效,如果想研究IE6下PNG透明的同学也可以下载研 ...

  6. 基于.NET打造IP智能网络视频监控系统

    开源倾情奉献:基于.NET打造IP智能网络视频监控系统(一)开放源代码   开源倾情奉献系列链接 开源倾情奉献:基于.NET打造IP智能网络视频监控系统(一)开放源代码 开源倾情奉献:基于.NET打造 ...

  7. 基于MongoDB打造.Net的分布式Session子系统

    基于MongoDB打造.Net的分布式Session子系统 Taobao有她自己的分布式session框架,.net阵营也不能落后了,在下做了个基于MongoDB的支持最多26台MongoDB的分布式 ...

  8. 基于Nettty打造自己的MVC服务器

    最近开始折腾Netty,体验下NIO编程.既然学习了,就要做点东西出来,要不然不容易掌握学到的东西.在Netty的官方demo上都有各种case的sample,打造Http服务器的核心代码就是从Sam ...

  9. 基于EasyDSS流媒体解决方案创建视频点播、短视频、视频资源库等视频播放系统

    随着前端技术的不断发展,视频点播早已不再是IE6时代的浏览器嵌入式Windows Media Player.也不是后来的flash media player需要的rtmp点播流,现在能够唯一满足全终端 ...

随机推荐

  1. 学机器学习,不会数据处理怎么行?—— 二、Pandas详解

    在上篇文章学机器学习,不会数据处理怎么行?—— 一.NumPy详解中,介绍了NumPy的一些基本内容,以及使用方法,在这篇文章中,将接着介绍另一模块——Pandas.(本文所用代码在这里) Panda ...

  2. kali 解决Metasploit拿到shell后显示中文乱码问题

    拿到对方shell后显示的问题如下: 中文乱码解决: chcp 65001 然后 上传下载文件

  3. shell find

    find   -name april*                     在当前目录下查找以april开始的文件 find    /   -amin    -10     # 查找在系统中最后1 ...

  4. HDU.6155.Subsequence Count(线段树 矩阵)

    题目链接 首先考虑询问[1,n]怎么做 设 f[i][0/1]表示[1,i]以0/1结尾的不同子序列个数 则 \(if(A[i]) f[i][1] = f[i-1][0] + f[i-1][1] + ...

  5. 【洛谷】3960:列队【Splay】

    P3960 列队 题目描述 Sylvia 是一个热爱学习的女孩子. 前段时间,Sylvia 参加了学校的军训.众所周知,军训的时候需要站方阵. Sylvia 所在的方阵中有n×m名学生,方阵的行数为  ...

  6. Android Studio 使用过程遇到的坑

    最近在尝试Android Studio打Jar的包,然而事实并不是想象的那么简单,so,写多个坑的解决,以备不时之需. 1.Error:Execution failed for task ':app: ...

  7. JDBC(5)—DatabaseMetaData

    1.简介: 使用元数据已实现通用的查询方法.元数据介绍:使用jdbc获得连接之后,得到一个Connection对象,可以通过这个对象获得DataBaseMetaData对象,该对象可以获得有关数据库管 ...

  8. EF6 简单增删改查示例代码

    示例一: private DbContext _dbContext; public DbContext CurrentContext { get { if (_dbContext == null) { ...

  9. Introduction to pinatrace annotate version 2: a look into latches again

    https://fritshoogland.wordpress.com/2017/12/22/introduction-to-pinatrace-annotate-version-2-a-look-i ...

  10. 加密入门(三):TrueCrypt(转)

    http://terrychen.info/encryption-truecrypt/ TrueCrypt 是一款功能强大的开源加密工具,利用 TrueCrypt 可以创建一个加密文件作为虚拟加密卷, ...