微服务
ZHBR_F1
我们是来自北京中恒博瑞研发中心的一群工程师,因为共同的目标,我们从五湖四海走到了一起。2017年6月份,我们的研发平台F1平台就要发布第三代了。
展开
-
F1V3.0-5 平台3.0微服务架构设计
F1V3.0-5 F1平台3.0微服务架构设计 一、平台3.0整体架构设计与原有osgi框架体系模式不同,微服务体系下更加讲究模块化,在功能上更深一步解耦,如下图: 新版平台做了分工更加明确的开发体系、功能体系:模块化的前端组织形式;基于代理的统一请求处理;统一的开放接口-zuul;统一的服务注册中心-eureka;统一的配置管理-configserver;基于o原创 2017-06-21 10:23:04 · 1333 阅读 · 0 评论 -
F1V3.0-12 微服务开发规范
微服务划分原则按功能模块划分微服务之间减少互相调用微服务端4大模块原则微服务一个功能模块做成一个普通微服务interface对外提供接口starter用自动装配的方式在微服务启动时加载一些公共组件util经常用到的一些工具类库 命名规范服务命名采用递进式命名方式,用'-'作为间隔符。例如:f1-permission表示f1平台的授权相关的微服务模块,f1-starter原创 2017-06-21 10:25:16 · 3578 阅读 · 0 评论 -
F1V3.0-16 快速开发一个微服务
快速开发一个微服务新建maven项目 创建一个简单的maven项目跳过archetype选择 用f1-parent做父模块 点击"finish"完成项目的创建。编写pom文件 通过搜索找到f1-starter和spring-boot-starter-web,把它们添加为依赖。 然后保存pom.xml 如果想要在改了代码后不会原创 2017-06-21 10:29:29 · 1682 阅读 · 0 评论 -
F1V3.0 F1平台2.X主要优缺点
F1平台2.x采用OSGI架构,OSGi 是由OSGi联盟发起的以java为技术平台的动态模块化规范,有其自身的优缺点。1、OSGI优点1.1、模块化模块化的标准有三点:一是要保证每个模块在逻辑和功能方面都是完整独立的来增加模块的可重用性;二是要求每个模块都应该定义良好的外部接口和依赖项以便与其他模块松散耦合;三是模块应该将内部包和外部模块有效的隔离,来避免内部包的更新对外部模块的影响。普通的 ja原创 2017-06-20 12:08:03 · 546 阅读 · 0 评论 -
F1V3.0-23 微服务打包发布部署
服务打包单个应用打包eclipse打包1.项目右键选择Run As2选择Maven clean3 Run As 选择Maven install在项目target目录下可以看到打包后的文件cmd命令行打包打开cmd界面进入项目pom所在位置,如下图进入 cd 进入E:\workspace\f1\f1-microService\f1-microService\f1-appendant执行如下命令:mv原创 2017-06-22 16:56:03 · 1396 阅读 · 0 评论 -
F1V3.0-21 微服务旧版本升级
由于我们微服务的诸多好处,很多基于F12.0的项目必将大量迁移,整改成微服务项目,我们该如何进行升级呢?本文将做一个特殊说明,让你在迁移项目时少走弯路。1 新建maven项目命名为f1-xxxxx(推荐)1.1 编写pom文件本文提供一个通用模板如下所示:<?xml version="1.0" encoding="utf-8"?><project xmlns="http://maven.apach原创 2017-06-22 14:27:13 · 860 阅读 · 0 评论 -
F1V3.0-17 微服务常用功能开发
微服务常用功能开发 本文中的功能是以7.1快速开发一个微服务 为基础, 如果不了解,请先阅读那一篇博客 使用统一权限(authserver)在当前的微服务中依赖f1-starter-auth就有了授权认证,如果没有授权的请求来访问,就会被拒绝。 f1-starter会级联依赖f1-starter-auth,所以7.1快速开发一个微服务 中只依赖原创 2017-06-24 16:19:02 · 2577 阅读 · 0 评论 -
swagger与oauth的集成使用
1.Swagger定义Swagger 是一个规范和完整的框架,用于生成、描述、调用和可视化 RESTful 风格的 Web 服务。总体目标是使客户端和文件系统作为服务器以同样的速度来更新。文件的方法,参数和模型紧密集成到服务器端的代码,允许API来始终保持同步。个人觉得,swagger的一个最大的优点是能实时同步api与文档。在项目开发过程中,发生过多次:修改代码但是没有更新文档,前端还是按照...原创 2018-12-10 17:37:03 · 4079 阅读 · 0 评论 -
剖析基于Apache Common-Pool 实现 的PYDInfluxDBPool 主要逻辑(源代码)。
因开发需要,我们大数据组,基于Apache Common-Pool,对 InfluxDB的封装了一个连接池,现就主要逻辑涉及到的源代码(与Apache Common-Pool交叉)进行梳理。我们将从以下四个方面进行梳理:1、连接池初始化的操作:2、出借连接对象时的逻辑。3、归还连接对象时的逻辑。4、主要的异常信息 列举(与Apache Common-Pool交叉),1...原创 2018-12-24 19:02:30 · 737 阅读 · 0 评论 -
F1V3.0-11 开发规范——常规模式
开发规范——常规模式在使用3.0版本的F1平台进行开发时,我们定义了4种开发节点,三个角色,给出大家共同遵循的一个开发组织模式。 四种节点 微服务开发、微服务中心、网站中心、前端模块开发 环境应用微服务开发(个人机)jdk、Eclipse开发中的微服务微服务中心(服务器)jdk公共服务(eureka,zull……等微服务)、基础服务(消息、权限、模型……等微服务)、原创 2017-06-21 10:18:13 · 676 阅读 · 0 评论 -
F1V3.0-14 微服务开发环境
微服务开发环境 微服务中心环境搭建jdk安装jdk1.8 下载地址:http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html 公共服务和基本服务的配置和启动公共服务相关springCloud的介绍请看:Spring Cloud 介绍 名称对应原创 2017-06-21 10:26:40 · 1179 阅读 · 1 评论 -
F1V3.0-2 平台2.X优点继承及问题解决
上篇博文中讲到了平台2.X的优缺点这篇博文讲解微服务架构是怎么发扬这些优点以及避免这些缺点的。1、优点继承和发扬OSGI是模块化框架,符合模块化的三个标准,具有模块化、依赖管理、动态加载等优点。但归根结底,OSGI还是单体应用,有单体应用的一些固有问题,如资源冲突、可靠性等。 使用微服务架构后,每个服务都是一个独立的应用,是更为彻底的模块化。依赖管理、动态加载自然而然得到发扬。每个微服务都是独立应原创 2017-06-20 16:01:37 · 467 阅读 · 0 评论 -
F1V3.0-7 Spring Cloud 介绍
目录一、SpringCloud简介二、SpringCoud组件介绍2.1 服务注册与发现:eureka eureka简介 如何使用Eureka进行服务注册和发现 实际开发过程 eureka配置项解读 测试环境参考配置2.2 配置服务器:config Server configServer简介 服务器配置2.3 网关:zuul z原创 2017-05-16 16:08:31 · 1241 阅读 · 0 评论 -
F1V3.0-8 Springboot基本使用及要点
Springboot基本使用及要点原创 2017-05-15 19:17:52 · 1145 阅读 · 0 评论 -
F1V3.0-9 微服务功能介绍
平台提供了四种组件,util,starter,interface,microserver,如下图所示。本文将对每一类组件进行详细说明,帮助您更好的理解平台。1.平台基础组件Util:包含f1-core,f1-data,f1-exception,平台最基础组件,包括一些工具类等。 util 说明 功能 f1-core 基础核心包 ServiceAgent.java,提供模型工具调原创 2017-06-19 16:09:01 · 863 阅读 · 1 评论 -
Flink读取与写入kafka数据
1. 基本概念Flink是一款分布式的计算引擎,它可以用来做批处理,即处理静态的数据集、历史的数据集;也可以用来做流处理,即实时地处理一些实时数据流,实时地产生数据的结果;也可以用来做一些基于事件的应用。kafka是一种高吞吐量的分布式发布订阅消息系统,它可以处理消费者规模的网站中的所有动作流数据。这种动作(网页浏览,搜索和其他用户的行动)是在现代网络上的许多社会功能的一个关键因素。这些数据通...原创 2019-01-02 13:32:31 · 7789 阅读 · 3 评论