influxdata监控系统介绍

koyo 发表了文章 • 0 个评论 • 799 次浏览 • 2016-09-12 20:03 • 来自相关话题

influxdata是一个强大的实时监控系统,分为4个部分,系统架构图如下: 





Telegraf

Telegraf负责收集监控数据,并将数据输出到influxDB数据库,它支持多种类型的数据输入,比如httpjson、mysql、rabbitMQ等等。
 

InfluxDB





InfluxDB 是一个开源分布式时序、事件和指标数据库。使用 Go 语言编写,无需外部依赖。其设计目标是实现分布式和水平伸缩扩展。
 

Chronograf





从InfluxDB时间序列数据的数据可视化工具,负责从InfluxDB收集数据,并将数据图表以web的形式发布。
 

Kapacitor





Kapacitor是InfluxDB的数据处理引擎,主要作用是时间序列数据处理、监视和警报。
 

Enterprise Manager

Enterprise Manager是正在开发的UI系统,用于更加广泛的图形展示。

InfluxData平台是第一个专用,端到端解决方案收集、存储、可视化和警报在时间序列数据规模。基于堆栈,所有组件平台的设计无缝地协同工作。TICK堆栈是什么?这是influxdata的愿景管理时间序列数据的完整的数据平台。 查看全部
influxdata是一个强大的实时监控系统,分为4个部分,系统架构图如下: 
influxdata.png


Telegraf


Telegraf负责收集监控数据,并将数据输出到influxDB数据库,它支持多种类型的数据输入,比如httpjson、mysql、rabbitMQ等等。
 


InfluxDB


influxdb.png

InfluxDB 是一个开源分布式时序、事件和指标数据库。使用 Go 语言编写,无需外部依赖。其设计目标是实现分布式和水平伸缩扩展。
 


Chronograf


chronrogf.png

从InfluxDB时间序列数据的数据可视化工具,负责从InfluxDB收集数据,并将数据图表以web的形式发布。
 


Kapacitor


kapacitor.png

Kapacitor是InfluxDB的数据处理引擎,主要作用是时间序列数据处理、监视和警报。
 


Enterprise Manager


Enterprise Manager是正在开发的UI系统,用于更加广泛的图形展示。

InfluxData平台是第一个专用,端到端解决方案收集、存储、可视化和警报在时间序列数据规模。基于堆栈,所有组件平台的设计无缝地协同工作。TICK堆栈是什么?这是influxdata的愿景管理时间序列数据的完整的数据平台。
tick-stack-grid.jpg

Docker的Web Ui管理和监控系统海鸥

OpenSkill 发表了文章 • 0 个评论 • 1356 次浏览 • 2016-08-23 00:33 • 来自相关话题

功能介绍

Seagull是一套友好的Web用户界面,用来全面的管理和监控Docker管理系统。
易于安装和Docker容器内卸载一键启动/停止/删除容器和image超快速(<10ms)的搜索和过滤支持多主机管理和监控国际化包括英语,中国,德国和法国
欲了解更多信息,请访问dockerseagull.com ,看三分钟的视频和官方的幻灯片 。
 

安装

安装非常简单,一条命令搞定,就是so easy!docker run -d -p 10086:10086 -v /var/run/docker.sock:/var/run/docker.sock tobegit3hub/seagull 或者运行:docker-compose up -d然后直接访问http://127.0.0.1:10086监控你的Docker容器;对于boot2docker用户,请运行boot2docker ip找到真正的IP地址。
 

Web效果图










多主机

海鸥支持监视多个服务器。 请确保你启动Docker的守护进程是这个样子 docker -H tcp://0.0.0.0:2375 -H unix:///var/run/docker.sock -api-enable-cors=true -d

参与开发

海鸥是用Go和JavaScript实现的,使用了Beego、AngularJS、Bootstrap、Bower、JQuery和Docker等工具。你可以Fork这个项目并且按你的需求发送Pull-request。
配置Go路径然后尝试echo $GOPATHgo get github.com/astaxie/beegogo get github.com/beego/beegit clone https://github.com/tobegit3hub/seagull.git $GOPATH/src/github.com/tobegit3hub/seagull/go build seagull.go或者运行bee run seagull来调试./seagull或者运行sudo ./seagull来访问/var/run/docker.sock
更详细的海鸥设计和实施,还有非常好完善的帮助文档 。

注意

问题 #2表明,如果海鸥的IP和端口暴露每个人都可以访问您的Docker守护进程。 为了安全,你可以绑定到localhost来限制访问。
 
项目地址:https://github.com/tobegit3hub/seagull
  查看全部


功能介绍


Seagull是一套友好的Web用户界面,用来全面的管理和监控Docker管理系统。
  • 易于安装和Docker容器内卸载
  • 一键启动/停止/删除容器和image
  • 超快速(<10ms)的搜索和过滤
  • 支持多主机管理和监控
  • 国际化包括英语,中国,德国和法国

欲了解更多信息,请访问dockerseagull.com ,看三分钟的视频和官方的幻灯片
 


安装


安装非常简单,一条命令搞定,就是so easy!
docker run -d -p 10086:10086 -v /var/run/docker.sock:/var/run/docker.sock tobegit3hub/seagull 
或者运行:
docker-compose up -d
然后直接访问http://127.0.0.1:10086监控你的Docker容器;对于boot2docker用户,请运行boot2docker ip找到真正的IP地址。
 


Web效果图


docker_web_ui.png

DockerWebUI.png


多主机


海鸥支持监视多个服务器。 请确保你启动Docker的守护进程是这个样子
 docker -H tcp://0.0.0.0:2375 -H unix:///var/run/docker.sock -api-enable-cors=true -d 


参与开发


海鸥是用Go和JavaScript实现的,使用了Beego、AngularJS、Bootstrap、Bower、JQuery和Docker等工具。你可以Fork这个项目并且按你的需求发送Pull-request。
  • 配置Go路径然后尝试echo $GOPATH
  • go get github.com/astaxie/beego
  • go get github.com/beego/bee
  • git clone https://github.com/tobegit3hub/seagull.git $GOPATH/src/github.com/tobegit3hub/seagull/
  • go build seagull.go或者运行bee run seagull来调试
  • ./seagull或者运行sudo ./seagull来访问/var/run/docker.sock

更详细的海鸥设计和实施,还有非常好完善的帮助文档 。


注意


问题 #2表明,如果海鸥的IP和端口暴露每个人都可以访问您的Docker守护进程。 为了安全,你可以绑定到localhost来限制访问。
 
项目地址:https://github.com/tobegit3hub/seagull
 


php扩展谷歌JsonNet发布

