`
aa87963014
  • 浏览: 153996 次
  • 性别: Icon_minigender_1
  • 来自: 布尼塔尼亚
社区版块
存档分类
最新评论

坚定Freyja2的发展方向

 
阅读更多

今天为了找一个错花了一个半小时,最终发现有一个小地方写错了。

 

虽然这个错误与Freyja没什么关系,但是我从中对Freyja做了下反省:

我在开始动工Freyja1的时候是非常有信心的,因为我觉得Freyja不是为了轮子而轮子,而是从实际应用出发解决ORM框架带来的性能上的提升,之前也说过,ORM能解析sql 能掌握数据,所以能从中改造获得性能上的提升。

对比JDBC而言,ORM才是真正地主人,JDBC只不过是数据库的傀儡。

 

到了Freyja2,我发现如果层次设计得足够好,完全可以在上层配合缓存把整个数据层给屏蔽掉。

这样一来完全不用去处理缓存,所以就有了对spring aop cache 的改造,只需要少量编码就能实现这一点。

ORM从缓存中解脱了出来,只需要做纯粹的映射工作。

 

这样就有了Freyja2的cache和ORM。

 

Freyja2的Sharding功能把sql从分表分库工作中完全解脱出来,在ORM之上通过简单的配置达到对sql的无侵入性实现Sharding

 

到了Freyja2,如果不需要Sharding功能。这个ORM还有利用价值么?我很怀疑。

ORM的成熟产品很多,单看ORM功能我说不出Freyja的ORM有什么独到之处。

也许Sharding功能成为了Freyja2存活的唯一理由。

 

我觉得,今后我只需要做2件事情:

1、配合好JdbcTemplate,使之成为真正的ORM

2、加强Sharding功能,使之变得更加完美

0
0
分享到:
评论
1 楼 shiren1118 2012-06-11  
加油,我-顶-你

相关推荐

    freyja v2版本发布

    "Freyja v2版本发布"标志着这个开源工具的最新迭代,它主要专注于提供源码管理和分析功能。在本文中,我们将深入探讨Freyja的新特性、改进以及它如何帮助开发者提高工作效率。 首先,Freyja作为一个源码工具,其v2...

    freyja2多数据源版本

    "freyja2多数据源版本"是一个专注于数据库管理和集成的工具,主要针对开发人员和数据库管理员。这个项目可能提供了一种高效的方式,使得应用程序能够同时连接和操作多个不同的数据源,比如MySQL、Oracle、SQL Server...

    Freyja的查询缓存功能详解

    NULL 博文链接:https://freyja.iteye.com/blog/1278881

    freyja最重要的一个功能完成

    2. **软件工程**:Freyja的开发可能采用了良好的软件工程实践,如模块化设计、单元测试、持续集成/持续部署(CI/CD)等。 3. **编程语言**:根据源码的类型(可能是Python、Java、C++等),可以学习相关的编程语言和...

    freyja 将引入另外一项功能大幅提高服务器性能

    标题 "freyja 将引入另外一项功能大幅提高服务器性能" 提到的是一个名为 "freyja" 的工具或项目,它即将推出的新特性旨在显著提升服务器的运行效率。根据描述中的 "博文链接",我们可以推断这是一篇在 iteye.com ...

    freyja更新

    "Freyja更新"这个标题可能指的是一个名为Freyja的软件或工具的最新版本发布或者升级。Freyja,源自北欧神话中的战争与生育女神,通常在IT领域被用作项目名或软件名,尤其是那些涉及开发、分析或管理的工具。由于描述...

    freyja 功能基本完毕

    2. **自动化**:作为一个工具,Freyja可能包含自动化脚本编写和执行的功能,例如支持CI/CD(持续集成/持续部署)流程。 3. **测试框架**:Freyja可能具备测试功能,能够帮助开发者进行单元测试、集成测试或端到端...

    准备了个freyja实例项目(单数据源版)

    2. 单数据源管理:了解Freyja如何连接和操作单一数据库,包括数据库连接池的设置、SQL查询的执行以及事务管理。 3. 源码阅读与分析:通过阅读源码学习编程技巧、设计模式,例如MVC结构、依赖注入等,以及Freyja如何...

    freyja:快速博客系统

    FREYJA freyja是一个轻量级的blog系统,使用vue-ssr,首屏在服务端渲染,之后的所有请求都由浏览器自行路由。 文章页只有文章内容在服务端渲染,评论是浏览器ajax加载的。 配合http2多路复用,首屏渲染完成时间可以...

    freyja:将样式作为道具传递给组件

    您提供一个接受组件props和应用程序theme的函数,并返回样式图( (theme, props, helpers) => ({key1: style, key2: style}) ), useStyles将返回类名的地图(像{key1: className, key2: className} )。...

    freyja-sub-ocr-electron:用于 Freyja 字幕 OCR 提取器的 Nodejs + 电子用户界面

    弗雷雅 用于Freyja字幕OCR提取器的Node.js +电子用户界面。 仍处于测试阶段。 所有功能都可用,但您在使用该应用程序时可能会遇到错误/崩溃。 请在 github 问题上报告您在log.log文件中遇到的任何错误。系统要求需要...

    matlab有些代码不运行-Freyja-Simulator:用于表示多直升机,控制器,附加对象(例如电缆)等的MATLAB/Simulink

    matlab有些代码不运行Freyja仿真器 在MATLAB / Simulink(TM)和SimScape(TM)框架内构建的,适用于多直升机系统的高保真物理模拟器。 Freyja的库元素允许对连接多轴直升机和各种其他对象(例如电缆)的运动树进行...

    自己搭的一个springmvc+hibernate+freemarker框架,参照疼讯的iweibo2

    NULL 博文链接:https://freyja.iteye.com/blog/1167392

    Magic-Reality:Magic Reality Mod Pack (Minecraft) 的官方 Github 页面

    魔幻现实Magic Reality Mod Pack (Minecraft) 的官方 Github 页面#Mods 模组作者版本苹果核Squeek502 1.1.0 水产养殖Shadowclaimer, Lclc98, Freyja, Rebelkeithy 1.2.5.8 护甲状态HUD 业务员1.28 背包埃达莫斯2.0.1...

    jre-超级精简普通版版

    2. **lib**:这个目录包含Java类库,如基础类库(rt.jar)、本地方法库(native libraries)和一些工具库。精简版可能会移除一些非必要的库,以减少体积,例如针对特定技术或应用的扩展库。 为了在实际环境中使用这...

    Freislenbator-crx插件

    回到Freislenbator-crx,这款插件的名称可能源于一种幽默或网络文化元素,"Freislenbator"可能是创造者为插件赋予的虚构名称,与“Freyja”(北欧神话中的爱与美的女神)或者“free image”(免费图片)有关,但具体...

Global site tag (gtag.js) - Google Analytics