# TextPlantform **Repository Path**: alex92/textplantform ## Basic Information - **Project Name**: TextPlantform - **Description**: No description available - **Primary Language**: Java - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2017-06-23 - **Last Updated**: 2020-12-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README #TextPlantform 一个分布式的文本综合处理系统 系统主要是满足3个方面的要求 1. 满足高并发调用 2. 实现文本分类 3. 工程要容易维护,便于新的应用程序的平行拓展 ###ATTENTION! ***将word2vec训练的词向量放到textplantform-model/src\main\resources\model文件夹中*** ***所有`java -jar` 运行的代码都加上-Dfile.encoding=UTF-8参数!减少不必要的错误*** 那文件太大就没往git上放. ------- 基于zookeeper及dubbo组件提供高性能RPC服务 1. textplantform-common是工程中通用的接口,因为消费者及生产者接口是相同的,防止一个文件复制两份,所以公用接口放到这个模块中,原则上这个里面应该放每个模块公用的接口(比如基于dubbo及消费者与生产者接口是相同的,接口放在这个里面,各自的实现放在model或者web模块中)及配置类选一些通用类,比如工具类.程序入口在org.textplantform.common.App 2. textplantform-model是工程中的服务提供者,是生产者角色,可以用来提供文本分类服务,为其它模块提供功能接口文件放到common里面,程序入口在org.textplantform.model.App 3. textplantform-web是提供web访问接口,是消费者角色,为其它模块提供功能接口文件放到common里面 4. textplantform-workbench也就是原来的deep4jworkbench工程,现在作为一个子工程,程序入口在cn.edu.bjtu.workbench.AppWeb 5. textplantform-lablelsys也就是原来的标注系统工程,现在作为一个子工程,web程序,打包成war文件直接部署 6. textplantform-persona(未建立)是实现用户输入习惯等分析,为其它模块提供功能接口文件放到common里面 ------ ###结构 ![输入图片说明](https://git.oschina.net/uploads/images/2017/0702/153313_4bed8c45_462723.png "在这里输入图片标题") ------ 目前各个模块已经配置写的RPC调用: 1. textplantform-common中:LabelManagerService 可以获取类标列表,NetworkModelService及ModelFileTransService提供模型配置及模型文件传输,使用两个接口的原因是分别使用不同的协议. 2. textplantform-model提供分类调用接口ClassificationService,它同时使用common中提供的接口获取信息 3.. textplantform-web消费者,暂时只是用来测试使用,它会使用textplantform-model中的ClassificationService接口. ------ 启动顺序,先启动org.textplantform.common.App,然后启动org.textplantform.model.App,org.textplantform.model.App可以启动多个,但是注意端口占用问题使用`java -Dmodel.server.dubbo.port=6666`来解决. 相关技术栈(技术点): * java/java ee * maven * tomcat/nginx * spring * zookeeper * dubbo * git/eclipse/intellij idea * python * hdfs/hadoop/spark/hive/scala/sbt * html5/css3/javascript/d3/hightcharts/ajax * bootstrap/angularjs/vue * kafaka或者其它messagequeue(暂时未使用) * shell * linux/rpc/mysql/http/常用命令/其他计算机基础 原来的deep4jworbench工程将合并过来wechat工程暂时不合并,wechat工程可以加入textplantform-common依赖及dubbo依赖之后,统一接口进行开发 模型的分发,配置文件