chris 发表了文章 • 0 个评论 • 554 次浏览 • 2016-06-02 16:33 • 来自相关话题

就在昨天,六一儿童节,云智慧高级架构师Neeke把支持谷歌的JsonNet的php扩展模块封装开源了!
 
简单语法改进
Input (Jsonnet){
cocktails: {
// Ingredient quantities are in fluid ounces.
"Tom Collins": {
ingredients: [
{ kind: "Farmers Gin", qty: 1.5 },
{ kind: "Lemon", qty: 1 },
{ kind: "Simple Syrup", qty: 0.5 },
{ kind: "Soda", qty: 2 },
{ kind: "Angostura", qty: "dash" },
],
garnish: "Maraschino Cherry",
served: "Tall",
},
Manhattan: {
ingredients: [
{ kind: "Rye", qty: 2.5 },
{ kind: "Sweet Red Vermouth", qty: 1 },
{ kind: "Angostura", qty: "dash" },
],
garnish: "Maraschino Cherry",
served: "Straight Up",
},
}
}Output (JSON){
"cocktails": {

"Tom Collins": {
"ingredients": [
{ "kind": "Farmers Gin", "qty": 1.5 },
{ "kind": "Lemon", "qty": 1 },
{ "kind": "Simple Syrup", "qty": 0.5 },
{ "kind": "Soda", "qty": 2 },
{ "kind": "Angostura", "qty": "dash" }
],
"garnish": "Maraschino Cherry",
"served": "Tall"
},
"Manhattan": {
"ingredients": [
{ "kind": "Rye", "qty": 2.5 },
{ "kind": "Sweet Red Vermouth", "qty": 1 },
{ "kind": "Angostura", "qty": "dash" }
],
"garnish": "Maraschino Cherry",
"served": "Straight Up"
}
}
}Demo of PHP JsonNet::evaluateFile('bar_menu.1.jsonnet');

$Snippet = '
{
cocktails: {
// Ingredient quantities are in fluid ounces.
"Tom Collins": {
ingredients: [
{ kind: "Farmers Gin", qty: 1.5 },
{ kind: "Lemon", qty: 1 },
{ kind: "Simple Syrup", qty: 0.5 },
{ kind: "Soda", qty: 2 },
{ kind: "Angostura", qty: "dash" },
],
garnish: "Maraschino Cherry",
served: "Tall",
},
Manhattan: {
ingredients: [
{ kind: "Rye", qty: 2.5 },
{ kind: "Sweet Red Vermouth", qty: 1 },
{ kind: "Angostura", qty: "dash" },
],
garnish: "Maraschino Cherry",
served: "Straight Up",
},
}
}
';

var_dump(JsonNet::evaluateSnippet($Snippet));安装请参考我的实践文章:http://www.openskill.cn/article/373
 
项目地址:

Github:https://github.com/Neeke/Jsonnet-PHP
Pecl:  http://pecl.php.net/package/jsonnet 
Gitosc:  http://git.oschina.net/ciogao/Jsonnet-PHP 查看全部
就在昨天,六一儿童节,云智慧高级架构师Neeke把支持谷歌的JsonNet的php扩展模块封装开源了!
 
简单语法改进
Input (Jsonnet)
{
cocktails: {
// Ingredient quantities are in fluid ounces.
"Tom Collins": {
ingredients: [
{ kind: "Farmers Gin", qty: 1.5 },
{ kind: "Lemon", qty: 1 },
{ kind: "Simple Syrup", qty: 0.5 },
{ kind: "Soda", qty: 2 },
{ kind: "Angostura", qty: "dash" },
],
garnish: "Maraschino Cherry",
served: "Tall",
},
Manhattan: {
ingredients: [
{ kind: "Rye", qty: 2.5 },
{ kind: "Sweet Red Vermouth", qty: 1 },
{ kind: "Angostura", qty: "dash" },
],
garnish: "Maraschino Cherry",
served: "Straight Up",
},
}
}
Output (JSON)
{
"cocktails": {

"Tom Collins": {
"ingredients": [
{ "kind": "Farmers Gin", "qty": 1.5 },
{ "kind": "Lemon", "qty": 1 },
{ "kind": "Simple Syrup", "qty": 0.5 },
{ "kind": "Soda", "qty": 2 },
{ "kind": "Angostura", "qty": "dash" }
],
"garnish": "Maraschino Cherry",
"served": "Tall"
},
"Manhattan": {
"ingredients": [
{ "kind": "Rye", "qty": 2.5 },
{ "kind": "Sweet Red Vermouth", "qty": 1 },
{ "kind": "Angostura", "qty": "dash" }
],
"garnish": "Maraschino Cherry",
"served": "Straight Up"
}
}
}
Demo of PHP
    JsonNet::evaluateFile('bar_menu.1.jsonnet');

$Snippet = '
{
cocktails: {
// Ingredient quantities are in fluid ounces.
"Tom Collins": {
ingredients: [
{ kind: "Farmers Gin", qty: 1.5 },
{ kind: "Lemon", qty: 1 },
{ kind: "Simple Syrup", qty: 0.5 },
{ kind: "Soda", qty: 2 },
{ kind: "Angostura", qty: "dash" },
],
garnish: "Maraschino Cherry",
served: "Tall",
},
Manhattan: {
ingredients: [
{ kind: "Rye", qty: 2.5 },
{ kind: "Sweet Red Vermouth", qty: 1 },
{ kind: "Angostura", qty: "dash" },
],
garnish: "Maraschino Cherry",
served: "Straight Up",
},
}
}
';

var_dump(JsonNet::evaluateSnippet($Snippet));
安装请参考我的实践文章:http://www.openskill.cn/article/373
 
项目地址


Github:https://github.com/Neeke/Jsonnet-PHP
Pecl:  http://pecl.php.net/package/jsonnet 
Gitosc:  http://git.oschina.net/ciogao/Jsonnet-PHP


开源Mysql自动补全、语法高亮客户端Mycli

chris 发表了文章 • 0 个评论 • 1035 次浏览 • 2016-05-30 20:38 • 来自相关话题

介绍:MyCli是一个MySQL的命令行客户端,可以实现自动补全(auto-completion)和语法高亮,同时也可应用于MariaDB和Percona。
 
功能特征:
[]MyCli使用Python Prompt Toolkit编写。[/][]支持语法高亮[/][]当你输入SQL关键字,数据库的表格和列时可自动补全。[/][]智能补全(默认启用),会提示文本感应的(context-sensitive)补全。[/][]配置文件在第一次启动时,自动创建在~/.myclirc[/]
 
安装:
兼容性:
OS X和Linux上测试过。运行在Python 2.6,2.6,3.3,3.4和3.5。能够很好地处理unicode输入/输出。
 
