高负载应用程序的数据库可扩展性?

2024-05-26

我见过一些应用程序拥有集群 Web 服务器(例如 10 到 20 个服务器),以具有可扩展性,可以在其中分发 在网络服务器之间加载。但我总是看到所有网络服务器都使用单个数据库。

现在考虑任何电子商务或铁路 Web 应用程序,其中有数百万用户在任何时间点访问该应用程序。 为了在网络服务器端进行扩展,我们可以使用服务器集群,但是如何扩展数据库呢?因为我们不能像多个网络服务器那样拥有多个数据库,因为一个数据库将具有与其他数据库不同的状态:)

UPDATE:-在关系 DBMS 中无法扩展数据库,而只能在 mongo db 等 NO SQL 数据库中扩展数据库吗?


数据库方面有两种不同的可扩展性。一种是读取可扩展性,另一种是写入可扩展性。您可以通过垂直扩展来实现这两个目标,这意味着在一定程度上添加更多的 CPU 和 RAM。但是,如果您需要扩展超过单台机器限制的非常大的数据,则应该使用只读副本来满足读取可扩展性的需求,并使用分片来满足写入可扩展性的需要。

分片的工作方式并不像将一些实体(鞋子)放到一台服务器上,而将其他实体(T 恤)放到另一台服务器上。它的工作原理就像将一些鞋子和一些 T 恤放入一台机器中,并为其余实体执行此操作。

大容量数据管理的另一个解决方案是使用微服务,它与您的示例更相似。我的意思是提供鞋子服务和 T 恤服务。通过微服务,您可以将代码和数据划分到不同的项目以及不同的应用程序和数据库服务器。因此,您可以以不同的方式处理数据不同部分的可扩展性。

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

