快速构建 DMS Web 应用程序之利刃: Flask + Celery + Redis + Cloudant(7)
- UID
- 1066743
|
快速构建 DMS Web 应用程序之利刃: Flask + Celery + Redis + Cloudant(7)
处理数据本项目中因涉及大量的数据操作,采用 Pandas 对数据进行处理。Pandas 是 Python 的一个数据分析包,可用来进行数据分析,并提供了很多标准库和 API,能够快速地处理数据和函数,例如进行数据读取、过滤、排序、分组、选取、清洗等操作。
通过 $pip install pandas 命令安装 Pandas,并通过 import pandas as pd 引入。Pandas 对文件和数据都有良好的支持 API,如:
- 读取文件:pd.read_excel(filename); pd.read_pickle(filename); pd.read_csv(filename)
- 存储文件:pd.to_csv(filename); pd.to_pickle(filename); pd.to_excel(filename)
存储数据数据处理完毕后,我们要将数据存入 Salesforce。可以通过 Simple Salesforce 来实现:
- 运行 $ sudo pip intall simple_salesforce 命令安装 Simple Salsesforce。
- 在在脚本中引入 Salsesforce:from simple_salesforce import Salesforce 并进行认证配置。
- 通过 API 生成 sf = Salesforce(instance_url=cred['instance_url'], session_id='') 并使用 sf.apexecute 引入 Apex 语言 (一种面向对象的程序设计语言,可在大多数进程中执行编程功能),即可将数据存储进此对象中。
- 使用 sf 对象保存数据:sf.Contact.create({'LastName':'Smith','Email':'example@example.com'})。
免费试用 IBM Cloud
利用 快速轻松地构建您的下一个应用程序。您的免费帐户从不过期,而且您会获得 256 MB 的 Cloud Foundry 运行时内存和包含 Kubernetes 集群的 2 GB 存储空间。 并确定如何开始。如果您不熟悉 IBM Cloud,请查阅 。
部署项目本项目部署在 IBM Cloud 上。首先登录 IBM Cloud,进入仪表盘界面。点击目录,出现一系列可使用服务,选择 Python 入口,填写信息后,点击 Create 按钮,创建应用环境。一段时间后,仪表盘中则会出现新创建的应用环境。之后,则可以上传应用至 IBM Cloud。
图 11. IBM Cloud 项目目录
图 12. 创建 Cloud Foundry 应用程序
上传应用,需要用到 IBM Cloud CLI,可以在刚刚创建的应用入门页面下载。
- 首先要通过命令告诉 Cloud Foundry 所使用的 URL:$ bluemix api https://api.ng.bluemix.net。
- 然后通过命令登录至 IBM Cloud 环境。使用命令 $ bluemix login -u username -o organizationname 打开项目所在根目录,确保当前目录有 manifest.yml 文件。
- 然后使用命令 $ bluemix app push 上传应用并根据 manifest.yml 文件中所写的内容进行配置。
manifest.yml 文件应放置在工程的根目录下,如清单 6 所示,文件内容通过 YAML 缩进格式来表现层级关系:
清单 6. Manifest.yml 示例1
2
3
4
5
6
7
8
9
10
11
12
13
| ---
command: pip install --upgrade pip
applications:
- name: GMTDEV
memory: 512M
instances: 1
command: gunicorn run:app --workers=4
- name: GMTCeleryDEV
memory: 512M
instances: 1
no-route: true
command: celery -A tasks.celery worker --loglevel=info
health-check-type: process
|
上传完成后,可以在仪表盘中查看上传状态。显示下图效果,则此时已部署成功:
图 13. 应用程序管理仪表盘 |
|
|
|
|
|