Python Package:
$ pip install mycli

or

$ easy_install mycli
 Mac OS X:
最简单的方法在OS X机器安装mycli是使用homebrew
$ brew update && brew install mycliLinux:
Debian/Ubuntu Package:
mycli托管在debian软件包packagecloud.io.
添加gpg密钥packagecloud包验证。
$ curl https://packagecloud.io/gpg.key | apt-key add -安装apt-transport-https包,支持apt使用https下载包
$ apt-get install -y apt-transport-https添加mycli安装源
$ echo "deb https://packagecloud.io/amjith/mycli/ubuntu/ trusty main" | sudo tee -a /etc/apt/sources.list更新mycli的安装源,然后安装mycli
$ sudo apt-get update
$ sudo apt-get install mycli现在使用sudo apt-get upgrade mycli很容易使mycli升级!
 
RHEL, Centos, Fedora:
我还没有为mycli构建RPM包。所以请使用pip安装mycli。你可以在你的系统上安装pip使用:
$ sudo yum install python-pip python-devel一旦安装pip,您可以如下安装mycli:
$ sudo pip install mycli
效果图:
自动补全
简单的完成如关键字和sql函数。




 
智能提示
Table name completions after the 'FROM' keyword.
 




列名中引用的表的查询范围




 
别名支持
列完成将即使工作表名称别名。




 
语法高亮显示
sql的语法高亮显示。




 
pager
一个sql命令的输出是通过更少的命令自动输送。




 
动态效果图如下:




 

项目官网:http://mycli.net/
开源地址:https://github.com/dbcli/mycli 查看全部
介绍:MyCli是一个MySQL的命令行客户端,可以实现自动补全(auto-completion)和语法高亮,同时也可应用于MariaDB和Percona。
 
功能特征:
    []MyCli使用Python Prompt Toolkit编写。[/][]支持语法高亮[/][]当你输入SQL关键字,数据库的表格和列时可自动补全。[/][]智能补全(默认启用),会提示文本感应的(context-sensitive)补全。[/][]配置文件在第一次启动时,自动创建在~/.myclirc[/]

 
安装:
兼容性:
OS X和Linux上测试过。运行在Python 2.6,2.6,3.3,3.4和3.5。能够很好地处理unicode输入/输出。
 
Python Package:
$ pip install mycli

or

$ easy_install mycli

 Mac OS X:
最简单的方法在OS X机器安装mycli是使用homebrew
$ brew update && brew install mycli
Linux:
Debian/Ubuntu Package:
mycli托管在debian软件包packagecloud.io.
添加gpg密钥packagecloud包验证。
 $ curl https://packagecloud.io/gpg.key | apt-key add -
安装apt-transport-https包,支持apt使用https下载包
$ apt-get install -y apt-transport-https
添加mycli安装源
$ echo "deb https://packagecloud.io/amjith/mycli/ubuntu/ trusty main" | sudo tee -a /etc/apt/sources.list
更新mycli的安装源,然后安装mycli
$ sudo apt-get update
$ sudo apt-get install mycli
现在使用sudo apt-get upgrade mycli很容易使mycli升级!
 
RHEL, Centos, Fedora:
我还没有为mycli构建RPM包。所以请使用pip安装mycli。你可以在你的系统上安装pip使用:
$ sudo yum install python-pip python-devel
一旦安装pip,您可以如下安装mycli:
$ sudo pip install mycli

效果图:
自动补全
简单的完成如关键字和sql函数。
t1.png

 
智能提示
Table name completions after the 'FROM' keyword.
 
t2.png

列名中引用的表的查询范围
t3.png

 
别名支持
列完成将即使工作表名称别名。
t4.png

 
语法高亮显示
sql的语法高亮显示。
t5.png

 
pager
一个sql命令的输出是通过更少的命令自动输送。
t6.png

 
动态效果图如下:
dt.gif

 


项目官网:http://mycli.net/
开源地址:https://github.com/dbcli/mycli


道里云开源DaoliNet高效动态Docker网络

chris 发表了文章 • 0 个评论 • 945 次浏览 • 2016-05-28 17:58 • 来自相关话题

DaoliNet是高效和动态Docker网络
DaoliNet是一个软件,旨在提供Docker容器效率和动态连接,这是适合于Docker容器的微服务工作负荷的重量轻且短暂性质定义网络(SDN)的系统。

高级特征:
[]资源高效:容器连接消耗,当容器不主动沟通的小主机资源,而且可以立即切换到提供完整的连接能力。 这是在主机CPU资源的容器有效地利用相同的方式。 你获得更多的服务器资源。[/][]分布在任何地方:Docker服务器可以在公共云,如AWS在自己的数据中心的笔记本电脑或PC你的办公室或家中,服务器的防火墙内,或虚拟机。[/][]网络虚拟化:您可以选择任何CIDR IP地址,你的容器和容器可以保持IP地址移动物理位置后保持不变。[/][]使用开放式的V-Switch纯软件实现(OVS):提供网络功能的分布式交换机,路由器,网关和防火墙。 在插件的即插即用的简单系统的部署。[/]
要了解更多关于DaoliNet: http://www.daolinet.org 
 
Docker在高效和动态网络的需求
提供高效的微服务容器时,可以在生命周期短暂的高度:大量的Docker动态云集装箱的需要快速建立连接,以及频繁更换连接状态。 传统的数据平面的路由学习技术要求泊坞窗服务器经常学习和更新了大量动态的容器,这转化为较低的高效利用服务器资源的路由信息。 迄今为止,网络是Docker的核心特征是相对不成熟,仍处于开发状态。

架构
DaoliNet的网络体系结构是基于OpenFlow的标准。 它采用的OpenFlow控制器作为智能控制平面,和Open-V开关(OVSes)来实现数据路径。 该OpenFlow的控制器在DaoliNet是逻辑上集中的实体,但实际一组HA分布式Web服务类似物。  OVSes是无所不在提供Linux内核,因此可以应用在所有的Docker服务器。

在DaoliNet网络中,所有Docker服务器都在其中无论是身体或VPN连接的以太网。 每个Docker服务器充当所有在该服务器上托管的容器的工作负载的虚拟路由器。 然而,这些虚拟路由器的OpenFlow技术工作,他们不运行任何路由算法。 在一个容器发起连接,所涉及的虚拟路由器将实时由OpenFlow的控制器配置成建立路由。





