php常用函数手册(开源公司黄页之360开源软件推荐)PHP函数 / PHP函数在机器学习中的应用...

wufei123 发布于 2024-05-14 阅读(33)

中国最大的开源技术社区www.oschina.net在上一期《开源公司黄页之腾讯开源软件推荐》中,小编为大家挑选了腾讯公司的一些开源项目今天,我们来介绍360公司的开源项目,想了解更多,请点击阅读原文Atlas——MySQL中间层 

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

目前该项目在360公司内部得到了广泛应用,很多MySQL业务已经接入了Atlas平台,每天承载的读写请求数达几十亿条主要功能:读写分离从库负载均衡IP过滤SQL语句黑白名单自动分表>>>>源码地址:https://github.com/Qihoo360/Atlas

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

>>>>源码地址:https://github.com/Qihoo360/DroidPluginnginx-openresty-windowsnginx openresty 迁移到 windows 下的版本。

主要特性:高性能超过 20,000 连接并发 (特定cpu多核的机器上,server新版本的 190,000并发)多进程各种 Nginx bug 修复>>>>源码地址:https://github.com/LomoX-Offical/nginx-openresty-windows

HustStore——360高性能分布式存储服务 

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

此外,huststore 还结合特有的 HA 模块实现了分布式消息队列的功能,包括消息的流式推送,以及消息的 发布-订阅 等功能,可以完全取代 RabbitMQ 的功能特性huststore 分为 hustdb 以及 HA 模块两大部分。

hustdb (存储引擎)的底层设计采用了自主开发的 fastdb,通过一套独特的 md5 db 将QPS 提升至 10w 级别的水准(含网络层的开销)HA 以 nginx 模块的方式开发nginx 是工业级的 http server 标准,得益于此,huststore 具备以下特性:。

高吞吐量hustdb 的网络层采用了开源的 libevhtp 来实现,结合自主研发的高性能 fastdb 存储引擎,性能测试 QPS 在10w 以上高并发参考 nginx 的并发能力高可用性通用性的接口。

huststore 使用 http 作为通用协议,因此客户端的实现不限制于语言支持二进制的 key-value>>>>源码地址:https://github.com/Qihoo360/huststore。

ThinkJS——基于Promise的Node.js MVC框架 ThinkJS 是一个快速、简单的基于MVC和面向对象的轻量级Node.js开发框架,遵循MIT协议发布秉承简洁易用的设计原则,在保持出色的性能和至简的代码同时,注重开发体验和易用性,为WEB应用开发提供强有力的支持。

thinkjs里面很多特性来源于ThinkPHP,同时根据Node.js的特点,使用了Promise,WebSocket等特性,让代码更简洁、优雅>>>>源码地址:https://github.com/Qihoo360/thinkjs。

NovaJS——Web 组件框架 Nova.js是一个小巧的Web Component框架,旨在帮助开发者方便快速地开发组件作者起初希望在一个移动端项目中使用Polymer进行开发,但发现Polymer的代码对于移动端小型项目过于庞大、且只支持到Android4.4。

因此借鉴了Polymer的部分组件开发的思想,实现了Nova.jsNova.js使用gzip压缩后的总大小为12K浏览器支持度移动端主流浏览器(Android2.3+, iOS4.0+)PC端主流浏览器(Chrome, Safari, Firefox, IE8+)。

功能列表自定义元素Scoped CSS模板双向绑定监听属性事件模型方法切片Behaviors复用机制>>>>源码地址:https://github.com/melonHuang/novaQihoo 360.Pika——类Redis存储系统

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

有维护 Redis 经验的 DBA 维护 Pika 不需要学习成本Pika 主要解决的是用户使用 Redis 的内存大小超过 50G、80G 等等这样的情况,会遇到启动恢复时间长,一主多从代价大,硬件成本贵,缓冲区容易写满等问题。

