- 浏览: 38688 次
- 性别:
- 来自: 唐山
-
文章分类
最新评论
大公司都有哪些开源项目~~~阿里,百度,腾讯,360,新浪,网易,小米等
----------------------------------------------------------------------------------------------------------------
奇虎360https://github.com/Qihoo360
1.MySQL中间层 Atlas
Atlas是由 Qihoo 360, Web平台部基础架构团队开发维护的一个基于MySQL协议的数据中间层项目。它在MySQL官方推出的MySQL-Proxy 0.8.2版本的基础上,修改了大量bug,添加了很多功能特性。目前该项目在360公司内部得到了广泛应用,很多MySQL业务已经接入了Atlas平台,每天承载的读写请求数达几十亿条。
主要功能:
* 读写分离
* 从库负载均衡
* IP过滤
* SQL语句黑白名单
* 自动分表更多内容:https://github.com/Qihoo360/Atlas
2.360黑科技=》DroidPlugin
DroidPlugin 是360手机助手在 Android 系统上实现了一种新的插件机制:它可以在无需安装、修改的情况下运行APK文件,此机制对改进大型APP的架构,实现多团队协作开发具有一定的好处。
特点:
支持Androd 2.3以上系统
插件APK完全不需做任何修改,可以独立安装运行、也可以做插件运行。要以插件模式运行某个APK,你无需重新编译、无需知道其源码。
插件的四大组件完全不需要在Host程序中注册,支持Service、Activity、BroadcastReceiver、ContentProvider四大组件
插件之间、Host程序与插件之间会互相认为对方已经"安装"在系统上了。
API低侵入性:极少的API。HOST程序只是需要一行代码即可集成Droid Plugin
超强隔离:插件之间、插件与Host之间完全的代码级别的隔离:不能互相调用对方的代码。通讯只能使用Android系统级别的通讯方法。
支持所有系统API
资源完全隔离:插件之间、与Host之间实现了资源完全隔离,不会出现资源窜用的情况。
实现了进程管理,插件的空进程会被及时回收,占用内存低。
插件的静态广播会被当作动态处理,如果插件没有运行(即没有插件进程运行),其静态广播也永远不回被触发。
更多查看:https://github.com/Qihoo360/DroidPlugin/
3.高性能分布式存储服务 HustStore
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 整体架构支持 Replication (master-master),支持 load balance 。
HA 的可用性由nginx 的 master-worker 架构所保证。当某一个 worker 意外挂掉时, master 会自动再启动一个 worker 进程,而且多个 worker 之间是相互独立的,从而保证了 HA 的高可用性。
huststore 的高可用性由其整体架构特点保证。由于 hustdb 的存储节点采用了 master-master 的结构,当某一个存储节点挂掉时,HA 会自动将请求打到另外一台 master,同时 HA 会按照自动进行负载均衡,将数据分布存储在多个 hustdb节点上,因此存储引擎不存在单点限制。
同时 HA 集群本身也是分布式的设计,而且每个 HA 节点都是独立的,当某一台 HA 挂掉时, LVS 会自动将请求打到其他可用的 HA 节点,从而解决了 HA 得单点限制。通用性的接口
huststore 使用 http 作为通用协议,因此客户端的实现不限制于语言。支持二进制的 key-value
更多查看:https://github.com/Qihoo360/huststore
4.分布式配置管理工具 QConf
QConf 是奇虎 360 内部分布式配置管理工具。用来替代传统的配置文件,使得配置信息和程序代码分离,同时配置变化能够实时同步到客户端,而且保证用户高效读取配置,这使的工程师从琐碎的配置修改、代码提交、配置上线流程中解放出来,极大地简化了配置管理工作。
特点
一处修改,所有机器实时同步更新
高效读取配置
安装部署方便,使用简单
服务器宕机、网络中断、集群迁移等异常情况对用户透明
支持c/c++、shell、php、python、lua 等语言
更多查看:https://github.com/Qihoo360/QConf
5.开源类Redis存储系统Pika
Pika 是 360 DBA 和基础架构组联合开发的类 Redis 存储系统,完全支持 Redis 协议,用户不需要修改任何代码,就可以将服务迁移至 Pika。有维护 Redis 经验的 DBA 维护 Pika 不需要学习成本。
Pika 主要解决的是用户使用 Redis 的内存大小超过 50G、80G 等等这样的情况,会遇到启动恢复时间长,一主多从代价大,硬件成本贵,缓冲区容易写满等问题。Pika 就是针对这些场景的一个解决方案。
特点
容量大,支持百G数据量的存储
兼容redis,不用修改代码即可平滑从redis迁移到pika
支持主从(slaveof)
完善的运维命令
更多内容:https://github.com/Qihoo360/pika
6.对象缓存服务器 kmemcache
分布式linux内核内存对象缓存服务器,实现基于memcachedv1.4.15,基本兼容memcached的所有操作。经初步测试,内存数据操作比memcached快1倍,网络并发量比memcached的也大许多,目前处于alpha版本。
优点:由于在内核的socket层实现,所有处理网络事件性能比epoll机制快,另外无需内存由用户空间到内核空间的拷贝。
缺点:不建议在32bits下使用。
更多内容:https://github.com/Qihoo360/kmemcache
7.ngx_http_subrange_module
当Nginx作为文件下载服务的反向代理,用户请求一个非常大的文件的时候,它会一直占满反向代理服务器与后端主机之间的带宽。因为nginx一次获取整个文件,缓冲获取到的文件,导致客户端不能马上读取到。带宽使用和iowait会很高。
ngx_http_subrange_module就是为了解决这个问题,它能分割HTTP requests。将大数据量的HTTP请求切分为多个子请求,当下载一个1 G的文件,subrange将从后端主机中下载文件块,比如先获取5 M,然后再获取5 M,直到客户端下载完整个文件。
更多查看:https://github.com/Qihoo360/ngx_http_subrange_module
8.同步到异步的类库 Mario
Mario是一个让编写从同步到异步的类库,它的线程安全较大,易于使用。Mario 的最基本的想法就是为了减少人员的安排,降低成本和时间投入。但是有了这个类库,操作人员就可以抽出精力做别的事情了。所以 Mario 类库能够很轻易的解决你的问题,你只需要你自己的消息功能。
引擎类型:
memory,这种类型就是将数据缓冲存储器留在内存里。
file,这种类型就是能够在本地日志路径里创建做出一个write2file。
更多查看:https://github.com/Qihoo360/Mario
其他系列请去360github库观看
----------------------------------------------------------------------------------------------------------------
百度 Baiduhttps://github.com/fex-team/
1.UEditor 编辑器
UEditor是由百度web前端研发部开发所见即所得富文本web编辑器,具有轻量,可定制,注重用户体验等特点。
主要特点:
轻量级:代码精简,加载迅速。
定制化:
全新的分层理念,满足多元化的需求。
采用三层架构:
1. 核心层: 为命令层提供底层API,如range/selection/domUtils类。
2. 命令插件层: 基于核心层开发command命令,命令之间相互独立。
3. 界面层: 为命令层提供用户使用界面。
满足不同层次用户的需求。https://github.com/fex-team/ueditor
https://github.com/fex-team/umeditor
2.ECharts 图表库
ECharts开源来自百度商业前端数据可视化团队,基于html5 Canvas,是一个纯Javascript图表库,提供直观,生动,可交互,可个性化定制的数据可视化图表。创新的拖拽重计算、数据视图、值域漫游等特性大大增强了用户体验,赋予了用户对数据进行挖掘、整合的能力。提供商业产品常用图表,底层基于ZRender(一个全新的轻量级canvas类库),创建了坐标系,图例,提示,工具箱等基础组件,并在此上构建出折线图(区域图)、柱状图(条状图)、散点图(气泡图)、饼图(环形图)、K线图、地图、力导向布局图以及和弦图,同时支持任意维度的堆积和多图表混合展现。
更多:https://github.com/ecomfe/echarts
ECharts-X是ECharts团队推出的全新 3D 可视化库,它是基于 ECharts 的扩展,底层深度整合了 WebGL 库QTEK和 Canvas2D 库ZRender。
扩展:https://github.com/ecomfe/echarts-x
3.WebUploader 上传控件
WebUploader 是由Baidu WebFE(FEX)团队开发的一个简单的以HTML5为主,FLASH为辅的现代文件上传组件。在现代的浏览器里面能充分发挥HTML5的优势,同时又不摒弃主流IE浏览器,延用原来的FLASH运行时,兼容IE6+,Andorid 4+,IOS 6+。两套运行时,同样的调用方式,可供用户任意选用。采用大文件分片并发上传,极大的提高了文件上传效率。
https://github.com/fex-team/webuploader
4.百度脑图KityMinder
KityMinder 是百度FEX团队的f-cube小组(原UEditor小组)的又一力作。作为一款在线的脑图编辑工具,它有着很多Native编辑工具的交互体验。KM与UE有着一样的宗旨,就是注重最终用户的使用体验。同时,它充分发挥了Web云存储的优势,可以直接将编辑中的脑图同步到云端。此外,借由独创的 “云盘分享”功能,用户可以一键将当前编辑的脑图直接生成在线链接共享给其他用户,实现无缝沟通。
KM是基于SVG技术实现,使用JavaScript+html实现。支持绝大多数的主流浏览器。
支持列表如下
1. chrome
2. firefox
3. safari
4. ie9-11https://github.com/fex-team/kityminder
5.人工智能系统 WARP-CTC
WARP-CTC 基于 CTC 方法,当前可用的一些 CTC 实现通常要求大量的内存或者是慢十到几百倍。
百度研究所首席科学家 Andrew Ng 称他的研究主要是人工神经网络如何在图形处理单元 (GPUs) 上运行,让 WARP-CTC 实现对 GPUs 和 x86 CPUs 的支持。
connectionist temporal classification (CTC) 方法可以追溯到 2006 年,在 Swiss AI 研究所 IDSIA 论文上有记录。 百度研究所开发的 WARP-CTC 就基于 CTC 方案,但是改进了其自身的语音识别功能
https://github.com/baidu-research/warp-ctc
其他系列请去baidu github库观看
----------------------------------------------------------------------------------------------------------------
腾讯QQhttp://alloyteam.github.io/
https://github.com/AlloyTeam/Mars
1.WeUI为微信Web服务量身设计
WeUI 是一套同微信原生视觉体验一致的基础样式库,由微信官方设计团队为微信 Web 开发量身设计,可以令用户的使用感知更加统一。包含
button
、cell
、dialog
、progress
、toast
、article
、actionsheet
、icon
等各式元素。
2.手机前端开发调试利器 vConsole
我们在开发手机版网页的时候,常常会出现下面的情景:
(1) 开发时,在自己电脑上运行得好好的,在手机上打开就挂了,但是手机上又看不到error log;
(2) 上线后,某用户表示页面失灵,但我们自己又重现不出来,看不到用户侧的出错信息。
如果说(1)还可以通过电脑连接手机以查看log来解决,那(2)在没有完善的前端上报体系时就非常被动了。
作为开发者,我们的诉求很简单:有没有快捷的方法在手机前端页面看到log日志?vConsole就这样出现了!
https://github.com/WechatFE/vConsole
3.专业级Web图像处理引擎 AlloyImage
AlloyImage是一个使用Javascript语言开发的,基于Web的在线图像处理引擎,除了核心底层图像处理引擎,还同时集成了一些方便快捷的图像处理API,您可以将它简单快捷的引用到您的Web网页中,做出与PhotoShop一样的优美效果。甚至,你可以用AlloyImage来开发一个Web在线图像处理软件。
https://github.com/AlloyTeam/AlloyImage
https://github.com/AlloyTeam/AlloyPhoto
4.GoPng图片合并并生成CSS
Css Sprite,有时也称为雪碧图、精灵图,是每一个前端开都会遇到的问题,也是常见的小图片加载优化手段。
在线版本:https://alloyteam.github.io/gopng/
源码地址:https://github.com/AlloyTeam/gopng
合成分解:https://github.com/luyongfugx/hcSpriteCuter(一个由多张小图合并而成的雪碧图中抠出其中一张或者几张图片)
5.可视化Web构建工具 AlloyDesigner
AlloyDesigner 是一款致力于提高前端生产效率的浏览器内运行工具,AlloyDesigner + Chrome F12(Especially with WorkSpace) 打造前端新的开发和测试模式
https://github.com/AlloyTeam/AlloyDesigner
6.Koala跨平台图形编译工具
Koala是一款预处理器语言图形编译工具,支持Less、Sass、CoffeeScript、Compass framework的即时编译。 无需手动输入命令去编译,后台监听文件是否有改变,如有修改会自动进行编译。能够大大提升
Web
开发中的工作效率。功能特性
多语言支持支持Less、Sass、CoffeeScript 和 Compass Framework。
实时编译监听文件,当文件改变时自动执行编译,这一切都在后台运行,无需人工操作。
编译选项可以设置各个语言的编译选项。
项目配置支持为项目创建一个全局配置,为文件设置统一编译选项。
错误提示在编译时如果遇到语法的错误,koala将在右下角弹出错误信息,方便开发者定位代码错误位置。
跨平台Windows、Linux、Mac都能完美运行。
系统支持及要求
Koala支持跨平台运行,完美兼容Windows、Linux与Mac 。
Linux系统下需安装好ruby运行环境, e.g.$ sudo apt-get install ruby
.https://github.com/oklai/koala
7.轻量级 CSS3 动画库 JX.Animate
JX.Animate 是一个开源的轻量级的CSS3动画库。动画可以使用标准的CSS3关键帧动画(KeyFrame)制作,也可以使用JavaScript制作,而且还可以支持在JavaScript中动态生成动画关键帧。
https://github.com/AlloyTeam/JXAnimate
8.Fanvas swf转为html5 canvas
Fanvas是一个把swf转为html5 canvas动画的系统,由两部分组成:Actionscript实现的解析器、js运行库。Flash做动画是最成熟最高效的方式,但由于终端基本不支持Flash播放,这给终端的动画制作带来了不少麻烦。Fanvas是Flash和Canvas的完美结合,可以把swf(包括矢量和位图)完美地转化为canvas动画.
https://github.com/TencentOpen/Fanvas
9.随身调测平台 GT
GT(随身调)是APP的随身调测平台,它是直接运行在手机上的“集成调测环境”(IDTE, Integrated Debug Environment)。利用GT,仅凭一部手机,无需连接电脑,您即可对APP进行快速的性能测试(CPU、内存、流量、电量、帧率/流畅度等等)、 开发日志的查看、Crash日志查看、网络数据包的抓取、APP内部参数的调试、真机代码耗时统计等。如果您觉得GT提供的功能还不够满足您的需要,您还 可以利用GT提供的基础API自行开发有特殊功能的GT插件,帮助您解决更加复杂的APP调试问题。
https://github.com/TencentOpen/GT
10.Frozen UI移动端UI框架
Frozen UI是一个开源的简单易用,轻量快捷的移动端UI框架。基于手Q样式规范,选取最常用的组件,做成手Q公用离线包减少请求,升级方式友好,文档完善,目前全面应用在腾讯手Q增值业务中。
https://github.com/frozenui/frozenui
11.LivePoolWeb 开发调试工具
LivePool 是一个基于 NodeJS,类似 Fiddler 支持抓包和本地替换的 Web 开发调试工具,是 Tencent AlloyTeam 在开发实践过程总结出的一套的便捷的 WorkFlow 以及调试方案。
特性
基于 NodeJS, 跨平台
支持 http 抓包和本地替换调试,Https/WebSockets 直接代理转发(暂不支持本地替换)
便捷的 UI 管理界面,跟 Fiddler 类似,降低学习成本
可以脱离 UI 后台运行,适应于某些不需要抓包,只需要使用替换和简单路由的场景
基于项目的替换规则管理,方便高效,规则支持拖曳排序
支持基于请求路径的本地文件替换,支持基于请求路径的路由转发(host 配置)
替换类型支持:文件/文件夹替换,combo合并替换,qzmin替换(批量combo),delay延时等
支持自动设置系统代理
支持规则过滤,只显示关注的请求
提供构建 http get/post 请求界面,方便接口调试
特色功能:模拟gprs/3g等低网速(mac only)
特色功能:支持离线站点到本地,并自动代码格式化
https://github.com/rehorn/livepool
12.KNVProtoEngine高性能树型协议处理引擎
KNV是一个模式自由的高性能树型协议处理引擎,是对Key-Value的一个通用结构化扩展。
应用特性
正如NoSQL对SQL的彻底变革一样,KNV是对Key-Value的彻底变革!
大家都很熟悉Key-Value系统,但KV操作极不方便:
-- 你不得不自己做乐观锁(读返回seq->修改->带seq写->seq变化则重头开始);
-- 你不得不拉取一堆数据,然后再提取你想要的部分;
-- 为了修改一个bit,你不得不把一串数据拉取修改后再一起提交更新
不过现在有KNV,一切都解决了。KNV时代来了,你还在犹豫吗?应用场景
KNV是专门针对以Protocol Buffers(或类似树型结构)存储的存储系统开发的,有3个应用场景:
存储系统处理用户请求的通用解决方法(Get/Set/Delete),可以适配任意用户自定义的数据结构。
代理/通用逻辑层服务器处理Protocol Buffers协议的通用方法 – 比如通用Proxy,透传多个协议, 对请求包进行鉴权、限频、统计等等操作,还支持对包体内容进行审计,使用KNV协议, 这种方法就有可能而且很简单。
原生态Protocol Buffers打解包库的高性能代替品。
https://github.com/TencentOpen/KNVProtoEngine
13.Behaviac 游戏AI的开发框架组件
Behaviac是游戏AI的开发框架组件,也是游戏原型的快速设计工具。支持行为树BT,状态机FSM,HTN等多种范式,方便的编辑和调试。支持全平台,适用于客户端和服务器,助力游戏快速迭代开发。编辑器可以运行在PC上,操作方便直观可靠,支持实时和离线调试;编辑器可以导出xml,bson等多种格式,更可以导出C++,C#源码,提供最高效率。运行时支持全平台,有C++和C#两个版本,原生支持Unity。
已被《天天炫斗》、《QQ飞车》、《全民突击》、《全民夺宝》、《九龙战》等游戏及其他更多预研项目使用。
https://github.com/TencentOpen/behaviac
14.现代构建系统 Typhoon Blade
Blade主要定位于linux下的大型C++项目,密切配合研发流程,比如单元测试,持续集成,覆盖率统计等。但像unix下的文本过滤程序一 样,保持相对的独立性,可以单独运行。目前重点支持i386/x86_64 Linux,未来可以考虑支持其他的类Unix系统。
特点:
自动分析头文件依赖关系,构建受影响的代码。
增量编译和链接,只构建因变更受影响而需要构建的。
自动计算库的间接依赖,库的作者只需要写出直接依赖,构建时自动检查所依赖的库是否需要重新构建。
在任意代码树的任意子目录下都能构建。
支持一次递归构建多个目录下的所有目标,也支持只构建任意的特定的目标。
无论构建什么目标,这些目标所依赖的目标也会被自动连坐更新。
内置 debug/release 两种构建类型。
彩色高亮构建过程中的错误信息。
支持ccache
支持distcc
支持基于构建多平台目标
支持构建时选择编译器(不同版本的gcc,clang等)
支持编译protobuf,lex,yacc,swig
支持自定义规则
支持测试,在命令行跑多个测试
支持并行测试(多个测试进程并发运行)
支持增量测试(无需重新运行的测试程序自动跳过)
集成gperftools,自动检测测试程序的内存泄露
构建脚本 vim 语法高亮
svn 式的子命令命令行接口。
支持 bash 命令行补全
用 Python 编写,无需编译,直接安装使用。
彻底避免以下问题:
头文件更新,受影响的模块没有重新构建。
被依赖的库需要更新,而构建时没有被更新,比如某子目录依赖遥远的某外部目录的代码,我在这个目录构建,外部目录的代码会被自动检查是否也需要重新构建。
https://github.com/chen3feng/typhoon-blade
15.RapidJSONC++的JSON开发包
Rapidjson 是一个 C++ 的快速 JSON 解析器和生成器,使用 SAX/DOM 风格的 API 设计。
https://github.com/miloyip/rapidjson
更多请自行查看:http://alloyteam.github.io/
----------------------------------------------------------------------------------------------------------------
新浪:WeiBohttps://github.com/weibocom
1.分布式缓存服务器 memcachedb
memcachedb是 一个由新浪网的开发人员开放出来的开源项目,给memcached分布式缓存服务器添加了Berkeley DB的持久化存储机制和异步主辅复制机制,让memcached具备了事务恢复能力、持久化能力和分布式复制能力,非常适合于需要超高性能读写速度,但是 不需要严格事务约束,能够被持久化保存的应用场景,例如memcachedb被应用在新浪博客上面。
https://github.com/stvchu/memcachedb
2.动态流量管理方案 Upsync
Upsync,微博开源基于Nginx容器动态流量管理方案 。Nginx 以其超高的性能与稳定性,在业界获得了广泛的使用,微博的七层就大量使用了 Nginx 。结合 Nginx 的健康检查模块,以及动态 reload 机制,可以近乎无损的服务的升级上线与扩容。这个时候扩容的频次比较低,大多数情况下是有计划的扩容。Upsync,开发了模块 nginx-upsync-module,它的功能是拉取 consul 的后端 server 的列表,并更新 Nginx 的路由信息。此模块不依赖于任何第三方模块。consul 作为 Nginx 的 db,利用 consul 的 KV 服务,每个 Nginx work 进程独立的去拉取各个 upstream 的配置,并更新各自的路由。
https://github.com/weibocom/nginx-upsync-module
3.高性能的内核 Socket 实现 Fastsocket
Fastsocket 是一个高扩展性的 Socket 以及 Linux 内核的底层网络实现。可以在多核机器上提供极好的性能,此外使用和维护还非常简单。目前该项目已经在新浪的生产环境中使用。该项目由清华大学和新浪网联合组成的 Fastos 团队开发,该团队的使命是提升 Linux 内核的效率。Fastsocket 目前已经使用在新浪微博的生产环境上,主要用于提供负载均衡服务的 HAProxy,线上实际性能提升一倍,从2014年3月份稳定运行至今,预计2014年底完成负载均衡全部集群的 Fastsocket 升级。Fastsocket 完全兼容 BSD Socket API,现有各类基于 Socket 的网络应用可以直接使用 Fastsockt。目前经过兼容测试的常用服务软件有:HAProxy、Nginx、Lighttpd、Redis 和 Memcached。
https://github.com/fastos/fastsocket
4.轻量级 RPC 框架 Motan
Motan 是一套高性能、易于使用的分布式远程服务调用(RPC)框架。
功能
支持通过spring配置方式集成,无需额外编写代码即可为服务提供分布式调用能力。
支持集成consul、zookeeper等配置服务组件,提供集群环境的服务发现及治理能力。
支持动态自定义负载均衡、跨机房流量调整等高级服务调度能力。
基于高并发、高负载场景进行优化,保障生产环境下RPC服务高可用。
https://github.com/weibocom/motan
5.TCP 性能剖析工具 Tcpdive
Tcpdive 是 TCP 性能剖析工具,主要特性:
更多 TCP 内部性能信息
定量评估 TCP 性能改进
描述在 TCP 层的 HTTP 处理,依赖于 HTTP Apps
容易部署,使用友好
Tcpdive 已经在新浪的生产环境上部署使用:
提高微博图片服务质量
提高微博视频服务质量
在有线和无线网络中比较 TCP 性能
记录不同应用的 TCP 流量
https://github.com/fastos/tcpdive
6.PHP框架 Yaf
Yaf是一个C语言编写的PHP框架,Yaf 的特点:
用C语言开发的PHP框架, 相比原生的PHP, 几乎不会带来额外的性能开销.
所有的框架类, 不需要编译, 在PHP启动的时候加载, 并常驻内存.
更短的内存周转周期, 提高内存利用率, 降低内存占用率.
灵巧的自动加载. 支持全局和局部两种加载规则, 方便类库共享.
高性能的视图引擎.
高度灵活可扩展的框架, 支持自定义视图引擎, 支持插件, 支持自定义路由等等.
内建多种路由, 可以兼容目前常见的各种路由协议.
强大而又高度灵活的配置文件支持. 并支持缓存配置文件, 避免复杂的配置结构带来的性能损失.
在框架本身,对危险的操作习惯做了禁止.
更快的执行速度, 更少的内存占用.
----------------------------------------------------------------------------------------------------------------
小米:XiaoMihttps://github.com/XiaoMi
1.分布式的发布和监控系统 Minos
Minos 是小米公司开发的一个分布式的发布和监控系统。最初是小米开发的用来在 Hadoop 和 ZooKeeper 集群上发布和管理的工具。Minos 可轻松扩展来支持其他的系统,目前已经支持包括 HDFS、YARN 和 Impala 。
https://github.com/XiaoMi/minos
2.互联网企业级监控系统 OpenFalcon
Open-Falcon 是小米运维部开源的一款互联网企业级监控系统解决方案.
监控系统是整个运维环节,乃至整个产品生命周期中最重要的一环,事前及时预警发现故障,事后提供翔实的数据用于追查定位问题。监控系统作为一个成熟的运维产品,业界有很多开源的实现可供选择。当公司刚刚起步,业务规模较小,运维团队也刚刚建立的初期,选择一款开源的监控系统,是一个省时省力,效率最高的方案。之后,随着业务规模的持续快速增长,监控的对象也越来越多,越来越复杂,监控系统的使用对象也从最初少数的几个SRE,扩大为更多的DEVS,SRE。这时候,监控系统的容量和用户的“使用效率”成了最为突出的问题。
监控系统业界有很多杰出的开源监控系统。我们在早期,一直在用zabbix,不过随着业务的快速发展,以及互联网公司特有的一些需求,现有的开源的监控系统在性能、扩展性、和用户的使用效率方面,已经无法支撑了。
因此,我们在过去的一年里,从互联网公司的一些需求出发,从各位SRE、SA、DEVS的使用经验和反馈出发,结合业界的一些大的互联网公司做监控,用监控的一些思考出发,设计开发了小米的监控系统:Open-Falcon。
Highlights and features
- 数据采集免配置:agent自发现、支持Plugin、主动推送模式
- 容量水平扩展:生产环境每秒50万次数据收集、告警、存储、绘图,可持续水平扩展。
- 告警策略自发现:Web界面、支持策略模板、模板继承和覆盖、多种告警方式、支持回调动作。
- 告警设置人性化:支持最大告警次数、告警级别设置、告警恢复通知、告警暂停、不同时段不同阈值、支持维护周期,支持告警合并。
- 历史数据高效查询:秒级返回上百个指标一年的历史数据。
- Dashboard人性化:多维度的数据展示,用户自定义Dashboard等功能。
- 架构设计高可用:整个系统无核心单点,易运维,易部署。
https://github.com/XiaoMi/open-falcon
3.物联网框架 IoT.js
IoT.js 旨在为物联网提供一个基于 Web 技术的可相互操作的服务平台。IoT.js 的目标是要在资源受限的设备上良好运行,例如只有几 KB 的 RAM。所以它支持广泛的物联。
----------------------------------------------------------------------------------------------------------------
豆瓣 DouBanhttps://github.com/douban
1.分布式计算框架 DPark
DPark 是 Spark 的 Python 克隆,是一个Python实现的分布式计算框架,可以非常方便地实现大规模数据处理和迭代计算。 DPark 由豆瓣实现,目前豆瓣内部的绝大多数数据分析都使用DPark 完成,正日趋完善。
https://github.com/douban/dpark
2.iOS/Mac 音频播放器 DOUAudioStreamer
DOUAudioStreamer 是 iOS 和 Mac 的基于核心音频的流媒体音频播放器。
https://github.com/douban/DOUAudioStreamer
3.CODE 豆瓣代码托管系统
Douban CODE 是豆瓣开发的一个基于git版本控制系统的协作平台。
CODE —— C: Community O: Original D: Developer E: Eldamar
目前 CODE 仅开放了一个框架,支持:
clone & push project
create project
create user
准备环境
MySQL
Memcached
Python >= 2.7
pip >= 1.4.1
virtualenv
git
----------------------------------------------------------------------------------------------------------------
网易 NetEasehttps://github.com/netease
1.分布式TCP压力测试工具 tcpcopy
tcpcopy是一种应用请求复制(基于tcp的packets)工具,其应用领域较广,目前已经应用于国内各大互联网公司。
总体说来,tcpcopy主要有如下功能:
1)分布式压力测试工具,利用在线数据,可以测试系统能够承受的压力大小(远比ab压力测试工具真实地多),也可以提前发现一些bug
2)普通上线测试,可以发现新系统是否稳定,提前发现上线过程中会出现的诸多问题,让开发者有信心上线
3)对比试验,同样请求,针对不同或不同版本程序,可以做性能对比等试验
4)利用多种手段,构造无限在线压力,满足中小网站压力测试要求
5)实战演习(架构师必备)https://github.com/session-replay-tools/tcpcopy
2.桌面应用软件的跨平台解决方案 heX
heX 是网易有道搜索部门开发的一个允许你采用前端技术(HTML,CSS,JavaScript)开发桌面应用软件的跨平台解决方案,基于HTML5 +node.js,类似appjs。是你开发桌面应用的一种新的选择,意在解决传统桌面应用开发中繁琐的UI和交互开发工作,使其变的简单而高效。特别适合重UI,重交互的桌面应用软件。
https://github.com/netease-youdao/hex
https://github.com/netease-youdao/hex-samples
3.Android性能测试工具 Emmagee
Emmagee是监控指定被测应用在使用过程中占用机器的CPU、内存、流量资源的性能测试小工具。
支持SDK:Android2.2以及以上版本
Emmagee功能介绍
1、检测当前时间被测应用占用的CPU使用率以及总体CPU使用量
2、检测当前时间被测应用占用的内存量,以及占用的总体内存百分比,剩余内存量
3、检测应用从启动开始到当前时间消耗的流量数
4、测试数据写入到CSV文件中,同时存储在手机中
5、可以选择开启浮窗功能,浮窗中实时显示被测应用占用性能数据信息
6、在浮窗中可以快速启动或者关闭手机的wifi网络
https://github.com/NetEase/Emmagee
4.基于udp的请求复制工具 udpcopy
udpcopy用来解决udp应用的一个开源软件,与tcpcopy同属于xcopy系列,可以导入udp流量到测试系统中去,这样就可以有效地对系统进行各种测试,比如压力测试,冒烟测试等等。
https://github.com/wangbin579/udpcopy
5.实时编辑刷新的前端服务器 Puer(推荐:browser-synchttps://github.com/BrowserSync/browser-sync)
简而言之,Puer是一个可以实时编辑刷新的前端服务器。特性一览:
提供一个当前或指定路径的静态服务器
所有浏览器的实时刷新:编辑css实时更新(update)页面样式,其它文件则重载(reload)页面
提供简单熟悉的mock请求的配置功能,并且配置也是自动更新。
可用作代理服务器,调试开发既有服务器的页面,可与mock功能配合使用
集成了weinre,并提供二维码地址,方便移动端的调试
可以作为connect中间件使用(前提是后端为nodejs,否则请使用代理模式)
--------------------------阿里巴巴开源的好软件太多,请自行选择所需,我列几个我们用的-------------------------
阿里巴巴Alibabahttps://github.com/alibaba/https://github.com/thx
1.分布式key/value存储系统 Tair
Tair是由淘宝网自主开发的Key/Value结构数据存储系统,在淘宝网有着大规模的应用。您在登录淘宝、查看商品详情页面或者在淘江湖和好友“捣浆糊”的时候,都在直接或间接地和Tair交互。Tair是一个Key/Value结构数据的解决方案,它默认支持基于内存和文件的两种存储方式,分别和我们通常所说的缓存和持久化存储对应。
Tair除了普通Key/Value系统提供的功能,比如get、put、delete以及批量接口外,还有一些附加的实用功能,使得其有更广的适用场景,包括:
Version支持
原子计数器
Item支持
https://github.com/alibaba/tair
2.TFS分布式文件系统
TFS(Taobao FileSystem)是一个高可扩展、高可用、高性能、面向互联网服务的分布式文件系统,其设计目标是支持海量的非结构化数据。
目前,国内自主研发的文件系统可谓凤毛麟角。淘宝在这一领域做了有效的探索和实践,Taobao File System(TFS)作为淘宝内部使用的分布式文件系统,针对海量小文件的随机读写访问性能做了特殊优化,承载着淘宝主站所有图片、商品描述等数据存储。
https://github.com/alibaba/tfs
3.消息中间件 RocketMQ
https://github.com/alibaba/RocketMQ
https://github.com/alibaba/RocketMQ-docs
4.SeaJS 模块加载框架
Sea.JS 是一个遵循CommonJS规范的模块加载框架,可用来轻松愉悦地加载任意 JavaScript 模块。SeaJS 支持的标准模块遵循 Modules/Wrappings 规范的 define 形式,可运行于 Web 浏览器以及 node.JS 等环境中。
https://github.com/seajs/seajs
5.接口文档管理工具 RAP
RAP通过GUI工具帮助WEB工程师更高效的管理接口文档,同时通过分析接口结构自动生成Mock数据、校验真实接口的正确性,使接口文档成为开发流程中的强依赖。有了结构化的API数据,RAP可以做的更多,而我们可以避免更多重复劳动。
6.淘宝Web服务器 Tengine
Tengine是由淘宝网发起的Web服务器项目。它在Nginx的基础上,针对大访问量网站的需求,添加了很多高级功能和特性。Tengine的性能和稳定性已经在大型的网站如淘宝网,天猫商城等得到了很好的检验。它的最终目标是打造一个高效、稳定、安全、易用的Web平台。
以下沿引项目主页上的特性介绍:
继承Nginx-1.2.8的所有特性,100%兼容Nginx的配置;
动态模块加载(DSO)支持。加入一个模块不再需要重新编译整个Tengine;
更多负载均衡算法支持。如会话保持,一致性hash等;
输入过滤器机制支持。通过使用这种机制Web应用防火墙的编写更为方便;
动态脚本语言Lua支持。扩展功能非常高效简单;
支持管道(pipe)和syslog(本地和远端)形式的日志以及日志抽样;
组合多个CSS、JavaScript文件的访问请求变成一个请求;
可以对后端的服务器进行主动健康检查,根据服务器状态自动上线下线;
自动根据CPU数目设置进程个数和绑定CPU亲缘性;
监控系统的负载和资源占用从而对系统进行保护;
显示对运维人员更友好的出错信息,便于定位出错机器;
更强大的防攻击(访问速度限制)模块;
更方便的命令行参数,如列出编译的模块列表、支持的指令等;
可以根据访问文件类型设置过期时间;
https://github.com/alibaba/tengine
7.阿里巴巴分布式数据库同步系统 otter
otter 基于数据库增量日志解析,准实时同步到本机房或异地机房的mysql/oracle数据库. 一个分布式数据库同步系统。
https://github.com/alibaba/otter
8.Taobao Open API 客户端 TOP (有Net版)
TOP 是Taobao Open API客户端。
APIs
User
taobao.user.buyer.get 查询买家信息API
taobao.user.get 获取单个用户信息
taobao.user.seller.get 查询卖家用户信息
taobao.users.get 获取多个用户信息
Category (Working)
taobao.itemcats.authorize.get 查询商家被授权品牌列表和类目列表
taobao.itemcats.get 获取后台供卖家发布商品的标准商品类目
taobao.itemcats.increment.get 增量获取后台类目数据
taobao.itemprops.get 获取标准商品类目属性
taobao.itempropvalues.get 获取标准类目属性值
taobao.topats.itemcats.get 全量获取后台类目数据
Shop
taobao.shop.get (白名单用户才能调用)
9.模拟数据生成器 Mock.js
Mock.js 是一款模拟数据生成器,旨在帮助前端攻城师独立于后端进行开发,帮助编写单元测试。提供了以下模拟功能:
根据数据模板生成模拟数据
模拟 Ajax 请求,生成并返回模拟数据
基于 HTML 模板生成模拟数据
https://github.com/nuysoft/Mock
10.服务框架Dubbo
Dubbo 是阿里巴巴公司开源的一个高性能优秀的服务框架,使得应用可通过高性能的 RPC 实现服务的输出和输入功能,可以和Spring框架无缝集成。
主要核心部件:
Remoting:网络通信框架,实现了 sync-over-async 和 request-response 消息机制.
RPC:一个远程过程调用的抽象,支持负载均衡、容灾和集群功能
Registry:服务目录框架用于服务的注册和服务事件发布和订阅
https://github.com/alibaba/dubbo
Nginx7天入门:https://github.com/taobao/nginx-book
----------------------------------------------------------------------------------------------------------------
其他项目:
1.去哪儿:
MySQL自动化运维工具 Inception
MySQL语句的审核,在业界都已经基本被认同了,实际上也是对MySQL语句写法的统一化,标准化,而之前的人工审核,针对标准这个问题其实是很 吃力的,标准越多,DBA越累,开发也越累。 那么在这个都追求自动化运维的时代,审核也必须要跟上步伐,因此Inception诞生了。而Inception可以做的工作远不止是一个自动化审核工 具,同时还具备执行,生成对影响数据的回滚语句(类似闪回的功能),这样一条龙服务的工具,将会给DBA的工作带来翻天覆地的变化,DBA从此就从繁重的 审核、登上去执行,出错了很难回滚(如果提前没有备份的话)的被动局面解放了出来,突然发现,做DBA原来可以这么轻松,工作可以不饱和了,那就有更多的 自由时间学习、进一步向自动化运维平台的实现等更智能化的方向去发展,是具有里程碑意义的。
https://github.com/mysql-inception/inception
实时应用监控平台 CAT
CAT 由大众点评开发的,基于 Java 的实时应用监控平台,包括实时应用监控,业务监控。
CAT 支持的监控消息类型包括:
Transaction适合记录跨越系统边界的程序访问行为,比如远程调用,数据库调用,也适合执行时间较长的业务逻辑监控,Transaction用来记录一段代码的执行时间和次数。
Event用来记录一件事发生的次数,比如记录系统异常,它和transaction相比缺少了时间的统计,开销比transaction要小。
Heartbeat 表示程序内定期产生的统计信息, 如CPU%, MEM%, 连接池状态, 系统负载等。
Metric用于记录业务指标、指标可能包含对一个指标记录次数、记录平均值、记录总和,业务指标最低统计粒度为1分钟。
Trace用于记录基本的trace信息,类似于log4j的info信息,这些信息仅用于查看一些相关信息
消息树
CAT监控系统将每次URL、Service的请求内部执行情况都封装为一个完整的消息树、消息树可能包括Transaction、Event、Heartbeat、Metric和Trace信息。
https://github.com/dianping/cat
3.搜狐:
Redis云管理平台 CacheCloud
CacheCloud提供一个Redis云管理平台:实现多种类型(Redis Standalone、Redis Sentinel、Redis Cluster)自动部署、解决Redis实例碎片化现象、提供完善统计、监控、运维功能、减少开发人员的运维成本和误操作,提高机器的利用率,提供灵活的伸缩性,提供方便的接入客户端。
https://github.com/sohutv/cachecloud
基于 MySQL 的数据库中间件 SOHU-DBProxy
SOHU-DBProxy 是由 搜狐 数据库团队开发维护的一个基于MySQL协议的数据中间层项目。它在MySQL官方推出的MySQL-Proxy0.8.3版本的基础上, 修改了大量bug,添加了很多功能特性。现在已经在sohu的多个业务线上使用
DBProxy 主要功能:
1 即使在同一个连接(只要不在同一个事务中)也能连接复用
2 负载均衡提高读性能,支持动态扩展
3 动态添加的SQL审核和过滤。能够统计的SQL长时间运行影响性能,并且阻止其运行
4 用户连接限制
5 自动摘除宕机的DB
6 读写分离(当前版本没有,代码和测试已经完成,没有合并到当前版本)
大众点评:https://github.com/dianping
相关推荐
想跟着大神走吗,想学习大神的步伐吗,想使自己的项目变得简单吗,那就看一看个大公司团队的代码吧,下面主要写的就是各大公司团队的开源地址,可以尽情的学习,现在是单纯的中国的团队,有时间把外国的团队补上,欢迎持续...
整理大牛分享文档如下,一线开发架构,技术文档 网易蜂巢公有容器云架构之路 新浪微博redis优化历程 微博Cache架构设计实践 Go在大数据开发中的经验总结 基于Go构建滴滴核心业务平台的实践 京东分布式K-V存储设计与...
全网最全的第三方图片API图床聚合图床是一个第三方图片服务器图片上传存储工具,为个人网站运营...新浪 腾讯 一流以下API葫芦侠百度小米今日头条悟空问答新浪腾讯哔哩哔哩中关村网易阿里巴巴奇虎360稿定设计58同城搜狐
内容概要:0欧姆电阻在电路设计中有多种重要作用。它不仅可以在PCB上为调试提供便利,还能用于跳线、替代不确定参数的元件以及测量电路的耗电流。此外,在布线困难时可作为应急解决方案。在高频信号环境下,它能充当电感或电容,有助于解决EMC问题。对于地线处理,0欧姆电阻可用于实现单点接地,避免模拟地和数字地直接大面积相连带来的互相干扰问题。在跨接电流回路方面,它可以提供较短的回流路径,减少干扰。同时,0欧姆电阻还适用于配置电路,防止用户误操作跳线或拨码开关,并且在布线、调试、测试、温度补偿等方面有着广泛应用,尤其在EMC对策中表现突出。; 适合人群:电子工程师、硬件设计师以及对电路设计感兴趣的爱好者。; 使用场景及目标:①在PCB设计阶段,利用0欧姆电阻进行灵活的电路调试与优化;②解决高频信号下的EMC问题,确保电路稳定性和抗干扰能力;③实现单点接地,避免不同地线间的相互干扰;④提高电路的可维护性和可靠性,降低生产成本。; 阅读建议:本文详细介绍了0欧姆电阻在电路设计中的多种应用场景,读者应结合具体项目需求来理解和运用这些知识,特别是在面对复杂的电路布局和电磁兼容性问题时,要充分考虑0欧姆电阻的独特优势。
mysql安装教程 一个基于SpringBoot+Mybatis+Mysql+Html实现的页面登录案例.
在探索智慧旅游的新纪元中,一个集科技、创新与服务于一体的整体解决方案正悄然改变着我们的旅行方式。智慧旅游,作为智慧城市的重要分支,旨在通过新一代信息技术,如云计算、大数据、物联网等,为游客、旅游企业及政府部门提供无缝对接、高效互动的旅游体验与管理模式。这一方案不仅重新定义了旅游行业的服务标准,更开启了旅游业数字化转型的新篇章。 智慧旅游的核心在于“以人为本”,它不仅仅关注技术的革新,更注重游客体验的提升。从游前的行程规划、信息查询,到游中的智能导航、个性化导览,再到游后的心情分享、服务评价,智慧旅游通过构建“一云多屏”的服务平台,让游客在旅游的全过程中都能享受到便捷、个性化的服务。例如,游客可以通过手机APP轻松定制专属行程,利用智能语音导览深入了解景点背后的故事,甚至通过三维GIS地图实现虚拟漫游,提前感受目的地的魅力。这些创新服务不仅增强了游客的参与感和满意度,也让旅游变得更加智能化、趣味化。 此外,智慧旅游还为旅游企业和政府部门带来了前所未有的管理变革。通过大数据分析,旅游企业能够精准把握市场动态,实现旅游产品的精准营销和个性化推荐,从而提升市场竞争力。而政府部门则能利用智慧旅游平台实现对旅游资源的科学规划和精细管理,提高监管效率和质量。例如,通过实时监控和数据分析,政府可以迅速应对旅游高峰期的客流压力,有效预防景区超载,保障游客安全。同时,智慧旅游还促进了跨行业、跨部门的数据共享与协同合作,为旅游业的可持续发展奠定了坚实基础。总之,智慧旅游以其独特的魅力和无限潜力,正引领着旅游业迈向一个更加智慧、便捷、高效的新时代。
内容概要:本文详细介绍了如何通过PLC程序实现模拟量滤波防抖,确保电流、电压和热电阻等信号的准确采集。核心算法采用掐头去尾平均法,即去掉一组数据中的最大值和最小值后取剩余数据的平均值,以消除因环境干扰导致的异常值。文中提供了详细的代码实现步骤,包括数据结构定义、主程序逻辑、间接寻址方法以及参数配置。此外,还讨论了如何通过死区判断和上升率限制进一步优化滤波效果,提高系统的稳定性和响应速度。 适合人群:从事工业自动化领域的工程师和技术人员,尤其是熟悉PLC编程和模拟量信号处理的专业人士。 使用场景及目标:适用于需要高精度模拟量信号采集的工业控制系统,如电力、化工、制造业等领域。主要目标是提升数据采集的准确性和稳定性,减少外部干扰带来的误差。 其他说明:文中提供的代码示例基于西门子S7-1200/1500系列PLC,但相关原理和方法同样适用于其他品牌的PLC。建议在实际应用中根据具体情况调整参数设置,以达到最佳效果。
内容概要:本文详细介绍了大模型的发展现状与未来趋势,尤其聚焦于DeepSeek这一创新应用。文章首先回顾了人工智能的定义、分类及其发展历程,指出从摩尔定律到知识密度提升的转变,强调了大模型知识密度的重要性。随后,文章深入探讨了DeepSeek的发展路径及其核心价值,包括其推理模型、思维链技术的应用及局限性。此外,文章展示了DeepSeek在多个行业的应用场景,如智能客服、医疗、金融等,并分析了DeepSeek如何赋能个人发展,具体体现在公文写作、文档处理、知识搜索、论文写作等方面。最后,文章展望了大模型的发展趋势,如通用大模型与垂域大模型的协同发展,以及本地部署小模型成为主流应用渠道的趋势。 适合人群:对人工智能和大模型技术感兴趣的从业者、研究人员及希望利用DeepSeek提升工作效率的个人用户。 使用场景及目标:①了解大模型技术的最新进展和发展趋势;②掌握DeepSeek在不同领域的具体应用场景和操作方法;③学习如何通过DeepSeek提升个人在公文写作、文档处理、知识搜索、论文写作等方面的工作效率;④探索大模型在特定行业的应用潜力,如医疗、金融等领域。 其他说明:本文不仅提供了理论知识,还结合实际案例,详细介绍了DeepSeek在各个场景下的应用方式,帮助读者更好地理解和应用大模型技术。同时,文章也指出了当前大模型技术面临的挑战,如模型的局限性和数据安全问题,鼓励读者关注技术的持续改进和发展。
内容概要:本文详细比较了四种基于最小二乘支持向量机(LSSVM)的短期电力负荷预测算法:原始LSSVM、SSA-LSSVM、VMD-LSSVM以及VMD-SSA-LSSVM。通过对这些算法的具体实现和性能评估,展示了每种方法的优势和局限性。实验结果显示,随着算法复杂度的增加,预测精度显著提高,特别是VMD-SSA-LSSVM在RMSE和MAPE等评价指标上表现出色,达到了接近真实值的预测效果。然而,这也伴随着计算成本的大幅上升。 适合人群:从事电力系统调度、数据分析、机器学习领域的研究人员和技术人员。 使用场景及目标:适用于需要进行短期电力负荷预测的研究项目或实际应用,旨在提高预测准确性,减少因天气变化、节假日等因素带来的不确定性影响。 其他说明:文中提供了详细的Python代码片段,帮助读者理解和复现相关算法。同时提醒,在选择模型时需综合考虑预测精度与计算效率之间的平衡。
内容概要:本文详细介绍了一种基于Python和Django框架构建的电影推荐系统。该系统不仅涵盖了用户端的基本功能(如登录、搜索、浏览、评论、评分、收藏),还包括管理端的增删改查操作。后端使用Python和Django框架,结合MySQL数据库,前端采用HTML、CSS和JavaScript实现交互界面。推荐算法方面,利用机器学习和深度学习技术,特别是协同过滤和内容过滤相结合的方式,确保推荐结果的多样性和精准性。此外,文中还讨论了一些常见的技术挑战及其解决方案,如用户冷启动问题、前端交互效果优化、数据库配置错误等。 适合人群:具有一定编程经验的Web开发者和技术爱好者,尤其是对Django框架、机器学习和深度学习感兴趣的读者。 使用场景及目标:适用于希望深入了解并实现一个完整的电影推荐系统的个人或团队。主要目标是掌握如何整合前后端技术,运用机器学习和深度学习算法提升用户体验。 其他说明:文中提供了大量代码片段和实践经验,帮助读者更好地理解和实施各个技术细节。同时强调了系统优化的重要性,如通过Redis缓存提高查询效率,使用AJAX实现无缝加载等。
内容概要:本文探讨了基于MATLAB平台的V2G(车辆到电网)光储充一体化微网多目标优化调度策略。该策略旨在通过建立光伏微网中以经济性和并网负荷波动率为双目标的蓄电池和V2G协同调度模型,利用粒子群优化(PSO)算法求解模型。文中详细介绍了模型搭建、核心算法实现、运行模式对比以及算例分析。结果显示,V2G模式能够显著提高系统的经济性和稳定性,减少蓄电池的需求量,优化三方(电网、微网调度中心、电动汽车用户)的利益。 适合人群:从事电力系统优化、智能电网研究的专业人士,尤其是对MATLAB编程有一定基础的研究人员和技术人员。 使用场景及目标:适用于需要优化光储充一体化微网调度策略的研究机构和企业。目标是在保证系统经济运行的同时,稳定并网负荷,减少波动,从而提升整体性能。 其他说明:代码注释详尽,包含并行计算框架、电池寿命模型和可视化模块等多个亮点。通过实际案例验证,证明了V2G模式的有效性。
内容概要:本文详细介绍了三菱FX3U五轴钻孔机的PLC程序和威纶通触摸屏配置,涵盖梯形图编程、IO分配表、参数设置、自动补偿机制以及异常处理等方面。文章通过具体的代码实例展示了如何实现加工循环、参数动态调整、安全防护等功能,并分享了调试过程中遇到的问题及解决方案。此外,还提供了完整的工程文件,便于读者快速理解和应用。 适合人群:从事工业自动化领域的工程师和技术人员,尤其是对三菱PLC和威纶通触摸屏有一定了解的人群。 使用场景及目标:帮助读者掌握五轴钻孔机的控制系统设计方法,提高编程效率和设备稳定性,适用于类似机床控制系统的开发和维护。 其他说明:文中提到的许多技巧和注意事项来源于作者的实际工作经验,对于初学者来说非常有价值。同时,提供的完整工程文件可以作为参考模板,节省开发时间和成本。
matlab开发相关资源
a383d-main.zip
智慧小区解决方案.pptx
Seafile 基于 Qt 的 GUI 客户端
内容概要:本文详细介绍了无人驾驶车辆在局部路径规划中的两种经典算法——Astar和RRT的Matlab实现及其优化。首先,文章解释了Astar算法的核心思想,即通过启发函数进行路径搜索,并针对U型障碍等问题提出了双向搜索策略和动态权重调节。接着,文章探讨了RRT算法的特点,如随机生长特性和路径平滑处理,解决了路径过于曲折的问题。此外,还提出了一种混合算法HRA*,通过改进OPEN集的维护方式,提高了算法效率。最后,通过对不同场景的仿真测试,展示了两种算法在复杂环境中的性能差异,并提供了详细的调参经验和优化建议。 适合人群:对无人驾驶技术和路径规划感兴趣的科研人员、工程师以及有一定编程基础的学习者。 使用场景及目标:适用于研究无人驾驶车辆在复杂环境中的路径规划问题,帮助研究人员理解和优化Astar和RRT算法,提高路径规划的效率和准确性。 其他说明:文中附有大量Matlab代码片段和仿真结果图表,便于读者理解和复现实验。同时,提供了关于栅格地图分辨率、车辆动力学参数等方面的实用建议,有助于实际系统的部署和优化。
选择
内容概要:本文详细介绍了西门子200Smart PLC与维纶触摸屏在某疫苗车间控制系统的具体应用,涵盖配液、发酵、纯化及CIP清洗四个主要工艺环节。文中不仅展示了具体的编程代码和技术细节,还分享了许多实战经验和调试技巧。例如,在配液罐中,通过模拟量处理确保温度和液位的精确控制;发酵罐部分,着重讨论了PID参数整定和USS通讯控制变频器的方法;纯化过程中,强调了双PID串级控制的应用;CIP清洗环节,则涉及复杂的定时器逻辑和阀门联锁机制。此外,文章还提到了一些常见的陷阱及其解决方案,如通讯干扰、状态机切换等问题。 适合人群:具有一定PLC编程基础的技术人员,尤其是从事工业自动化领域的工程师。 使用场景及目标:适用于需要深入了解PLC与触摸屏集成控制系统的工程师,帮助他们在实际项目中更好地理解和应用相关技术和方法,提高系统的稳定性和可靠性。 其他说明:文章提供了大量实战经验和代码片段,有助于读者快速掌握关键技术点,并避免常见错误。同时,文中提到的一些优化措施和调试技巧对提升系统性能非常有帮助。
Prosemirror 是一个基于 ContentEditable 的所见即所得 HTML 编辑器,功能强大,支持协作编辑和自定义文档模式Prosemirror 库由多个单独的模块