怎么运行的
当容器开始在Docker服务器作为源路由器将发出一个PacketIn请求的OpenFlow控制器的连接时,OVS。 该PacketIn请求是刚刚从启动容器中的第一个数据包。 在OpenFlow的控制器,知道所有Docker服务器,路由器OpenFlow技术在系统中,看到PacketIn,可以识别它承载容器作为目标工作负载的另一个Docker服务器。 该第二Docker服务器是为连接目的地路由器。 所述的OpenFlow控制器将有一对PacketOut流,一个用于源服务器,和另一个用于目标服务器的响应。 这些PacketOut流建立在两个容器之间热插拔路线,见下图:




当一个连接变得空闲并且在一个时间阈值,则热插拔路线将超时和删除以释放服务器的资源。 由于热插拔路由建立快速,删除不活动的连接可以在重新连接被重新热插拔。 因此Docker服务器作为DaoliNet路由器工作在无连接,无资源消耗的风格。 网络资源利用率的这种风格完全匹配利用服务器CPU在该容器的时候,闲置集装箱消耗很少的服务器资源. DaoliNet是一种有效的和动态的网络技术用于连接Docker容器。

简单的网络为集装箱
在DaoliNet,在系统Docker服务器处于未会意酮另一个的一个简单的状态,完全独立于彼此。 这个体系结构不仅节省了资源利用率,但更重要的是Docker服务器之间的独立关系极大地简化了资源的管理。 扩展资源池是为服务器添加到游泳池和通知的OpenFlow控制器的即插即用的打法一样简单。 需要在路由器之间没有复杂的路由表查找和更新。 也没有必要Docker服务器成对运行一些包的封装协议,它不仅是资源利用效率低,而且会抵消网络诊断和故障排除工具,如跟踪路由。
更多了解官网: http://www.daolinet.org/html/technology.html 
Github项目地址:https://github.com/daolinet/daolinet 查看全部
daolinet.png

DaoliNet是高效和动态Docker网络
DaoliNet是一个软件,旨在提供Docker容器效率和动态连接,这是适合于Docker容器的微服务工作负荷的重量轻且短暂性质定义网络(SDN)的系统。

高级特征:
    []资源高效:容器连接消耗,当容器不主动沟通的小主机资源,而且可以立即切换到提供完整的连接能力。 这是在主机CPU资源的容器有效地利用相同的方式。 你获得更多的服务器资源。[/][]分布在任何地方:Docker服务器可以在公共云,如AWS在自己的数据中心的笔记本电脑或PC你的办公室或家中,服务器的防火墙内,或虚拟机。[/][]网络虚拟化:您可以选择任何CIDR IP地址,你的容器和容器可以保持IP地址移动物理位置后保持不变。[/][]使用开放式的V-Switch纯软件实现(OVS):提供网络功能的分布式交换机,路由器,网关和防火墙。 在插件的即插即用的简单系统的部署。[/]

要了解更多关于DaoliNet: http://www.daolinet.org 
 
Docker在高效和动态网络的需求
提供高效的微服务容器时,可以在生命周期短暂的高度:大量的Docker动态云集装箱的需要快速建立连接,以及频繁更换连接状态。 传统的数据平面的路由学习技术要求泊坞窗服务器经常学习和更新了大量动态的容器,这转化为较低的高效利用服务器资源的路由信息。 迄今为止,网络是Docker的核心特征是相对不成熟,仍处于开发状态。

架构
DaoliNet的网络体系结构是基于OpenFlow的标准。 它采用的OpenFlow控制器作为智能控制平面,和Open-V开关(OVSes)来实现数据路径。 该OpenFlow的控制器在DaoliNet是逻辑上集中的实体,但实际一组HA分布式Web服务类似物。  OVSes是无所不在提供Linux内核,因此可以应用在所有的Docker服务器。

在DaoliNet网络中,所有Docker服务器都在其中无论是身体或VPN连接的以太网。 每个Docker服务器充当所有在该服务器上托管的容器的工作负载的虚拟路由器。 然而,这些虚拟路由器的OpenFlow技术工作,他们不运行任何路由算法。 在一个容器发起连接,所涉及的虚拟路由器将实时由OpenFlow的控制器配置成建立路由。
dotnet.png


怎么运行的
当容器开始在Docker服务器作为源路由器将发出一个PacketIn请求的OpenFlow控制器的连接时,OVS。 该PacketIn请求是刚刚从启动容器中的第一个数据包。 在OpenFlow的控制器,知道所有Docker服务器,路由器OpenFlow技术在系统中,看到PacketIn,可以识别它承载容器作为目标工作负载的另一个Docker服务器。 该第二Docker服务器是为连接目的地路由器。 所述的OpenFlow控制器将有一对PacketOut流,一个用于源服务器,和另一个用于目标服务器的响应。 这些PacketOut流建立在两个容器之间热插拔路线,见下图:
dnet2.png

当一个连接变得空闲并且在一个时间阈值,则热插拔路线将超时和删除以释放服务器的资源。 由于热插拔路由建立快速,删除不活动的连接可以在重新连接被重新热插拔。 因此Docker服务器作为DaoliNet路由器工作在无连接,无资源消耗的风格。 网络资源利用率的这种风格完全匹配利用服务器CPU在该容器的时候,闲置集装箱消耗很少的服务器资源. DaoliNet是一种有效的和动态的网络技术用于连接Docker容器。

简单的网络为集装箱
在DaoliNet,在系统Docker服务器处于未会意酮另一个的一个简单的状态,完全独立于彼此。 这个体系结构不仅节省了资源利用率,但更重要的是Docker服务器之间的独立关系极大地简化了资源的管理。 扩展资源池是为服务器添加到游泳池和通知的OpenFlow控制器的即插即用的打法一样简单。 需要在路由器之间没有复杂的路由表查找和更新。 也没有必要Docker服务器成对运行一些包的封装协议,它不仅是资源利用效率低,而且会抵消网络诊断和故障排除工具,如跟踪路由。
更多了解官网: http://www.daolinet.org/html/technology.html 
Github项目地址https://github.com/daolinet/daolinet

开源的即时通讯在线客服平台(持续更新维护中)

ppmessage 发表了文章 • 0 个评论 • 1231 次浏览 • 2016-05-06 16:45 • 来自相关话题

ppmessage:README.md_at_master_·_PPMESSAGE:ppmessage_·_GitHub_.pdf