Pika 就是针对这些场景的一个解决方案特点容量大,支持百G数据量的存储兼容redis,不用修改代码即可平滑从redis迁移到pika支持主从(slaveof)完善的运维命令>>>>源码地址:https://github.com/Qihoo360/pika

phptrace——PHP执行流程跟踪工具 phptrace 是一个追踪(trace)PHP执行流程的工具,你如果用过strace的话,则可能很容易想到phptrace到底实现了什么样的功能 其实,phptrace是类strace的一个实现,不同的是,strace用来追踪系统调用,而phptrace用来追踪PHP函数调用。

无论是开发测试 还是线上追查问题,代码执行流程往往会提供许多有用的信息,大大提高了开发人员的工作效率;对于系统函数,我们可以用strace 来观察其调用信息,然而PHP却长久以来缺少这么一个行之有效的工具,因此我们开发了phptrace。

>>>>源码地址:https://github.com/Qihoo360/phptraceQConf——分布式配置管理工具 QConf 是奇虎 360 内部分布式配置管理工具用来替代传统的配置文件,使得配置信息和程序代码分离,同时配置变化能够实时同步到客户端,而且保证用户高效读取配置,这使的工程师从琐碎的配置修改、代码提交、配置上线流程中解放出来,极大地简化了配置管理工作。

特点一处修改,所有机器实时同步更新高效读取配置安装部署方便,使用简单服务器宕机、网络中断、集群迁移等异常情况对用户透明支持c/c++、shell、php、python、lua 等语言>>>>源码地址:https://github.com/Qihoo360/QConf

kmemcache——对象缓存服务器 分布式linux内核内存对象缓存服务器,实现基于memcached v1.4.15,基本兼容memcached的所有操作经初步测试,内存数据操作比memcached快1倍,网络并发量比memcached的也大许多,目前处于alpha版本。

优点:由于在内核的socket层实现,所有处理网络事件性能比epoll机制快,另外无需内存由用户空间到内核空间的拷贝缺点:不建议在32bits下使用>>>>源码地址:https://github.com/Qihoo360/kmemcache。

elog——Erlang 日志库 elog 是一个用 Erlang 编程语言写出来的日志库,使用起来很简单很快速特点:具有六个不同的日志级别(跟踪、调试信息、警告、错误、致命的)支持可配置的日志等级>>>>源码地址

:https://github.com/Qihoo360/elogMario——同步到异步的类库 Mario是一个让编写从同步到异步的类库,它的线程安全较大,易于使用Mario 的最基本的想法就是为了减少人员的安排,降低成本和时间投入。

但是有了这个类库,操作人员就可以抽出精力做别的事情了所以 Mario 类库能够很轻易的解决你的问题,你只需要你自己的消息功能引擎类型:memory,这种类型就是将数据缓冲存储器留在内存里file,这种类型就是能够在本地日志路径里创建做出一个 write2file。

>>>>源码地址:https://github.com/Qihoo360/Mariongx_http_subrange_module当Nginx作为文件下载服务的反向代理,用户请求一个非常大的文件的时候,它会一直占满反向代理服务器与后端主机之间的带宽。

因为nginx一次获取整个文件,缓冲获取到的文件,导致客户端不能马上读取到带宽使用和iowait会很高ngx_http_subrange_module就是为了解决这个问题,它能分割HTTP requests。

将大数据量的HTTP请求切分为多个子请求,当下载一个1 G的文件,subrange将从后端主机中下载文件块,比如先获取5 M,然后再获取5 M,直到客户端下载完整个文件Configure nginx with

--add-module=/path/to/ngx_http_subrange_module>>>>源码地址:https://github.com/Qihoo360/ngx_http_subrange_module

了解更多,请点击阅读原文

开源中国|ID:oschina2013

扫一扫,关注OSChina微信号每天为你送上精选资讯早点还有每天的 OSChina 乱弹哦

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

河南中青旅行社综合资讯 奇遇综合资讯 盛世蓟州综合资讯 综合资讯 游戏百科综合资讯 新闻10631