附件已经更新了最新的src,test项目和lib 还是一样前面有提供下载。 group 功能和批量save。 update之类的再补上。
group相当于一个索引。一个表只能有一个group 设为group的字段必须是唯一的。
例如 以User为核心,与User一对多的表都把uid 设置为group: @Group(isGroup=true)
这样能大幅减少维护缓存的开销。
-------------------
freyja 将引入另外一项能大幅提高服务器性能功能,与group不同。group相当于针对freyja的一种处理。
下面这个功能大家一定都在想办法提升性能的时候想到过,在此freyja可以通过配置再不用改动服务器逻辑的情况下实现:
就叫:Delay 。 @Delay注解
被annotation注解的字段在update的时候将不会保存到数据库(什么都不做),然后在缓存过期的时候才会update一次,另外提供一个方法主动update,这样在一些地方可以从数据库中读取正确值。
问题1:哪些字段不能够被标记为Delay。
答: 出现在查询条件中的字段不能被Delay。freyja的缓存目前只覆盖到了单表查询,联表查询是没有使用缓存的。所以年表查询的结果是从数据库中取得,而单表查询全部取自于缓存。上面说的提供主动update就是为了在有些情况下主动同步一次数据以达到数据一致。查询条件关系则查询结果,而查询结果取自于数据库。
问题2:断电了怎么办?
答: 一切随缘吧。
*******
在一般的游戏项目中,经常可以看见人们把一些东西存进内存中然后过一段时间同步到数据库。freyja就是这么做的,只不过更加的简单。只需要指定哪些字段不需要即时同步的。
当然,在你设置Delay之前,你要好好的看看你的系统里面到底哪些地方用到了这个字段。
Delay带来了哪些提升?这些字段每update一次,他的作用就提高1点。注意:单表查询!
突然感觉到,自己的游戏项目中没有多少地方用到联表查询。难怪我会认为开发freyja很有必要性
分享到:
相关推荐
标题 "freyja最重要的一个功能完成" 暗示我们正在讨论的是一个名为"Freyja"的项目或工具,它在IT领域可能具有显著的意义。Freyja,这个名字来源于北欧神话,是战神奥丁的妻子,象征智慧和预言,这可能意味着这个软件...
"Freyja"是一个工具,它的主要功能已经完成。根据提供的信息,我们可以推断Freyja可能是一个开源项目,因为“源码”这个标签通常与开放源代码软件相关。此外,“工具”标签暗示它是一个用于特定任务或目的的应用程序...
这篇博客将深入解析Freyja如何通过缓存机制来优化数据库操作,帮助开发者提高应用性能。 首先,我们要理解查询缓存的基本概念。查询缓存是数据库系统中一个组件,用于存储已经执行过的SQL查询及其结果。当相同的...
如果Freyja是更新版,那么它可能引入了新的特性、修复了已知问题,或者提升了性能和用户体验。 在博文链接中,我们看到了iteye.com,这是一个中国知名的IT技术交流平台,博主分享了关于Freyja的博客文章。尽管没有...
这些集成使得开发者无需离开Freyja环境就能完成大部分日常开发任务,提高了整体的生产力。 "cache"这个文件夹名暗示着Freyja v2可能对缓存机制进行了优化。在软件开发中,缓存是提高性能的关键。新版本可能增强了...
在"工具"这一标签中,我们通常理解为Freyja2是一款实用的开发辅助软件,它可能提供了诸如数据迁移、同步、查询优化等功能,帮助开发者更便捷地管理多数据源环境。这类工具在大数据量或分布式系统中尤其重要,能够...
"准备了个freyja实例项目(单数据源版)"这个标题揭示了我们即将探讨的是一个基于Freyja框架的实战项目,特别强调是单数据源版本。Freyja可能是一个用于...这将是一个深入了解Freyja框架和单数据源应用开发的好机会。
您提供一个接受组件props和应用程序theme的函数,并返回样式图( (theme, props, helpers) => ({key1: style, key2: style}) ), useStyles将返回类名的地图(像{key1: className, key2: className} )。...
弗雷雅 用于Freyja字幕OCR提取器的Node.js +电子用户界面。 仍处于测试阶段。 所有功能都可用,但您在使用该应用程序时可能会遇到错误/崩溃。 请在 github 问题上报告您在log.log文件中遇到的任何错误。系统要求需要...
freyja是一个轻量级的blog系统,使用vue-ssr,首屏在服务端渲染,之后的所有请求都由浏览器自行路由。 文章页只有文章内容在服务端渲染,评论是浏览器ajax加载的。 配合http2多路复用,首屏渲染完成时间可以控制在...
matlab有些代码不运行Freyja仿真器 在MATLAB / Simulink(TM)和SimScape(TM)框架内构建的,适用于多直升机系统的高保真物理模拟器。 Freyja的库元素允许对连接多轴直升机和各种其他对象(例如电缆)的运动树进行...
在部署时,需要考虑性能、资源占用和功能完整性的平衡。 总结来说,"jre-超级精简普通版版"是一个面向轻量级需求的Java运行环境,它通过删除非关键组件以实现更小的体积和更高的效率。通过阅读博客文章,我们可以...
这款插件的核心功能是允许用户对网站上的所有图像进行替换,特别地,它将网页上的图片替换为“弗赖尔图片”,为浏览体验增添了一种独特的视觉风格。 在深入探讨这款插件之前,我们先了解一下什么是浏览器扩展程序。...
NULL 博文链接:https://freyja.iteye.com/blog/1167392
魔幻现实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...