PPMessage是一个开源的在线客服平台。PPMessage能够帮助你在第一时间与你的客户建立联系,开发人员可以非常容易的将 PPMessage 集成到你的网站或者 iOS、Android 的应用中。PPMessage的前端后端都是开源的,后端全部基于 Python,简洁高效。前端根据不同平台提供原生的SDK。 基于 PPMessage 还能实现私有的·微信·功能,在企业内部或者私有云上建立自主的·微信·服务器;也可以将 PPMessage 与企业业务系统整合,实现自建的·钉钉·系统。 PPMessage 后端建议部署到 Linux 上,推荐使用 Debian 或者 Ubuntu,同时支持 Mac OS X 系统,方便开发者测试。 PPMessage 提供了完整而清晰的 API 和 OAuth 系统,所有前端应用和 SDK 都是通过调用或者封装后端的 API 而实现。PPMessage 能够做到最大程度和最底层的整合开发。 PPMessage 包含由数个 Python 后台应用组成的后端,Python 后端应用通过 Supervisor 统一管理,通过 Nginx 反向代理进行 HTTP 请求的统一分发和负载均衡。PPMessage 的后端使用了 Mysql 数据库,事实上 PPMessage 后端并没有直接操作数据库,直接操作数据库速度不能满足 PPMessage 支持大并发量消息服务,PPMessage所有的数据操作通过单独的、异步的 Cache 服务完成。PPMessage 的前端开发 SDK 称为 PPCom,PPCom 会被集成到你的企业 Web 站点,Android、iOS 应用之中,为你的客户提供建立联系的入口;给客服和企业组织内部人员使用的前端应用叫做 PPKefu,PPKefu 可以运行在 Web 端,Windows、Mac 和 Linux 桌面端,Android、iOS 移动应用端,几乎支持所有的可以运行应用的平台,让你的客服人员随时随地为你的客户提供服务或者建立联系。 PPMessage 同时提供了一个 Web 管理界面,称之为 PPConsole,当然也是开源的,PPConsole 提供一个管理界面去管理配置PPMessage。PPConsole 同时也集成了一些企业运营所需的常用功能,探索使用 PPConsole 让它为你的企业业务服务。通过使用 PPConsole 上的企业应用,PPMessage 完全成为了一个自主、自建的企业微信,或者是阿里钉钉,但是数据和程序以及安全性却能得到充分的保障。 下面是PPMessage提供的一些文档,详细信息及在线体验PPMessage,请访问PPMessage Site。
 • 在 Debian 8.4 上安装 PPMessage 
• 在 Ubuntu Server 16.04 上安装 PPMessage 
PPMessage 完全参考手册,请关注 PPMessage 在 GITBOOK上的持续更新 PPMessage Book。欢迎小伙伴们到官网和github上体验和提出宝贵意见,发现BUG请及时反馈给我们,非常感谢大家!






  查看全部


PPMessage是一个开源的在线客服平台。PPMessage能够帮助你在第一时间与你的客户建立联系,开发人员可以非常容易的将 PPMessage 集成到你的网站或者 iOS、Android 的应用中。PPMessage的前端后端都是开源的,后端全部基于 Python,简洁高效。前端根据不同平台提供原生的SDK。 基于 PPMessage 还能实现私有的·微信·功能,在企业内部或者私有云上建立自主的·微信·服务器;也可以将 PPMessage 与企业业务系统整合,实现自建的·钉钉·系统。 PPMessage 后端建议部署到 Linux 上,推荐使用 Debian 或者 Ubuntu,同时支持 Mac OS X 系统,方便开发者测试。 PPMessage 提供了完整而清晰的 API 和 OAuth 系统,所有前端应用和 SDK 都是通过调用或者封装后端的 API 而实现。PPMessage 能够做到最大程度和最底层的整合开发。 PPMessage 包含由数个 Python 后台应用组成的后端,Python 后端应用通过 Supervisor 统一管理,通过 Nginx 反向代理进行 HTTP 请求的统一分发和负载均衡。PPMessage 的后端使用了 Mysql 数据库,事实上 PPMessage 后端并没有直接操作数据库,直接操作数据库速度不能满足 PPMessage 支持大并发量消息服务,PPMessage所有的数据操作通过单独的、异步的 Cache 服务完成。PPMessage 的前端开发 SDK 称为 PPCom,PPCom 会被集成到你的企业 Web 站点,Android、iOS 应用之中,为你的客户提供建立联系的入口;给客服和企业组织内部人员使用的前端应用叫做 PPKefu,PPKefu 可以运行在 Web 端,Windows、Mac 和 Linux 桌面端,Android、iOS 移动应用端,几乎支持所有的可以运行应用的平台,让你的客服人员随时随地为你的客户提供服务或者建立联系。 PPMessage 同时提供了一个 Web 管理界面,称之为 PPConsole,当然也是开源的,PPConsole 提供一个管理界面去管理配置PPMessage。PPConsole 同时也集成了一些企业运营所需的常用功能,探索使用 PPConsole 让它为你的企业业务服务。通过使用 PPConsole 上的企业应用,PPMessage 完全成为了一个自主、自建的企业微信,或者是阿里钉钉,但是数据和程序以及安全性却能得到充分的保障。 下面是PPMessage提供的一些文档,详细信息及在线体验PPMessage,请访问PPMessage Site
 • 在 Debian 8.4 上安装 PPMessage 
在 Ubuntu Server 16.04 上安装 PPMessage 
PPMessage 完全参考手册,请关注 PPMessageGITBOOK上的持续更新 PPMessage Book。欢迎小伙伴们到官网github上体验和提出宝贵意见,发现BUG请及时反馈给我们,非常感谢大家!


Attachment-1.gif

 

商业级开源虚拟化管理平台OVM

采菊篱下 发表了文章 • 0 个评论 • 1178 次浏览 • 2016-04-26 20:44 • 来自相关话题

开源的虚拟化管理平台也有很多,比如OpenStack、Cloudstack OpenNebula、oVirt/RHEV、ZStack等,为什么还要自行研发开发呢,因为这些都不够简单和易用,功能不够全面。而OVM得出发点就是简单、易玩!

经历了一年来一个虚拟化的开源管理平台OVM-(Open Virtual Manager )终于诞生了。OVM作为开源虚拟化管理平台以做最好用的虚拟化管理平台为目标。面向中小型虚拟化环境,打造简单易用的虚拟化和管理平台。 让零基础的用户在几个小时内可以部署、使用自己的虚拟化系统。主要特性就是简单、易部署。
 
具体的安装下载参考:http://www.openvirtmanager.org/install.html​ 
 
下面就让我们来体验初恋般的感觉,OVM具有魅力,我们可以怎么使用?!!!
 
