文档章节

利用服务发现构建公私网混合分布式系统

姚海涛
 姚海涛
发布于 2016/07/17 05:22
字数 426
阅读 103
收藏 0
点赞 0
评论 0

私网服务器的宽带费用较便宜,可以申请多个宽带,每个私网服务器绑定一个宽带。

网络环境描述

公网服务器与其它服务器可通过内网相互访问

这种环境不是本文讲述的重点,省略。

公网服务器与其它服务器不能通过内网相互访问

  • 公网服务器有固定的公网ip。
  • 私网服务器没有固定的公网ip,是动态的,而且80端口已被运营商屏蔽。

软件部署描述

公网服务器

防火墙

  • 对外开放 80 端口(http)、443 端口(http)、xxxx端口(Spring Cloud Config,可以不开放,通过nginx代理,部署到部署到私网服务器内网中更安全)、xxxx端口(Spring Cloud Netflix Eureka Server,可以不开放,通过nginx代理,开启安全性防御更安全)

nginx

  • 静态文件代理到内网的云存储下,如:OSS内网域名:xxx.oss-cn-shenzhen-internal.aliyuncs.com

  • 动态请求代理到 spring cloud api gateway,可部署多个 spring cloud api gateway 做负载

分布式云服务

  • spring cloud config:分布式配置(可选,部署到私网服务器内网中更安全)

  • Spring Cloud Netflix Eureka Server:分布式服务发现服务端

  • Spring Cloud Api Gateway:分布式路由服务,自动代理到服务发现客户端

私网服务器

  • Spring Cloud Netflix Eureka Client:分布式服务发现客户端,注册服务到公网上的服务发现服务端(Spring Cloud Netflix Eureka Server)

© 著作权归作者所有

共有 人打赏支持
姚海涛

姚海涛

粉丝 14
博文 16
码字总数 7359
作品 5
长沙
架构师
华为2018全球金融峰会盘点:金融云扩大优势 力推分布式架构转型

雷锋网AI金融评论消息,4月25日,华为2018全球金融峰会在北京香格里拉饭店召开。本届大会以“新ICT,激发数字化金融转型”为主题,在前一届的云计算、大数据、深度学习等新兴技术广泛应用的基...

AI金融评论 ⋅ 04/25 ⋅ 0

一文读懂混合云:现状,场景,趋势

近日在英特尔网站发现一篇不错的混合云白皮书,详细的描述了混合云的现状、应用场景、发展趋势,整篇文章比较长,结合自己的理解,特别将文中的精华整理了出来。 什么是混合云 混合云不是简单...

云技术实践 ⋅ 03/19 ⋅ 0

Web API应用架构设计分析(1)

Web API 是一种应用接口框架,它能够构建HTTP服务以支撑更广泛的客户端(包括浏览器,手机和平板电脑等移动设备)的框架, ASP.NET Web API 是一种用于在 .NET Framework 上构建 RESTful 应用...

walb呀 ⋅ 2017/12/04 ⋅ 0

基于 PostgreSQL 的集群数据库--CitusDB

CitusDB 是一个基于最新 PostgreSQL 构建的分布式数据库。CitusDB 可对 PostgreSQL 数据库进行伸缩以适合大数据的处理。可在集群中进行自动分片和碎片复制,运行在云端或者混合系统中。数据库...

匿名 ⋅ 2016/03/25 ⋅ 10

Winform混合式开发框架的特点总结

Winform混合式开发框架,是一种支持分布式部署的应用模式,支持直接连接数据库,访问远程WCF服务,访问远程Web API服务等服务的综合性框架,根据不同的需求采用不同的数据接口,是一个适应性...

walb呀 ⋅ 2017/12/04 ⋅ 0

Kubernetes高阶——设计和实现

Kubernetes始于Google 2014 年的一个项目。 Kubernetes的构建基于Google十多年运行大规模负载产品的经验,同时也吸取了社区中最好的意见和经验。 它构建于Docker技术之上,为容器化的应用提供...

m2l0zgssvc7r69efdtj ⋅ 2017/10/24 ⋅ 0

Rainbond:国内首个开源的无服务器PaaS

摘要:好雨核心项目Rainbond近日宣布开源,这是国内首个开源的无服务器PaaS,主要用来为云原生应用的整个交付流程提供生产级支持,包括基础设施管理、容器化改造、微服务架构转型、DevOps支持...

infoQ ⋅ 2017/12/14 ⋅ 0

