准备:

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. day_11py学习

    ''' 字典增加和删除 1.添加 xxx[新的key] = value 2.删除 del xxx[key] 3.修改 xxx[已存在的key] = new_value 4.查询 xxx.get(key ...

  2. 洛谷P1316 丢瓶盖【二分】【贪心】

    题目:https://www.luogu.org/problemnew/show/P1316 题意: 给定a个点的坐标(在一条直线上),现在要选b个点,问这b个点的最近距离的最大值是多少. 思路: 感 ...

  3. MySQL的JDBC驱动源码解析

    原文:   MySQL的JDBC驱动源码解析 大家都知道JDBC是Java访问数据库的一套规范,具体访问数据库的细节有各个数据库厂商自己实现 Java数据库连接(JDBC)由一组用 Java 编程语言 ...

  4. hung_task_timeout_secs和blocked for more than 120 seconds的解决方法

    Linux系统出现hung_task_timeout_secs和blocked for more than 120 seconds的解决方法 Linux系统出现系统没有响应. 在/var/log/me ...

  5. 查询执行成本高(查询访问表数据行数多)而导致实例 CPU 使用率高是 MySQL 非常常见的问题

    MySQL CPU 使用率高的原因和解决方法_产品性能_常见问题_云数据库 RDS 版-阿里云 https://help.aliyun.com/knowledge_detail/51587.html ...

  6. PP图和QQ图 检查2个数据集是否符合同一分布

    1.QQ图检查2个数据集是否符合同一分布,Purpose:Check If Two Data Sets Can Be Fit With the Same Distribution PP图和QQ图 - ...

  7. java 网络编程(四)TCP通讯

    客户端: package cn.sasa.TcpDemo; import java.io.IOException; import java.io.InputStream; import java.io ...

  8. xpath定位方法详解

    1.xpath较复杂的定位方法: 现在要引用id为“J_password”的input元素,可以像下面这样写: WebElement password = driver.findElement(By. ...

  9. Apache Spark支持三种分布式部署方式 standalone、spark on mesos和 spark on YARN区别

    链接地址: http://dongxicheng.org/framework-on-yarn/apache-spark-comparing-three-deploying-ways/ Spark On ...

  10. mvc,EntityFramework调用分页存储过程

    此文讲述mvc4+entityframework6+sqlserver2008环境下调用存储过程,实现分页. 1.分页存储过程代码如下: 分页原理用的row_number()和over()函数实现(没 ...