准备:

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部署的更多相关文章

  1. 背水一战 Windows 10 (25) - MVVM: 通过 x:Bind 实现 MVVM(不用 Command)

    [源码下载] 背水一战 Windows 10 (25) - MVVM: 通过 x:Bind 实现 MVVM(不用 Command) 作者:webabcd 介绍背水一战 Windows 10 之 MVV ...

  2. /proc/interrupts 统计2.6.38.8与3.10.25差异

    eth4进,eth5出 linux-3.10.25 67:          2          3          2          3   PCI-MSI-edge     eth468: ...

  3. 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 ...

  4. 10.25 正睿停课训练 Day9

    目录 2018.10.25 正睿停课训练 Day9 A 数独(思路 DP) B 红绿灯(最短路Dijkstra) C 轰炸(计算几何 圆并) 考试代码 B C 2018.10.25 正睿停课训练 Da ...

  5. Java习题10.25

    Java习题10.25 1. 实际上这道题考查的是两同两小一大原则: 方法名相同,参数类型相同 子类返回类型小于等于父类方法返回类型, 子类抛出异常小于等于父类方法抛出异常, 子类访问权限大于等于父类 ...

  6. wildfly 10的安装部署

    http://www.xue163.com/2203/1/22037981_2.html WildFly 曾用名:JBoss Application Server ,红帽公司宣布 JBoss AS 的 ...

  7. 在Ubuntu 12.10 上安装部署Openstack

    OpenStack系统有几个关键的项目,它们能够独立地安装但是能够在你的云计算中共同工作.这些项目包括:OpenStack Compute,OpenStack Object Storage,OpenS ...

  8. ArcPad 10 的安装部署

    ArcPad是安装在手持设备或者移动终端的一个外业ArcGIS产品,也就是说ArcPad是Esri的一款软件产品,而不是硬件设备哦.尽管不比ArcGIS Desktop功能复杂缤纷,可是对于野外作业. ...

  9. 2018.10.25 CCSP马拉松摸铜归来

    24号体测跑50+1000米. 50米抢跑被罚重跑???然后老年人就只能吊着一口仙气跑第二次50米.然后跑1000米,然后再到宿舍收拾行李赶往地铁站,然后再冲到火车站...(卒) 宾馆,三人挤入二人房 ...

随机推荐

  1. 正则表达式/(^\s*)|(\s*$)/g意思

    包含以空格.回车符等字符开头 或者 空格.回车符等字符结尾 的字符串,可过滤出所有空格.回车符的字符

  2. nodejs 获取自己的ip

    代码片段 // npm i --save-dev request const request = require('request'); const url = "http://ip.tao ...

  3. python 中的流程控制语句

    原文 if 语句 >>> x = int(input("Please enter an integer: ")) Please enter an integer: ...

  4. Javascript扩展Date的prototype实现时间format函数 2017-06-29T09:10:00.000Z日期转换

    /*时间格式化 公用方法*/ Date.prototype.format = function(fmt) { // var o = { "M+": this.getMonth() ...

  5. WPF 依赖属性和附加属性

    依赖属性: 依赖属性就是自己没有值,通过Binding从数据源获得值,就是依赖在别人身上,拥有依赖属性的对象称为依赖对象. 依赖属性的值存在哪里? 在WPF运行时,维护了一个全局的Hashtable存 ...

  6. Node.js编程规范

    摘自:https://github.com/dead-horse/node-style-guide https://github.com/felixge/node-style-guide 2空格缩进 ...

  7. Hibernate的配置文件,hibernate.cfg.xml

    单纯的只针对持久层框架 Hibernate 配置文件的一些总结 一.Hibernate底层原理 1. Hibernate保存原理 目的:把domain对象保存到数据库的表,形成一条记录. sql: i ...

  8. Linux下TCP/socket编程

    写在前面:本博客为本人原创,严禁任何形式的转载!本博客只允许放在博客园(.cnblogs.com),如果您在其他网站看到这篇博文,请通过下面这个唯一的合法链接转到原文! 本博客全网唯一合法URL:ht ...

  9. Flink - CoGroup

    使用方式, dataStream.coGroup(otherStream) .where(0).equalTo(1) .window(TumblingEventTimeWindows.of(Time. ...

  10. Java+Selenium如何解决空指针

    1.问题描述:浏览器获取当期窗口值获取为空.