一、使用Web客户端登录OVM
OVM安装配置完成后,您可以使用FireFox浏览器或Google浏览器访问OVM用户界面。
前提条件:
          您必须具有在系统配置期间创建的系统管理员用户名和密码(系统默认用户名为admin、默认密码为password。
步骤:
[]打开Web 浏览器,并导航到http://管理平台ip[/][]输入系统管理员用户名和密码(系统默认为admin、password),并单击登录。[/]




OVM将带您进入到虚拟化与云的世界。
 
二、新建数据中心
[]OVM数据中心支持管理私有的数据中心和公有云资源。[/][]OVM通过远程服务模块管理数据中心和公有云。[/]




新建数据中心步骤:
1、选择添加内部虚拟中心,弹出对话框,由于各个组件使用all-in-one安装,所以输入管理平台IP,重复IP,免除重复操作。




2、检查所有IP,如果安装没有问题,检查会顺利通过。




3、点击保存,内部数据中心建立完毕。




 
三、新建服务器资源池
服务器池是物理主机的主要容器,通常要把主机(即物理服务器)添加到服务器池。

数据中心可包含多个服务器池,一般全国性的集团公司或跨国公司会使用多个服务器池来表示企业内的组织结构。

服务器池的对象可以交互,但不同服务器池的交互则会受到限制。例如:您可以使用OVM迁移技术在一个服务器池内的主机之间迁移虚拟机,但不可以将虚拟机迁移到另一个服务器池的主机上。
新建服务器资源池步骤:
1、选择数据中心—主机,建立资源池:




 2、输入资源池名称,描述点击保存,资源池建立完毕。





四、为服务器资源池设置分配策略
点击数据中心—资源分配,可以为虚拟资源进行配置负载均衡策略,合理调度虚拟资源,提高虚拟机性能。




 
五、添加主机1、请确保你已经安装了OVM节点主机;
2、选择建立好的资源池,添加主机




3、选择相应的Hypervisor,添加计算节点的IP,点击保存。








4、在新的弹框中在数据存储选择共享NFS存储,网络接口进行选择,之后保存,主机添加成功。












 
六、主机管理
选择编辑主机,可对主机资源进行管理或修改,如主机环境有问题,可以进行操作此项。




 
七、创建虚拟数据中心
 1、 选择主菜单栏虚拟数据中心—虚拟数据中心,点击+号添加




2、填写名称,选择相应数据中心和Hypervisor。




3、点击保存,虚拟数据中心添加成功。




 
八、创建vApp
1、选择主菜单栏虚拟数据中心—vApp,点击+号,填写名称。




2、点击保存,vApp添加成功




 
九、通过ISO新建VM
 1、选择主菜单栏应用商店,上传ISO。




2、上传ISO后 ,进入虚拟数据中心的vApp,在ISO选项中创建虚拟机,创建过程中可以进行资源配置建立。












更多详情和项目进度可以关注官网:http://www.openvirtmanager.org/  和官网社区! 查看全部
开源的虚拟化管理平台也有很多,比如OpenStack、Cloudstack OpenNebula、oVirt/RHEV、ZStack等,为什么还要自行研发开发呢,因为这些都不够简单和易用,功能不够全面。而OVM得出发点就是简单、易玩!

经历了一年来一个虚拟化的开源管理平台OVM-(Open Virtual Manager )终于诞生了。OVM作为开源虚拟化管理平台以做最好用的虚拟化管理平台为目标。面向中小型虚拟化环境,打造简单易用的虚拟化和管理平台。 让零基础的用户在几个小时内可以部署、使用自己的虚拟化系统。主要特性就是简单、易部署。
 
具体的安装下载参考:http://www.openvirtmanager.org/install.html​ 
 
下面就让我们来体验初恋般的感觉,OVM具有魅力,我们可以怎么使用?!!!
 
一、使用Web客户端登录OVM
OVM安装配置完成后,您可以使用FireFox浏览器或Google浏览器访问OVM用户界面。
前提条件:
          您必须具有在系统配置期间创建的系统管理员用户名和密码(系统默认用户名为admin、默认密码为password。
步骤:
    []打开Web 浏览器,并导航到http://管理平台ip[/][]输入系统管理员用户名和密码(系统默认为admin、password),并单击登录。[/]

image001.png

OVM将带您进入到虚拟化与云的世界。
 
二、新建数据中心
    []OVM数据中心支持管理私有的数据中心和公有云资源。[/][]OVM通过远程服务模块管理数据中心和公有云。[/]

image005.png

新建数据中心步骤:
1、选择添加内部虚拟中心,弹出对话框,由于各个组件使用all-in-one安装,所以输入管理平台IP,重复IP,免除重复操作。
image006.png

2、检查所有IP,如果安装没有问题,检查会顺利通过。
image007.png

3、点击保存,内部数据中心建立完毕。
imag8.png

 
三、新建服务器资源池
服务器池是物理主机的主要容器,通常要把主机(即物理服务器)添加到服务器池。

数据中心可包含多个服务器池,一般全国性的集团公司或跨国公司会使用多个服务器池来表示企业内的组织结构。

服务器池的对象可以交互,但不同服务器池的交互则会受到限制。例如:您可以使用OVM迁移技术在一个服务器池内的主机之间迁移虚拟机,但不可以将虚拟机迁移到另一个服务器池的主机上。
新建服务器资源池步骤:
1、选择数据中心—主机,建立资源池:
image009.png

 2、输入资源池名称,描述点击保存,资源池建立完毕。
image010.png


四、为服务器资源池设置分配策略
点击数据中心—资源分配,可以为虚拟资源进行配置负载均衡策略,合理调度虚拟资源,提高虚拟机性能。
image011.png

 
五、添加主机1、请确保你已经安装了OVM节点主机;
2、选择建立好的资源池,添加主机
image012.png

3、选择相应的Hypervisor,添加计算节点的IP,点击保存。
image013.png

image014.png

4、在新的弹框中在数据存储选择共享NFS存储,网络接口进行选择,之后保存,主机添加成功。
image015.png

image016.png

image017.png

 
六、主机管理
选择编辑主机,可对主机资源进行管理或修改,如主机环境有问题,可以进行操作此项。
image018.png

 
七、创建虚拟数据中心
 1、 选择主菜单栏虚拟数据中心—虚拟数据中心,点击+号添加
image019.png

2、填写名称,选择相应数据中心和Hypervisor。
image020.png

3、点击保存,虚拟数据中心添加成功。
image021.png

 
八、创建vApp
1、选择主菜单栏虚拟数据中心—vApp,点击+号,填写名称。
image022.png

2、点击保存,vApp添加成功
image023.png

 
九、通过ISO新建VM
 1、选择主菜单栏应用商店,上传ISO。
image024.png

2、上传ISO后 ,进入虚拟数据中心的vApp,在ISO选项中创建虚拟机,创建过程中可以进行资源配置建立。
image025.png

image026.png

image027.png

更多详情和项目进度可以关注官网:http://www.openvirtmanager.org/  和官网社区!

开源管理的Saltstack Web UI(持续更新)

koyo 发表了文章 • 0 个评论 • 1721 次浏览 • 2016-04-24 23:33 • 来自相关话题

项目名称:dzhops
[]使用Django框架开发的Salt Stack Web UI[/][]开发语言: python;[/][]后端框架: Django;[/][]前端框架:bootstrap/jquery;[/][]这个项目最初是我个人爱好,不过后来发现,确实能解决目前SaltStack在命令行模式下的部分缺陷;所以,现在公司已经开始在生产使用,这也直接带来一个问题,关于这套系统是否继续开源的思考;[/]
 
环境:
[]RHEL 6.5 x86_64[/][]salt-master 2015.5.3[/][]salt-minion 2015.5.3[/][]salt-api 2015.5.3[/][]Django 1.6.8[/][]python 2.6.6[/][]MySQL 5.5[/][]网卡流量图使用rrdtool(v1.3.8)工具[/]
 
dzhops更新记录:
[]> SaltStack相关功能(部署、更新、维护、远程)代码重构;[/][]> 视图文件拆分,新建立app:saltstack/record/managekeys;[/][]> 使用json格式通过接口传递数据,提高代码重用率;[/][]> 远程操作的jid及返回结果相关信息入库;[/][]> 对返回结果按IP进行排序;[/][]> 返回结果展示按钮增加上下距离;[/][]> 前端各选项左右对齐;[/][]> 远程命令执行返回结果显示优化;[/][]> 取消网卡流量监控;[/]
 
功能介绍
1.登陆页面 




2.首页,显示SaltMaster所在服务器及相关组件状态信息 目前监控数据,都是通过独立的信息采集脚本完成,需要做计划任务。 




3.主机列表 进入主机列表界面,可以选择机房和维护人员,使用ajax处理,每次选择会从库中重新查询符合条件的数据; 这些服务器相关的信息支持自动采集,由于目前写的方法只能完成采集任务,所以并没有将链接放出来,不过可以通过访问指定链接进行访问。 




4.SaltStack 可完成如下功能:
[]服务器初始化(如模块部署等)[/][]程序、配置更新[/][]日常维护操作[/][]远程命令执行 当对Minion执行操作时,会记录本次目标Minion的数量,然后与返回结果的Minion数量进行对比,找出哪些没有返回结果;当接收到返回结果后,使用bootstrap的模态框显示结果,其中蓝色表示执行成功,红色表示有失败存在,可以点击标签查看详细情况;[/]












5.MinionKeys管理 可以分别选择已接受、待接受、已拒绝,并且可以选择机房及维护人员,进行对应的管理操作; 




6.操作记录 可以记录每次操作执行人的账号、操作、目标、及jid,并可以通过jid查看该次操作的返回结果详细情况。








更多详情可以访问项目开源地址:https://github.com/Hasal/dzhops 查看全部
项目名称:dzhops
    []使用Django框架开发的Salt Stack Web UI[/][]开发语言: python;[/][]后端框架: Django;[/][]前端框架:bootstrap/jquery;[/][]这个项目最初是我个人爱好,不过后来发现,确实能解决目前SaltStack在命令行模式下的部分缺陷;所以,现在公司已经开始在生产使用,这也直接带来一个问题,关于这套系统是否继续开源的思考;[/]

 
环境:
    []RHEL 6.5 x86_64[/][]salt-master 2015.5.3[/][]salt-minion 2015.5.3[/][]salt-api 2015.5.3[/][]Django 1.6.8[/][]python 2.6.6[/][]MySQL 5.5[/][]网卡流量图使用rrdtool(v1.3.8)工具[/]

 
dzhops更新记录:
    []> SaltStack相关功能(部署、更新、维护、远程)代码重构;[/][]> 视图文件拆分,新建立app:saltstack/record/managekeys;[/][]> 使用json格式通过接口传递数据,提高代码重用率;[/][]> 远程操作的jid及返回结果相关信息入库;[/][]> 对返回结果按IP进行排序;[/][]> 返回结果展示按钮增加上下距离;[/][]> 前端各选项左右对齐;[/][]> 远程命令执行返回结果显示优化;[/][]> 取消网卡流量监控;[/]

 
功能介绍
1.登陆页面 
login.png

2.首页,显示SaltMaster所在服务器及相关组件状态信息 目前监控数据,都是通过独立的信息采集脚本完成,需要做计划任务。 
index.png

3.主机列表 进入主机列表界面,可以选择机房和维护人员,使用ajax处理,每次选择会从库中重新查询符合条件的数据; 这些服务器相关的信息支持自动采集,由于目前写的方法只能完成采集任务,所以并没有将链接放出来,不过可以通过访问指定链接进行访问。 
asset.png

4.SaltStack 可完成如下功能:
    []服务器初始化(如模块部署等)[/][]程序、配置更新[/][]日常维护操作[/][]远程命令执行 当对Minion执行操作时,会记录本次目标Minion的数量,然后与返回结果的Minion数量进行对比,找出哪些没有返回结果;当接收到返回结果后,使用bootstrap的模态框显示结果,其中蓝色表示执行成功,红色表示有失败存在,可以点击标签查看详细情况;[/]

deploy.png

deploy_show.png

deploy_show_success.png

5.MinionKeys管理 可以分别选择已接受、待接受、已拒绝,并且可以选择机房及维护人员,进行对应的管理操作; 
manage.png

6.操作记录 可以记录每次操作执行人的账号、操作、目标、及jid,并可以通过jid查看该次操作的返回结果详细情况。
record.png

record_detail.png

更多详情可以访问项目开源地址:https://github.com/Hasal/dzhops

开源运维管理平台OpsSam

koyo 发表了文章 • 0 个评论 • 2015 次浏览 • 2016-04-18 13:58 • 来自相关话题

基于saltstack、cobbler和zabbix接口的集成管理开源运维平台
一、基本环境​
os: Centos 6.6 x86_64
python: 2.6.6
 
二、依赖关系
1、python依赖包pip install -r requirements.txt2、epel源rpm安装包mysql-5.5.19
subversion-1.6.11-10
rabbitmq-server-3.1.5-1
cobbler-2.6.3-13、其他接口a)cobbler服务器
cobbler-2.6.3-1.el6.noarch
cobbler-web-2.6.3-1.el6.noarch

b)saltstack服务器
salt 2014.7.2
salt-api-2014.7.2

