zoukankan      html  css  js  c++  java
  • 论 微服务 和 Entity Framework 对 数据 的 割裂

    微服务 的 本质 是 面向对象,

    微服务 是 面向对象 对 数据中心 发起的挑战, 

    在 微服务 架构下, “数据为中心” 的 传统架构 被 严重 割裂,

    微服务 的 先天矛盾, 是 对象 和 数据 的 矛盾 。

     

    从 对象 和 数据 的 矛盾, 我们 可以再引出 “对象 和 数据 的 第一次 战争”,  即  O-R  Mapping  ,

    或者说 各种  ORM  框架 的 大繁荣 时期 和 历程  。

     

    Entity Framework ,  是 ORM 发展 到 巅峰 的 产物  。

    Entity Framework (以下 简称  EF) 的 目的 是 建立一个 抽象层, 这个 抽象层 以 纯粹 的 对象 的 方式 访问数据, 

    取代 直接访问数据 的 方式 (如 Sql) 。

    这可能吗 ?

     

    所以, EF 和 微服务 一样, 对 数据 造成了 严重 的 割裂,

    数据割裂 带来 的 结果 就是 效率 低下 。

    开发效率 低下, 运行效率 低下, 维护效率 低下, 扩展效率 低下, 应对变化 的 效率 低下  。

     

    可以说, 微服务 和  EF  是 这种 用对象割裂数据  思想 的 两个 代表 。

     

    对象, 只能 是 访问数据 的 辅助, 不能 取代 数据 的 地位 。

     

    我认为, 未来,  微服务 和 EF  并不会是 业务系统 开发 / 架构 的 唯一的路,

    还会出现一条 和 微服务 EF 相对 的 道路, 就是 以 数据为中心 , 以 面向对象 为 设计 的 业务系统 开发/架构   之路 。

     

    这条道路, 看起来 富有 “复古”之风, 但, 复古之美 在于 简洁之美 。

    复古 而 新生 。

     

    相对于 微服务, 我提倡 SOA 。

    我认为 大力 发展 SOA ,  比 微服务 的 意义 更大 。

    有关 SOA ,  可以 参考 我写的 另外一篇文章  《谈谈 SOA》     https://www.cnblogs.com/KSongKing/p/10133963.html

  • 相关阅读:
    Swift入门篇-Hello World
    Swift入门篇-swift简介
    Minecraft 插件 world edit 的cs 命令
    搭建本地MAVEN NEXUS 服务
    MC java 远程调试 plugin 开发
    企业内部从零开始安装docker hadoop 提纲
    javascript 命令方式 测试例子
    ca des key crt scr
    JSF 抽象和实现例子 (函数和属性)
    form 上传 html 代码
  • 原文地址:https://www.cnblogs.com/KSongKing/p/10124126.html
Copyright © 2011-2022 走看看