EasyDarwin@2018思考

从2012年开始接触Darwin Streaming Server,到2018年从底层开始完全重新架构、研发、完成,EasyDarwin这个项目已经发展了6年了,时间飞逝,那时候咱们工作时间还不是很长,在对架构的理解上还是比较浅显,但是经过多年的发展,给我最大的一个理解是:顺势而为!

以EasyDarwin 2018年的发展为例,我们经历了两次彻底的迭代,一次是由C++转向node.js,另一次是由node.js转向了golang,并终于稳定了基础。为什么说是顺势而为呢,在12年开始研究Darwin,并研发底层架构时,我们可用的、可研究的,无非就是ACE、libevent这些框架,而这些框架很多时候比较庞大,而且ACE这种很难稳定下来,就导致在底层花费的时间太长,那么从今天来看,基于开源的引擎,我们已经不用再过多去关注底层网络编程了,而且只要潜心去开发应用层的协议,而且类似于node.js、golang,周边配套的组件非常丰富,错误检查的机制也很完善,相比于当年的ACE、libevent开发,开发效率上飞跃太多。在我看来,这就是顺势而为,除非有特殊化的定制,不然我们不需要再过多在底层上恋战,我们可以花更多的时间去研究架构,疏通逻辑,优化算法。

2018的EasyDarwin经历node.js和golang版本的发展后,已经非常明确了自我的定位和下一步的发展目标:那就是更好地服务于安防行业,降低开发门槛,让更多的互联网开发者即使不熟悉音视频开发,也能通过简单的整合就能开发出业务场景需要的服务程序!

EasyDarwin@2019发展规划

EasyDarwin从安防行业发展过来,后面也将专注服务于安防、公安相关行业,我们还将秉承Easy的特性,不仅仅是调研Easy,而且要在开发者的入门、测试、研发等各个维度上,都充分Easy化,配套建立更多的文档和视频教程,简单到让产品经理来调研,也能知道EasyDarwin是否能够满足他们产品的需求:

  • 强化版本归档:定期更新,定期归档发布版本,更多的时候,不需要编译就能先使用看到效果;

  • 简化二次开发:从编程语言继续采用golang,到配套更多的迭代示例,让普通研发只需要几行代码就能接入自己想要的功能;

  • 整合:整合ffmpeg等优质工具,以稳定+稳定的方式迭代产品。

在开发层面上,继续站在巨人的肩膀上前行:

  • 基于golang开发和迭代;

  • 使用golang + C++进行流媒体关于复杂计算类型功能的开发;

  • 引入更多golang社区的优秀组件;

从整个社会的编程开发者到公司,商业化已经越来越无法阻挡了,有技术的人担子重、时间少,技术一般的时间多、缺乏经验,但凡是开发工作,都得有钱来推动,而我们开源不但要技术好的来开发、而且还得有时间、愿意分享、愿意抛头露面,这种已经是越来越凤毛麟角了,好在,我们团队还有几个这样的人存在,2019,EasyDarwin,不忘初心,继续前行!