高负载应用程序的数据库可扩展性? 的相关文章

  • 如何默认将 Maven 插件附加到阶段?

    我有一个 Maven 插件应该在编译阶段运行 所以在项目中consumes我的插件 我必须做这样的事情
  • 为什么 i++ 不是原子的?

    Why is i Java 中不是原子的 为了更深入地了解 Java 我尝试计算线程中循环的执行频率 所以我用了一个 private static int total 0 在主课中 我有两个线程 主题 1 打印System out prin
  • Java中反射是如何实现的?

    Java 7 语言规范很早就指出 本规范没有详细描述反射 我只是想知道 反射在Java中是如何实现的 我不是问它是如何使用的 我知道可能没有我正在寻找的具体答案 但任何信息将不胜感激 我在 Stackoverflow 上发现了这个 关于 C
  • Play框架运行应用程序问题

    每当我尝试运行使用以下命令创建的新 Web 应用程序时 我都会收到以下错误Play http www playframework org Error occurred during initialization of VM Could no
  • Java JDBC:更改表

    我希望对此表进行以下修改 添加 状态列 varchar 20 日期列 时间戳 我不确定该怎么做 String createTable Create table aircraft aircraftNumber int airLineCompa
  • 如何找到给定字符串的最长重复子串

    我是java新手 我被分配寻找字符串的最长子字符串 我在网上研究 似乎解决这个问题的好方法是实现后缀树 请告诉我如何做到这一点或者您是否有任何其他解决方案 请记住 这应该是在 Java 知识水平较低的情况下完成的 提前致谢 附 测试仪字符串
  • 给定两个 SSH2 密钥,我如何检查它们是否属于 Java 中的同一密钥对?

    我正在尝试找到一种方法来验证两个 SSH2 密钥 一个私有密钥和一个公共密钥 是否属于同一密钥对 我用过JSch http www jcraft com jsch 用于加载和解析私钥 更新 可以显示如何从私钥 SSH2 RSA 重新生成公钥
  • Final字段的线程安全

    假设我有一个 JavaBeanUser这是从另一个线程更新的 如下所示 public class A private final User user public A User user this user user public void
  • Android MediaExtractor seek() 对 MP3 音频文件的准确性

    我在使用 Android 时无法在eek 上获得合理的准确度MediaExtractor 对于某些文件 例如this one http www archive org download emma solo librivox emma 01
  • 列出jshell中所有活动的方法

    是否有任何命令可以打印当前 jshell 会话中所有新创建的方法 类似的东西 list但仅适用于方法 您正在寻找命令 methods all 它会打印所有方法 包括启动 JShell 时添加的方法 以及失败 被覆盖或删除的方法 对于您声明的
  • Spring @RequestMapping 带有可选参数

    我的控制器在请求映射中存在可选参数的问题 请查看下面的控制器 GetMapping produces MediaType APPLICATION JSON VALUE public ResponseEntity
  • Java TestNG 与跨多个测试的数据驱动测试

    我正在电子商务平台中测试一系列商店 每个商店都有一系列属性 我正在考虑对其进行自动化测试 是否有可能有一个数据提供者在整个测试套件中提供数据 而不仅仅是 TestNG 中的测试 我尝试不使用 testNG xml 文件作为机制 因为这些属性
  • 如何将 pfx 文件转换为 jks,然后通过使用 wsdl 生成的类来使用它来签署传出的肥皂请求

    我正在寻找一个代码示例 该示例演示如何使用 PFX 证书通过 SSL 访问安全 Web 服务 我有证书及其密码 我首先使用下面提到的命令创建一个 KeyStore 实例 keytool importkeystore destkeystore
  • 在 Mac 上正确运行基于 SWT 的跨平台 jar

    我一直致力于一个基于 SWT 的项目 该项目旨在部署为 Java Web Start 从而可以在多个平台上使用 到目前为止 我已经成功解决了由于 SWT 依赖的系统特定库而出现的导出问题 请参阅相关thread https stackove
  • 如何从终端运行处理应用程序

    我目前正在使用加工 http processing org对于一个小项目 但是我不喜欢它附带的文本编辑器 我使用 vim 编写所有代码 我找到了 pde 文件的位置 并且我一直在从 vim 中编辑它们 然后重新打开它们并运行它们 重新加载脚
  • 如何跨多个表强制执行 CHECK 约束

    我有一个在 Microsoft SQL Server 2012 Express 中记录奶牛繁殖信息的数据库 显然 一头牛只有在出生后才能配种 并且在其一生中可能会配种多次 我需要在我的数据库中强制执行这些约束 我目前已经根据下图安排了一个架
  • 使用 JMF 创建 RTP 流时出现问题

    我正处于一个项目的早期阶段 需要使用 RTP 广播DataStream创建自MediaLocation 我正在遵循一些示例代码 该代码目前在rptManager initalize localAddress 出现错误 无法打开本地数据端口
  • 当我从 Netbeans 创建 Derby 数据库时,它存储在哪里?

    当我从 netbeans 创建 Derby 数据库时 它存储在哪里 如何将它与项目的其余部分合并到一个文件夹中 右键单击Databases gt JavaDB in the Service查看并选择Properties This will
  • 将 List 转换为 JSON

    Hi guys 有人可以帮助我 如何将我的 HQL 查询结果转换为带有对象列表的 JSON 并通过休息服务获取它 这是我的服务方法 它返回查询结果列表 Override public List
  • 节拍匹配算法

    我最近开始尝试创建一个移动应用程序 iOS Android 它将自动击败比赛 http en wikipedia org wiki Beatmatching http en wikipedia org wiki Beatmatching 两

