自从 360 于 2016 年在美股退市以来,大家就一直猜测它何时会在国内上市,期间还发生了诸如借壳上市等话题,如今这只悬在空中的靴子终于落地了。对于很多人来说,360 最为人所知的是它在网络安全方面的建树,不时国外得个奖,近年来席卷互联网的安全事件也都能及时给出警告和解决方案,受到广大网友信赖。不过,除了安全,其实 360 还有很多开源技术值得称道,下面就让我们来盘点一下。注:本文盘点项目选取的是奇虎 360 比较具有代表性的项目,并非全部。


360开源技术大盘点_java

云计算 jepsen:分布式系统验证框架

https://github.com/jepsen-io/jepsen

Jepsen 是开源社区比较公认的分布式数据库的测试框架。Jepsen 验证过程包括 VoltDB、CockroachDB、Galera、MongoDB、etcd 在内的几乎所有的主流分布式数据库 / 系统。

 huststore:高性能分布式存储服务

https://github.com/Qihoo360/huststore

huststore 是一个高性能的分布式存储服务,不但提供了 100 thousand QPS 级别的 kv 存储的功能,还提供了 hash、set、sort set 等一系列数据结构的支持,并且支持二进制的 kv 存储,可以替代 Redis 相关的功能。

 Poseidon:日志搜索引擎

奇虎360开源其日志搜索引擎,可处理百万亿级的数据

https://github.com/Qihoo360/poseidon

Poseidon 系统是一个日志搜索平台,能在数百万亿条规模的数据集中找出我们需要的数据,只需要花费几秒钟时间,大大提高工作效率;同时,数据不需要额外存储,节省了大量存储和计算资源。该系统可以应用于任何海量 (从万亿到千万亿规模) 的查询检索需求。

人工智能 XLearning:深度学习调度平台

奇虎360正式开源其深度学习调度平台,支持TensorFlow、MXNet等框架

https://github.com/Qihoo360/XLearning

XLearning 由 360 系统部大数据团队与人工智能研究院联合开发,基于 Hadoop Yarn 完成了对 TensorFlow、MXNet、Caffe、Theano、PyTorch、Keras、XGBoost 等常用深度学习框架的集成。平台上线运行近一年时间,经多次版本迭代更新,为各学习框架的使用者提供了统一、稳定的作业提交平台,实现了资源共享,极大的提高了资源利用率,并且具有良好的扩展性和兼容性,在公司搜索、人工智能研究院、商业化、数据中心等业务部门得到广泛使用。

数据库 Zeppelin:高性能 KV 存储平台

奇虎360正式开源其高性能KV存储平台Zeppelin

https://github.com/Qihoo360/zeppelin

Zeppelin 是奇虎 360 开源的一个高性能,高可用的分布式 Key-Value 存储平台,它以高性能、大集群为目标,并希望能在 Zeppelin 的基础上,不仅能够提供 KV 的访问,还可以通过简单的一层转换满足更复杂的协议需求。

 Atlas:高性能 MySQL 代理

https://github.com/Qihoo360/Atlas

Atlas 是由 Qihoo 360 公司 Web 平台部基础架构团队开发维护的一个基于 MySQL 协议的数据中间层项目。它在 MySQL 官方推出的 MySQL-Proxy 0.8.2 版本的基础上,修改了大量 bug,添加了很多功能特性。

 pika:类 Redis 存储系统

https://github.com/Qihoo360/pika

Pika 是 360 DBA 和基础架构组联合开发的类 Redis 存储系统,完全支持 Redis 协议,用户不需要修改任何代码,就可以将服务迁移至 Pika。有维护 Redis 经验的 DBA 维护 Pika 不需要学习成本。

Pika 主要解决的是用户使用 Redis 的内存大小超过 50G、80G 等等这样的情况,会遇到启动恢复时间长,一主多从代价大,硬件成本贵,缓冲区容易写满等问题。Pika 就是针对这些场景的一个解决方案。

 MySQL Sniffer:MySQL 抓包工具

开源利器之MySQL抓包工具:MySQL Sniffer

https://github.com/Qihoo360/mysql-sniffer

MySQL Sniffer 是一个基于 MySQL 协议的抓包工具,实时抓取 MySQLServer 端的请求,并格式化输出。输出内容包访问括时间、访问用户、来源 IP、访问 Database、命令耗时、返回数据行数、执行语句等。有批量抓取多个端口,后台运行,日志分割等多种使用方式,操作便捷,输出友好。

前端 /Node chimee:浏览器视频播放框架

https://github.com/Chimeejs/chimee

Chimee 由奇舞团研制的 h5 播放器,它支持 mp4、m3u8、flv 等多种格式。通过插件式开发,能满足业务方快速迭代、灰度发布等要求。让开发者能够轻松快捷地完成视频场景的开发。

 ThinkJS:企业级 Node 框架

https://github.com/thinkjs/thinkjs

ThinkJS 是一款面向未来开发的 Node.js 框架,整合了大量的项目最佳实践,让企业级开发变得如此简单、高效。从 3.0 开始,框架底层基于 Koa 2.x 实现,兼容 Koa 的所有功能。

 Firekylin:通用博客系统

https://github.com/firekylin/firekylin

Firekylin 是一个高效简洁的动态博客系统,整体基于 ThinkJS 框架,后台采用了 React 技术栈。

移动开发 RePlugin:Android 占坑类插件化方案

全面插件化:RePlugin的使命

https://github.com/Qihoo360/RePlugin

RePlugin 是一套完整的、稳定的、适合全面使用的,占坑类插件化方案,由 360 手机卫士的 RePlugin Team 研发,也是业内首个提出”全面插件化“(全面特性、全面兼容、全面使用)的方案。

 DroidPlugin:Android 插件化框架

https://github.com/DroidPluginTeam/DroidPlugin

DroidPlugin 是在 Android 系统上实现了一种新的插件机制:它可以在无需安装、修改的情况下运行 APK 文件,此机制对改进大型 APP 的架构,实现多团队协作开发具有一定的好处。

运维监控 QConf:分布式配置管理工具

https://github.com/Qihoo360/QConf

QConf 是一个分布式配置管理工具。 用来替代传统的配置文件,使得配置信息和程序代码分离,同时配置变化能够实时同步到客户端,而且保证用户高效读取配置,这使的工程师从琐碎的配置修改、代码提交、配置上线流程中解放出来,极大地简化了配置管理工作。

 phptrace:PHP 执行跟踪工具

https://github.com/Qihoo360/phptrace

phptrace 是一个低开销的用于跟踪、分析 PHP 运行情况的工具。它可以跟踪 PHP 在运行时的函数调用、请求信息、执行流程,并且提供有过滤器、统计信息、当前状态等实用功能。 在任何环境下,它都能很好的定位阻塞问题以及在高负载下 Debug,尤其是线上生产环境。

 ElasticHD:ElasticSearch 可视化管理工具

https://github.com/360EntSecGroup-Skylar/ElasticHD

Elasticsearch 可视化 DashBoard, 支持 Es 监控、实时搜索,Index template 快捷替换修改,索引列表信息查看, SQL converts to DSL 等。

开发工具 GoReporter:代码质量检测工具

https://github.com/360EntSecGroup-Skylar/goreporter

Golang 开发工具,提供代码质量检测 /Golang 代码静态检测器 /Golang 项目单元测试,根据自定义模版自动生成 Golang 代码质量检测报告。