c)svn服务器
subversion-1.6.11-114、启动数据库a)创建登陆用户
/etc/init.d/mysqld start
mysqladmin -uroot password opsSAM

b)创建数据库:
mysql -uroot -popsSAM -e "create database opsSAM;"

c)生成项目数据表:
cd /your/sitepath/
python manage.py syncdb

d)创建初始登陆用户admin(密码admin):
mysql -uroot -popsSAM -e "insert into opsSAM.opsSAM_users(username,password,admin) values ('admin','f313176847fcc0c82dae8e51e0e40b1d33ec7f0fabf279c164f8541ec99f8a06f473b3b1439a41a898aa2f70f076a59bb671e17bed52471cb9adfee9701a7fb5','是');"5、设置djangoopsSAM.opsSAM.settings.py
opsSAM.opsSAM.settings_local.py
 三、django生产环境安装(非必须)
推荐nginx+uwsgi(略)
安装后按照实际情况修改scripts/supervisord.conf相关django配置[program:django]

command=/usr/bin/python /your/sitepath/opsSAM/manage.py runserver 0.0.0.0:80
 四、启动cp scripts/supervisord.conf /etc/
cp scripts/supervisord /etc/init.d/
chmod 755 /etc/init.d/supervisord
/etc/init.d/supervisord start
五、访问地址
opsSAM前台: http://your_ip/
opsSAM后台: http://your_ip/admin
rabbitmq: http://your_ip:15672/
celery flower: http://your_ip:5555/
supervisor: http://your_ip:9001/
 
