标签: kiokudb

如何正确减少mod_perl的冗余请求数?

在一个相当大的遗留项目中,我已经将几个毛茸茸的模块重构为Moose类.这些模块中的每一个都需要数据库访问(懒惰)获取其属性.由于这些对象使用得相当多,我想减少冗余请求的数量,例如对于未更改的数据.

现在,我该如何正确地做到这一点?我有几个选择:

  1. 在我的Moose类中实现缓存,通过一个角色将它们存储在memcached5-10分钟的到期时间(可能不是太困难,但是对于懒惰属性来说很棘手)更新:KiokuDB可能在这里有所帮助,必须阅读有关属性的内容
  2. 迁移到DBIx::Class(无论如何都需要完成)并在此级别上实现缓存(DBIC可能会消除大部分的痛苦)
  3. 不知怎的,让我的对象在mod_perl进程内持久存在(不知道如何做到这一点:()

你会怎么做?你认为什么是理智的方式?是否在对象或ORM级别上缓存数据?

perl caching moose kiokudb

6
推荐指数
1
解决办法
152
查看次数

Windows上的KiokuDB

我想知道是否有人能够在Windows上成功使用KiokuDB.有了ActivePerl 5.12.2,我没有在ppm存储库中预先编译它.使用cpan,它在测试File :: NFSLock时停止了.不过,我能够用notest安装它.

下面的简单测试似乎有记录:

package Person;
use Moose;

has ['name', 'age'] => (is => 'ro');

package main;

use Data::Dump;
use KiokuDB;

my $dir = KiokuDB->connect("hash");

{
    my $scope   = $dir->new_scope;
    my $obj = Person->new(name => 'Joe', age => 34);

    my $data_id = $dir->store($obj);

    warn $data_id;   # 6702A424-6BF6-1014-B0F5-EC4CE5BB15D7

    my $got = $dir->lookup($data_id);
    dd $got;         # bless({ age => 34, name => "Joe" }, "Person")
}
Run Code Online (Sandbox Code Playgroud)

有人用它来做Windows上更大的东西,比如DBI后端吗?你认为它是否足够稳定/可用于一些较小的项目?

请至少提供一些使用方法的详细信息,以便我有一个与我的计划相符的想法.

windows perl persistence kiokudb

6
推荐指数
1
解决办法
213
查看次数

我应该如何在两个KiokuDB目录之间复制对象?

我想确保scope正确地获得KiokuDB的概念.

假设我想从db1加载一个对象并将其存储在db2中.我必须同时让两个范围"开放"吗?

perl serialization moose kiokudb

2
推荐指数
1
解决办法
103
查看次数

KiokuDB中的"弱引用"是什么?

KiokuDB教程 提到的弱引用究竟是什么?

它们与"正常"参考文献有何不同?

perl serialization moose kiokudb

0
推荐指数
1
解决办法
220
查看次数

标签 统计

kiokudb ×4

perl ×4

moose ×3

serialization ×2

caching ×1

persistence ×1

windows ×1