微服务架构中如何在微服务之间共享java模型

2023-12-23

我正在设计新应用程序的架构。我选择了微服务架构。在我的架构中,我注意到我有不同微服务使用的模型。我想知道是否有一种方法可以在微服务之间共享模型代码,而不是在每个微服务中编写它们。

顺便说一句,我正在为我的应用程序使用 spring boot 框架。


您应该只共享定义微服务 API 的模型,例如原型buff.proto文件或从它们生成的 Java 类。

这通常是通过创建一个单独的项目或将微服务项目转换为多模块项目来完成的,其中模块之一是具有接口定义的精简 API 模块。

微服务之间共享代码没有什么问题,但必须小心。分享太多的内部实现细节,你最终会得到一个分布式单体而不是微服务 https://blog.newrelic.com/engineering/distributed-monolith-vs-microservices/.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

微服务架构中如何在微服务之间共享java模型 的相关文章

随机推荐

  • FlatBuffers 有大小限制吗?

    我可以在 FlatBuffer 中存储 100GB 的字符串吗 10 TB 2023 年您可以购买服务器拥有更多的内存 https www google com search q your data fits in ram 它是否仅受我的服
  • “var foo = function bar (){ ... }”中“bar”的用途是什么?

    在 Douglas Crockford 的书中 他将递归函数写为 var walk the DOM function walk node func func node node node firstChild while node walk
  • 如何在 WordPress 上正确包含 jquery-ui 效果

    我一直在尝试在我的 WordPress 主题中包含 jquery ui 效果 更具体地说是抖动效果 到目前为止 我只能包含 jQuery 脚本 但我真的不知道在哪里放置 ui 脚本以及如何将它们排入队列 这是我的代码 它显然不起作用
  • 带日期轴的javafx折线图

    我正在尝试在 JavaFX 中创建折线图 该折线图应具有一个带数字的轴 y 和另一个带日期的轴 x 日期范围应由用户使用两个日期选择器来选择 现在这是我的问题 折线图只有类别和数字轴 有没有办法将日期整合到图表中 我遇到了同样的问题 唯一的
  • Django、Angular 和 DRF:Django 后端与 API 的身份验证

    我正在构建一个具有 Django 后端 Angular 前端和 REST API 的应用程序 使用 Django REST Framework 供 Angular 使用 当我仍在使用普通前端开发后端内容时 我使用提供的 Django 身份验
  • 使用 Swift 的 UITableView 和 MVVM

    我正在尝试MVVM架构在斯威夫特与UITableView 为此 我创建了示例表视图 任何人都可以建议我是否正确或需要做任何其他改进吗 以下是该架构的类 视图控制器 包含UITableView和它的delegate and datasourc
  • CPAN 安装新模块是否会影响同一实时生产服务器上的 Perl-CGI 应用程序?

    我在 CentOS Linux 网络服务器上有一些 Perl CGI 程序 我希望编写更多需要当前未安装的 Perl 模块的应用程序 在同一实时生产服务器上运行 CPAN 是否会以任何方式影响这些程序 显然 当前不使用这些模块 有一种可能的
  • 具有 Google 会话和帐户选择器的移动应用浏览器的行为

    问题 尝试在移动应用程序之间创建 SSO 和浏览器 我们有什么 我们有一个离子移动应用程序 使用 OAuth 2 0 身份验证 通过 Google 登录 我们有多个适用于 OAuth2 和 SAML 的内部应用程序 因此 我们为 GSuit
  • 从 C# 表单登录 Skype

    我没有找到如何从 C 表单登录到 Skype 有可能这样做吗 例如我在表单中输入用户名和密码 当我单击 登录 时 Skype 实例将启动并使用我的凭据记录我 多谢 您可以使用命令行参数启动 Skype 如下所示 skype exe user
  • Angular cli 排除“ng test --code-coverage”的文件/目录

    我正在运行以下命令来进行单元测试并生成代码代码覆盖率报告 ng test code coverage 它工作正常并在中编写代码覆盖率报告coverage folder 在这里我得到了所有文件和目录覆盖率报告 但我想排除特定的文件 目录src
  • 将 JS 对象数组发布到 Spring MVC 控制器

    我正在尝试将长数组从 jquery load 传递到 spring 控制器 我如何向 spring mvc 控制器发送 js 对象数组 每次发生操作时 都会调用脚本上的无数据警报 Script var arr Array document
  • 如何使用 UI 自动化库单击“窗格”?

    我们有一个应用程序 我需要在其中单击一个窗格 我尝试使用以下代码 我用它来单击按钮 但它给出了不支持的模式异常 InvokePattern click pattern InvokePattern adjust button GetCurre
  • WPF 中的 OpenGL 控件 - 如何操作?

    我需要在我的 WPF 项目中使用 OpenGL 我希望它的安装尽可能简单 但我开始失去希望 我试过了SharpGL 它非常好且易于使用 但它存在大量内存泄漏 并且应用程序在几秒钟后崩溃 不是很有用 所以现在我想知道 这个库有替代方案吗 实际
  • 如何在运行浏览器化脚本之前设置 process.env?

    最初的html来自后端 服务器有一个定义的process env NODE ENV 以及其他环境变量 浏览器化的代码是建造一次 and 在多个环境上运行 staging production等 因此不可能将环境变量内联到浏览器化脚本中 通过
  • 如何在 will_paginate gem 中进行无限滚动

    我正在尝试无限滚动 但我不知道为什么它不起作用 allposts html erb 部分 div class iterate div 职位控制器 class PagesController lt ApplicationController
  • 代码行数旁边的垂直线是什么

    这些线到底是用来做什么的 扩展程序的名称是什么 这些行表示文件中的更改 蓝线表示修改 修改了代码行 绿线表示添加 添加了代码行 红线表示删除 删除了代码行 它们是通过版本控制系统 VCS 扩展 例如 Git 添加的 您可以在上面找到具有相似
  • 基于类和基于对象的语言比较(ECMAScript 规范)

    In a class based object oriented language in general state is carried by instances methods are carried by classes and in
  • 从 MVC 项目访问类库?

    我在一个解决方案中有一个类库项目和 MVC 项目 我的类库具有命名空间 MyStuff Classes 我的 MVC 项目具有命名空间 MyStuff Web 我似乎无法从 mvc 项目访问我的类库 反之亦然 直接或使用 using 指令
  • iPhone 5 的弱光增强模式

    有谁能够在他们的自定义相机应用程序中使用 iPhone 5 的新低光增强模式吗 我尝试了以下代码 但发现没有任何区别 而本机相机应用程序显着提高了亮度 if captureManager backFacingCamera isLowLigh
  • 微服务架构中如何在微服务之间共享java模型

    我正在设计新应用程序的架构 我选择了微服务架构 在我的架构中 我注意到我有不同微服务使用的模型 我想知道是否有一种方法可以在微服务之间共享模型代码 而不是在每个微服务中编写它们 顺便说一句 我正在为我的应用程序使用 spring boot