对EasyDarwin开源项目2018的思考与2019发展的规划:继续站在巨人的肩膀引入更多巨人的更多相关文章

  1. 对EasyDarwin开源项目后续发展的思考:站在巨人的肩膀上再跳上另一个更高的肩膀

    2017 EasyDarwin现状 自从2012年EasyDarwin项目创立开始,经过了快5年了,时光飞逝,如今EasyDarwin已经发展成为了不仅仅是一个单纯的开源流媒体服务器项目了,已经是各种 ...

  2. EasyDarwin开源流媒体项目

    本文转自EasyDarwin CSDN官方博客:http://blog.csdn.net/easydarwin EasyDarwin是由国内开源流媒体团队维护和迭代的一整套开源流媒体视频平台框架,从2 ...

  3. 3月份GitHub上最热门的Java开源项目

    今天,我们来盘点3月份GitHub上最热门的Java项目的时候了,如果你每月都有关注猿妹发布的排行榜,那么本月的Java项目对你来说一定不陌生,这些都是曾经多次出现在榜单中的项目: 1 advance ...

  4. EasyDarwin开源流媒体云平台之EasyRMS录播服务器功能设计

    需求背景 EasyDarwin开发团队维护EasyDarwin开源流媒体服务器也已经很多年了,之前也陆陆续续尝试过很多种服务端录像的方案,有:在EasyDarwin中直接解析收到的RTP包,重新组包录 ...

  5. 我们将要建立的EasyDarwin开源社区

    从12年12月我开始建立EasyDarwin开源项目,已经三年多的时间了,从开始最简单的一个开源流媒体服务器项目,如今已经发展成为目前国内最大的一个流媒体开源社区,截至目前已经有十几个项目在Githu ...

  6. 2015年度新增开源软件排名TOP 100,EasyDarwin开源流媒体服务器排名第17

    本榜单包含 2015 年开源中国新收录的 5977 款开源软件中,根据软件本身的关注度.活跃程度进行排名前 100 名的软件.从这份榜单中或许可以了解到最新业界的趋势. 榜单详情:http://www ...

  7. 解决用EasyDarwin开源流媒体服务器做HLS直播时Flash Player卡住的问题

    最近在开发EasyDarwin开源流媒体服务器HLS直播的时候发现一个现象:在PC上用flash player播放HLS和在ios上面播放HLS时,效果明显不同,在ios上播放非常稳定,而在flash ...

  8. 一个基于 Vue3 的开源项目,3个月时间 star 终于破千!

    本文主要是对如何做开源项目的一些思考. 前文回顾: <Vue3 来了,Vue3 开源商城项目重构计划正式启动!> <一个基于 Vue 3 + Vant 3 的开源商城项目> 关 ...

  9. Android项目:使用pulltorefresh开源项目扩展为下拉刷新上拉加载更多的处理方法,监听listview滚动方向

    很多android应用的下拉刷新都是使用的pulltorefresh这个开源项目,但是它的扩展性在下拉刷新同时又上拉加载更多时会有一定的局限性.查了很多地方,发现这个开源项目并不能很好的同时支持下拉刷 ...

随机推荐

  1. nmap小技巧[1] 探测大网络空间中的存活主机

    url: nmap是所有安全爱好者应该熟练掌握的扫描工具,本篇介绍其在扫描大网络空间时的用法. 为什么要扫描大网络空间呢? 有这样的情形: 内网渗透   攻击者单点突破,进入内网后,需进一步扩大成果, ...

  2. DEB方式在UBUNTU安装ODOO 8.0

    odoo在ubuntu最简单最快速安装方式是deb方式,基本无需再去改数据库配置文件,全自动化了,odoo中文网推荐新手采用此方法 1 安装数据库:sudo apt-get install postg ...

  3. UVA 6475 Effective Infection Time

    You are estimating the threat level of quarantined zones that have been abandoned to the infection. ...

  4. C# 读取Ini配置文件类

    配置文件 为fileName.ini 的文件 第一行必须为空,不然读不出值 [section1] key=value key2=value ......... [section2] key=value ...

  5. 【Linux指标】内存篇

    1:内存使用率 指标名称 指标含义 单位 采集方式(Linux) 采集方式(Windows) AGT.可用内存 GB 通过/proc/meminfo得到MemAvailable;若/proc/memi ...

  6. 前端模块化和AMD、CMD规范

    前端模块化和AMD.CMD规范 先看下基础:https://github.com/seajs/seajs/issues/547

  7. gcc -M -MM -MQ -MF -MT -MD

    静态模式规则对一个较大工程的管理非常有用.它可以对整个工程的同一类文件的重建规则进行一次定义,而实现对整个工程中此类文件指定相同的重建规则.比如,可以用来描述整个工程中所有的.o 文件的依赖规则和编译 ...

  8. phxsql安装小记

    PhxSQL具有服务高可用.数据强一致.高性能.运维简单.和MySQL完全兼容的特点. 服务高可用:PhxSQL集群内只要多数派节点存活就能正常提供服务:出于性能的考虑,集群会选举出一个Master节 ...

  9. JSON串常用函数

    1.JSON.parse() parse 用于从一个字符串中解析出json 对象. 例如 var str='{"name":"cpf","age&qu ...

  10. springboot解决第三方依赖jar包的问题

    公司现在用的是springboot+maven,想要把一些老的项目都改成这种框架.但是一些老的项目中有好多第三方的jar包或者是自己的jar包,maven库上没有.最初的解决方案是一个个的deploy ...