六、Demo效果图
























项目地址:https://github.com/MorningSong/opsSAM 查看全部
基于saltstack、cobbler和zabbix接口的集成管理开源运维平台
一、基本环境​
os: Centos 6.6 x86_64
python: 2.6.6
 
二、依赖关系
1、python依赖包
pip install -r requirements.txt
2、epel源rpm安装包
mysql-5.5.19
subversion-1.6.11-10
rabbitmq-server-3.1.5-1
cobbler-2.6.3-1
3、其他接口
a)cobbler服务器
cobbler-2.6.3-1.el6.noarch
cobbler-web-2.6.3-1.el6.noarch

b)saltstack服务器
salt 2014.7.2
salt-api-2014.7.2

c)svn服务器
subversion-1.6.11-11
4、启动数据库
a)创建登陆用户
/etc/init.d/mysqld start
mysqladmin -uroot password opsSAM

b)创建数据库:
mysql -uroot -popsSAM -e "create database opsSAM;"

c)生成项目数据表:
cd /your/sitepath/
python manage.py syncdb

d)创建初始登陆用户admin(密码admin):
mysql -uroot -popsSAM -e "insert into opsSAM.opsSAM_users(username,password,admin) values ('admin','f313176847fcc0c82dae8e51e0e40b1d33ec7f0fabf279c164f8541ec99f8a06f473b3b1439a41a898aa2f70f076a59bb671e17bed52471cb9adfee9701a7fb5','是');"
5、设置django
opsSAM.opsSAM.settings.py
opsSAM.opsSAM.settings_local.py

 三、django生产环境安装(非必须)
推荐nginx+uwsgi(略)
安装后按照实际情况修改scripts/supervisord.conf相关django配置
[program:django]

command=/usr/bin/python /your/sitepath/opsSAM/manage.py runserver 0.0.0.0:80

 四、启动
cp scripts/supervisord.conf /etc/
cp scripts/supervisord /etc/init.d/
chmod 755 /etc/init.d/supervisord
/etc/init.d/supervisord start

五、访问地址
opsSAM前台: http://your_ip/
opsSAM后台: http://your_ip/admin
rabbitmq: http://your_ip:15672/
celery flower: http://your_ip:5555/
supervisor: http://your_ip:9001/
 
六、Demo效果图
login.png

index.jpg

system_install.png

exec_command.png

deploy_app.png

deploy_code.png

项目地址:https://github.com/MorningSong/opsSAM

开源微信云端机器人

being 发表了文章 • 0 个评论 • 1012 次浏览 • 2016-03-02 22:27 • 来自相关话题

云端框架v1.0Alpha版​






框架引擎

Python 2.7.9 、Cherrypy 3.6.0 、Mako 1.0.1 本次架构纯属个人兴趣所致,如今开发各类机器人也并非难事,本框架基于最简单的Wechat Http协议所开发 网上关于Wechat的 Web协议分析的资料也不少。这里不再赘述。这套协议分析就很不错web 微信与基于node的微信机器人实现 实现的原理都一样,只过是实现的语言不一样而已,笔者用Node做过基于PCQQ协议的消息互通,简单的写了一个简单的Demo,个人对人工智能比较感兴趣啦~ 由于个人能力有限,工作也比较繁忙,所以就将这个云端框架贡献出来~ 希望有志同道合的同仁一起来维护这个框架。在实际测试中感觉Cherrypy这个框架效率还是蛮低的~后来想用Tornado非阻塞的Python web框架 个人精力有限~~

协议分析

[]WEB协议也就是网页版微信 web 协议有web的好处~嘎嘎我就不说了避免XX00[/][]Android/ios协议 市面上很少见。[/]








PC协议 ...........
[]如何使用 搭建好Python环境安装好对应模块 run CherryWeChatSwever.py 代码写的比较渣渣~啦~ 对于新手熟悉CherryPy框架也是不错想选择~[/]

效果展示






























ChangeLog 






开源协议

GPL项目地址:https://github.com/lu4kyd0y/WeChat-Cloud-Robot 查看全部


云端框架v1.0Alpha版​


weiroto.png


框架引擎


Python 2.7.9 、Cherrypy 3.6.0 、Mako 1.0.1 
本次架构纯属个人兴趣所致,如今开发各类机器人也并非难事,本框架基于最简单的Wechat Http协议所开发 网上关于Wechat的 Web协议分析的资料也不少。这里不再赘述。这套协议分析就很不错web 微信与基于node的微信机器人实现 实现的原理都一样,只过是实现的语言不一样而已,笔者用Node做过基于PCQQ协议的消息互通,简单的写了一个简单的Demo,个人对人工智能比较感兴趣啦~ 由于个人能力有限,工作也比较繁忙,所以就将这个云端框架贡献出来~ 希望有志同道合的同仁一起来维护这个框架。在实际测试中感觉Cherrypy这个框架效率还是蛮低的~后来想用Tornado非阻塞的Python web框架 个人精力有限~~


协议分析


    []WEB协议也就是网页版微信 web 协议有web的好处~嘎嘎我就不说了避免XX00[/][]Android/ios协议 市面上很少见。[/]

code1.png

code2.png

PC协议 ...........
    []如何使用 搭建好Python环境安装好对应模块 run CherryWeChatSwever.py 代码写的比较渣渣~啦~ 对于新手熟悉CherryPy框架也是不错想选择~[/]


效果展示


webchat1.png

webchat2.png

webchat3.png

webchat4.png

webchat5.png

webchat6.png

webchat7.png


ChangeLog 


log.png


开源协议


GPL
项目地址:https://github.com/lu4kyd0y/WeChat-Cloud-Robot