随机推荐

  • 无需导航到设置页面即可打开定位服务?颤动飞镖

    我们正在从 Flutter 迁移到 Flutter 我们用这个线程来 在 Flutter 中如何实现这一点 当前导航到设置的临时代码 Future getCurrentLocation async Position position try
  • 将中间件与 Golang Gorilla mux 子路由器结合使用

    如何将中间件应用到 Go 中大猩猩工具包 http www gorillatoolkit org 多路复用器子路由器 我有以下代码 router mux NewRouter StrictSlash true apiRouter router
  • Django - 一个视图中的多个模型(表)

    操作系统 Windows10 Python 3 7 4 姜戈 2 1 我想展示这个模型 像这样在此输入图像描述 https i stack imgur com 2UERg jpg 但我不知道 我怎样才能做到这一点 我尝试了三个月来解决这个问
  • R 热图中的颜色标签(文本)

    我正在尝试在 R 中制作一个热图 其中标签文本是彩色的 以指示数据点来自哪个组 我目前正在使用 heatmap 2 但很乐意使用另一个包 heatmap 2 data matrix data trace none dendrogram no
  • 在Qt中,如何正确实现委托?

    我遵循模型 视图 控制器范例 我很确定模型和视图是正确的 但我认为我的代表做错了一些事情 一切都 有效 除了第一次单击控件只是 点亮控件 而第二次单击与之交互之外 这是代表通常的实施方式吗 我的实现需要大量的构造和销毁 由scoped pt
  • python 队列获取大小,使用 qsize() 还是 len()?

    我见过这样的例子qsize and len 已用于计算队列的大小 两者有什么区别 对于大多数容器 您需要len but Queue Queue实际上并不支持len 这可能是因为它很旧 或者因为在多线程环境中获取队列的长度并不是特别有用 无论
  • 尝试使用 Spring boot CLI 加密时出现错误“‘encypt’不是有效命令”

    我正在尝试使用 Spring boot CLI 1 5 7 加密密码 spring encrypt mysecret key ashish 我收到此命令的以下错误 encypt is not a valid command See help
  • JavaScript 检查 Gmail 未读邮件计数

    在javascript中如何获取当前登录的gmail帐户的未读电子邮件数量 相关问题 Google 是否提供有关此类内容的任何文档 这是您正在寻找的文档 http code google com apis gmail docs http c
  • Postgres中不存在函数convert_from(字符变化,未知)[重复]

    这个问题在这里已经有答案了 当我尝试在下面的代码中从 unicode 转换为 utf8 时 函数convert from 字符变化 未知 不存在 发生错误 select convert from artists UTF8 from song
  • Jersey 客户端异步 POST 请求不等待响应

    我创建了一个简单的 Jersey 客户端 它能够成功地使用有效负载执行 POST 请求 但现在它正在等待来自 http 端点的响应 public void callEndpoint String endpoint String payloa
  • Ruby 多维数组

    也许只是我缺乏在这里找到东西的能力 这就是问题所在 但我找不到任何关于如何在 Ruby 中创建多维数组的信息 有人可以给我一个如何做的例子吗 严格来说 在 Ruby 中创建多维数组是不可能的 但是可以将一个数组放入另一个数组中 这与多维数组
  • 确认 RabbitMQ 消息是否有超时?

    我想设置一个超时时间 超过该超时时间后 出队的消息将自动被 NACK 拒绝 当我将消息出队时 我会等待消息通过套接字传输并且另一方确认其接收 我是否需要保留计时器列表 或者 RMQ 可以自动处理这个列表吗 private void Run
  • 如何编写从管道输入读取的 powershell 函数?

    SOLVED 以下是使用管道输入的函数 脚本的最简单示例 每个的行为都与通过管道传输到 echo cmdlet 相同 作为函数 Function Echo Pipe Begin Executes once before first item
  • 某些数据结构是否比其他数据结构更适合函数式编程?

    In 现实世界哈斯克尔 http book realworldhaskell org 有一个标题为 没有数组或哈希表的生活 的部分 其中作者建议在函数式编程中首选列表和树 而在命令式程序中可能会使用数组或哈希表 这是有道理的 因为在创建新列
  • 使用 _POSIX_C_SOURCE 2 的 Clang 未知类型名称“siginfo_t”,为什么?

    Update结果我的讲师会接受按照 GNU99 标准编写的代码 因此 正如 User1 指出的那样 我使用了 GNU SOURCE在我的节目开始时 看man feature test macros了解更多信息 感谢您帮助我理解 在带有 Cl
  • 使用 SpreadsheetLight 进行行计数

    我正在寻找一个类似于 DataTable Rows Count 的函数 它可以与 SLDocument 一起使用来找出有多少行中有数据 SpreadsheetLight 中有可用的东西吗 还有其他方法可以实现这一目标吗 Brendan SL
  • 单击任何 EditText 时屏幕向上滚动

    我有一个屏幕 有 4 个编辑文本 如菜单名称 菜肴名称 标签和价格 我需要在单击它时将我的标签 Edittext 设置为顶部 56dip 现在一切正常 当我单击标签 EditText 时 它会像我想要的那样向上移动 我卡在哪里 向上移动布局
  • Bootstrap 切换导航项在单击后保持打开状态

    我有简单的 Bootstrap 3 切换导航 ul class nav navmenu nav clearfix li class navmenu brand dropdown clearfix a href class dropdown
  • 发布包含下划线 (_) 的 url

    我发布的 url 参数包含下划线 sample http sdsdsds asasasahjhd com dsdsdsd login json 我这样发布 HttpClient httpclient new DefaultHttpClien
  • 高负载应用程序的数据库可扩展性?

    我见过一些应用程序拥有集群 Web 服务器 例如 10 到 20 个服务器 以具有可扩展性 可以在其中分发 在网络服务器之间加载 但我总是看到所有网络服务器都使用单个数据库 现在考虑任何电子商务或铁路 Web 应用程序 其中有数百万用户在任