如何为微服务选择数据库

原文:How to choose a database for your microservices 作者:Jeff Carpenter, InfoWorld 译者:Jackyrong 你的微服务架构需要多种数据模型。你是应该选择混合持久化呢还是多模型数据库? ...

dev_csdn ⋅ 2017/11/14 ⋅ 0

Coreos操作系统

linux大规模服务器部署---前言 1.一个最小的操作系统(A Minimal Operating System) coreos被设计成一个现代的,最小的基础来构建平台,消耗内存比平常系统少40%; 了解更多using coreos 2.自...

Kernalzcy ⋅ 2014/08/08 ⋅ 0

CitusDB —— 基于 PostgreSQL 的集群数据库

CitusDB 是一个基于最新 PostgreSQL 构建的分布式数据库。CitusDB 可对 PostgreSQL 数据库进行伸缩以适合大数据的处理。可在集群中进行自动分片和碎片复制,运行在云端或者混合系统中。数据库...

oschina ⋅ 2016/06/18 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

十五周二次课

十五周二次课 17.1mysql主从介绍 17.2准备工作 17.3配置主 17.4配置从 17.5测试主从同步 17.1mysql主从介绍 MySQL主从介绍 MySQL主从又叫做Replication、AB复制。简单讲就是A和B两台机器做主...

河图再现 ⋅ 53分钟前 ⋅ 0

docker安装snmp rrdtool环境

以Ubuntu16:04作为基础版本 docker pull ubuntu:16.04 启动一个容器 docker run -d -i -t --name flow_mete ubuntu:16.04 bash 进入容器 docker exec -it flow_mete bash cd ~ 安装基本软件 ......

messud4312 ⋅ 今天 ⋅ 0

OSChina 周一乱弹 —— 快别开心了,你还没有女友呢。

Osc乱弹歌单(2018)请戳(这里) 【今日歌曲】 @莱布妮子 :分享吴彤的单曲《好春光》 《好春光》- 吴彤 手机党少年们想听歌,请使劲儿戳(这里) @clouddyy :小萝莉街上乱跑,误把我认错成...

小小编辑 ⋅ 今天 ⋅ 7

mysql in action / alter table

change character set ALTER SCHEMA `employees` DEFAULT CHARACTER SET utf8mb4 DEFAULT COLLATE utf8mb4_general_ci ;ALTER TABLE `employees`.`t2` CHARACTER SET = utf8mb4 , COLLAT......

qwfys ⋅ 今天 ⋅ 0

Java 开发者不容错过的 12 种高效工具

Java 开发者常常都会想办法如何更快地编写 Java 代码,让编程变得更加轻松。目前,市面上涌现出越来越多的高效编程工具。所以,以下总结了一系列工具列表,其中包含了大多数开发人员已经使用...

jason_kiss ⋅ 昨天 ⋅ 0

Linux下php访问远程ms sqlserver

1、安装freetds(略,安装在/opt/local/freetds 下) 2、cd /path/to/php-5.6.36/ 进入PHP源码目录 3、cd ext/mssql进入MSSQL模块源码目录 4、/opt/php/bin/phpize生成编译配置文件 5、 . ./...

wangxuwei ⋅ 昨天 ⋅ 0

如何成为技术专家

文章来源于 -- 时间的朋友 拥有良好的心态。首先要有空杯心态,用欣赏的眼光发现并学习别人的长处,包括但不限于工具的使用,工作方法,解决问题以及规划未来的能力等。向别人学习的同时要注...

长安一梦 ⋅ 昨天 ⋅ 0

Linux vmstat命令实战详解

vmstat命令是最常见的Linux/Unix监控工具,可以展现给定时间间隔的服务器的状态值,包括服务器的CPU使用率,内存使用,虚拟内存交换情况,IO读写情况。这个命令是我查看Linux/Unix最喜爱的命令...

刘祖鹏 ⋅ 昨天 ⋅ 0

MySQL

查看表相关命令 - 查看表结构    desc 表名- 查看生成表的SQL    show create table 表名- 查看索引    show index from  表名 使用索引和不使用索引 由于索引是专门用于加...

stars永恒 ⋅ 昨天 ⋅ 0

easyui学习笔记

EasyUI常用控件禁用方法 combobox $("#id").combobox({ disabled: true }); ----- $("#id").combobox({ disabled: false}); validatebox $("#id").attr("readonly", true); ----- $("#id").r......

miaojiangmin ⋅ 昨天 ⋅ 0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部