10.25 AITalkUat部署
准备:
git clone AITalkUat工程,在本地跑:

可以直接浏览器访问127.0.0.1:5000()
如果带上参数,可以得到访问的结果127.0.0.1:5000/autoservice?q=怎么结算?n=0
跑通了之后,因为要先在AITalkUat下测试,需要修改端口。
这里插入一段接口的实现,因为在winServer下不能直接用flask部署,我们需要安装tornado。
在工程文件下,增加tornado_server.py,
from tornado.wsgi import WSGIContainer
from tornado.httpserver import HTTPServer
from tornado.ioloop import IOLoop
from web_main import app if __name__ == '__main__':
http_server = HTTPServer(WSGIContainer(app))
http_server.listen(5000)#对应flask的端口
print('IOLoop.instance() start')
IOLoop.instance().start()
print('IOLoop.instance() end')
下面的端口5000改为5001。如果要添加定时任务,就新增tornado_server.bat,
@echo of
#这里可能需要cd到工程目录
start python tornado_server.py
exit
但是因为我们在部署服务上,使用了win server wrapper部署,所以其实不需要这个bat文件
下面说怎么部署
在部署之前,我们需要在web_main.py里,增加代码
import os
os.chdir("D:/project/AITalkUat/app/")
指定程序运行的路径,否则会出现加载字典路径错误的情况。
先把工程文件AITalk,复制到D:\project\AITalkUat\app目录下,返回上一层目录,发现我们有写好了一个.bat文件 installservice.bat,还有一个winsw-1.9-bin,和指定winsw运行的目标的xml配置文件,
配置好之后,点击installservice,在服务器管理中,就会出现AITalkUat的服务,把这个服务启动,本地就可以访问了。
如果再UAT测试好了,要更新到正式环境:
1、把AITalkUat复制过去,改一下端口,5000
2、在web_main里增加
import os
os.chdir("D:/project/AITalk/app/")
3、手动重启服务
4、接下在就在本地的浏览器测试。
http://127.0.0.1:5000/autoservice?q=小票机如何使用&n=1
复制find_question.py normalize.py simi_utils.py到服务器,并复制模型文件(可能要修改路径),还有stopwords, keywords, useridct到服务器,重启服务
=====================================================
如果需要远程进行访问,我们直接kf.pospal.cn:5001并不可以,需要在nginx当中配置,并使用命令nginx -t 检查语法,然后nginx -reload ,reload并不会影响线上的服务,但是在工作时间段,还是不要动。
至于怎么配置,我在listen 80 default server下添加:
location/test {
proxy_pass http://localhost:5001;
}
尝试使用反向代理访问,可是出现404,问了bo哥以后,给出的答案是:
你说的nginx 配置问题是因为这个nginx是按照hostname来配置的。需要在对应的section(按照hostname去找)里面去配置才可以。
主要是看是否有通过hostname来配置
目前还没完全弄懂,备选方案是:
一、在listen 80下添加这个块(非default server)
二、尝试使用$host变量
10.25 AITalkUat部署的更多相关文章
- 背水一战 Windows 10 (25) - MVVM: 通过 x:Bind 实现 MVVM(不用 Command)
[源码下载] 背水一战 Windows 10 (25) - MVVM: 通过 x:Bind 实现 MVVM(不用 Command) 作者:webabcd 介绍背水一战 Windows 10 之 MVV ...
- /proc/interrupts 统计2.6.38.8与3.10.25差异
eth4进,eth5出 linux-3.10.25 67: 2 3 2 3 PCI-MSI-edge eth468: ...
- CentOS安装NodeJS v0.10.25 + Express
安装必需组件 yum -y install gcc make gcc-c++ openssl-devel wget cd ~wget http://nodejs.org/dist/v0.10.25/n ...
- 10.25 正睿停课训练 Day9
目录 2018.10.25 正睿停课训练 Day9 A 数独(思路 DP) B 红绿灯(最短路Dijkstra) C 轰炸(计算几何 圆并) 考试代码 B C 2018.10.25 正睿停课训练 Da ...
- Java习题10.25
Java习题10.25 1. 实际上这道题考查的是两同两小一大原则: 方法名相同,参数类型相同 子类返回类型小于等于父类方法返回类型, 子类抛出异常小于等于父类方法抛出异常, 子类访问权限大于等于父类 ...
- wildfly 10的安装部署
http://www.xue163.com/2203/1/22037981_2.html WildFly 曾用名:JBoss Application Server ,红帽公司宣布 JBoss AS 的 ...
- 在Ubuntu 12.10 上安装部署Openstack
OpenStack系统有几个关键的项目,它们能够独立地安装但是能够在你的云计算中共同工作.这些项目包括:OpenStack Compute,OpenStack Object Storage,OpenS ...
- ArcPad 10 的安装部署
ArcPad是安装在手持设备或者移动终端的一个外业ArcGIS产品,也就是说ArcPad是Esri的一款软件产品,而不是硬件设备哦.尽管不比ArcGIS Desktop功能复杂缤纷,可是对于野外作业. ...
- 2018.10.25 CCSP马拉松摸铜归来
24号体测跑50+1000米. 50米抢跑被罚重跑???然后老年人就只能吊着一口仙气跑第二次50米.然后跑1000米,然后再到宿舍收拾行李赶往地铁站,然后再冲到火车站...(卒) 宾馆,三人挤入二人房 ...
随机推荐
- 正则表达式/(^\s*)|(\s*$)/g意思
包含以空格.回车符等字符开头 或者 空格.回车符等字符结尾 的字符串,可过滤出所有空格.回车符的字符
- nodejs 获取自己的ip
代码片段 // npm i --save-dev request const request = require('request'); const url = "http://ip.tao ...
- python 中的流程控制语句
原文 if 语句 >>> x = int(input("Please enter an integer: ")) Please enter an integer: ...
- Javascript扩展Date的prototype实现时间format函数 2017-06-29T09:10:00.000Z日期转换
/*时间格式化 公用方法*/ Date.prototype.format = function(fmt) { // var o = { "M+": this.getMonth() ...
- WPF 依赖属性和附加属性
依赖属性: 依赖属性就是自己没有值,通过Binding从数据源获得值,就是依赖在别人身上,拥有依赖属性的对象称为依赖对象. 依赖属性的值存在哪里? 在WPF运行时,维护了一个全局的Hashtable存 ...
- Node.js编程规范
摘自:https://github.com/dead-horse/node-style-guide https://github.com/felixge/node-style-guide 2空格缩进 ...
- Hibernate的配置文件,hibernate.cfg.xml
单纯的只针对持久层框架 Hibernate 配置文件的一些总结 一.Hibernate底层原理 1. Hibernate保存原理 目的:把domain对象保存到数据库的表,形成一条记录. sql: i ...
- Linux下TCP/socket编程
写在前面:本博客为本人原创,严禁任何形式的转载!本博客只允许放在博客园(.cnblogs.com),如果您在其他网站看到这篇博文,请通过下面这个唯一的合法链接转到原文! 本博客全网唯一合法URL:ht ...
- Flink - CoGroup
使用方式, dataStream.coGroup(otherStream) .where(0).equalTo(1) .window(TumblingEventTimeWindows.of(Time. ...
- Java+Selenium如何解决空指针
1.问题描述:浏览器获取当期窗口值获取为空.