小编Nik*_*nko的帖子

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

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

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

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

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

perl caching moose kiokudb

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

是否有一个简单的例子向一般的"通用"程序员解释Lisp宏?

我最近和一位同事谈过,并试着告诉他(Common)Lisp的美丽.我试图以某种方式解释宏,因为我认为宏是Lisp的杀手特性之一,但我失败了 - 我无法找到一个简单易懂的简单易懂的例子("凡人"程序员(十年的Java经验,一个聪明的家伙,但很少有"高阶"语言的经验).

如果你不得不如何通过例子解释Lisp宏?

lisp macros common-lisp

6
推荐指数
2
解决办法
1863
查看次数

我们如何使用Perl :: Tidy或Perl :: Critic来收集旁注?

我的部门目前正在解决一些通用代码的最佳实践,这是我们想有所加强,为开发人员提供Perl::TidyPerl::Critic配置.

现在我们遇到了附带评论的问题.附注是这样的:

my $counter = 0;  # Reset counter
Run Code Online (Sandbox Code Playgroud)

我们宁愿根本没有侧面评论,因为在大多数情况下,它们可以写在有问题的代码之上,在那里它们更容易阅读.如果可能的话,一个Perl::Tidy解决方案将是完美的,这会将一个侧面评论移到它上面的一行,第二个最好的将是一个Perl::Critic政策(我在CPAN没有找到)和第三个最好的,最后一个将是开发人员在进行代码审查时要注意将这些意见指出.

是否可以用Perl::Tidy或实施Perl::Critic

perl comments perl-critic perl-tidy

5
推荐指数
1
解决办法
735
查看次数

什么是签名cookie,为什么它们有用?

在EuroPython的一些演示中,已经提到了"签名的cookie".因为谷歌搜索没有帮助 - 除了"是的,它们很酷,这就是你如何做"之外我没有找到任何东西,大部分是在Django的背景下 - 也许StackOverflow上的某个人对我有很好的解释.

那么,什么是签名的cookie,我为什么要使用它们,缺点是什么?

security django cookies

5
推荐指数
1
解决办法
1650
查看次数

是否存在用户代理到浏览器品牌映射的数据库?

在我的应用程序中,我想保存用户上次使用的浏览器,以避免花费大量时间在手机上,用户试图找出他们是使用IE7还是IE8.存储用户代理字符串可能对我来说很好,但是,如果可能的话,我想存储和显示品牌名称和版本,即"正常"人类可读的东西,如"Mozilla Firefox 3.6".

所以我的问题是:是否有某种类型的数据库收集用户代理字符串并将它们映射到品牌名称并提供我可以在开发中使用的数据?如果没有,您是否知道任何解析用户代理字符串并返回品牌名称的成熟软件?

browser user-agent browser-detection

5
推荐指数
1
解决办法
2669
查看次数

我是否需要使用GeoDjango对Spatialite进行特定配置?

根据https://docs.djangoproject.com/en/1.3/ref/contrib/gis/db-api/,Spatialite支持GeoQuerySet.distance().但是,导入区域列表(MultiPolygon作为mpoly属性)后,我正在尝试执行以下操作:

Area.objects.all().distance(center)
Run Code Online (Sandbox Code Playgroud)

而不是可用的东西,我只收到一条错误消息:" ValueError:SQLite不支持大地坐标系上的线性距离计算. "

这里有什么问题,我是否需要在Spatialite上进行一些特殊配置或文档是否错误?

django spatial-query geodjango spatialite

5
推荐指数
1
解决办法
647
查看次数

如何在PrimeFaces中使用闭包在CommandButton上定义一个oncomplete事件?

我正在使用一些JavaScript交互扩展PrimeFaces应用程序的一部分.这一切都始于CommandButton从bean获取一些数据然后调用JavaScript.目前,它看起来像这样:

<p:commandButton actionListener="#{myBean.doSomething}"
                                 oncomplete="doSomethingSimple()"
                                 value="Do something" />
Run Code Online (Sandbox Code Playgroud)

当然,这是非常简单的基于功能的编程.没有上下文,没有闭包,没有OOP(如果我需要一些).我想将一个普通的JavaScript事件附加到CommandButton,例如使用jQuery:

$('.myCommandButton').on('complete', function () {
     ...
})
Run Code Online (Sandbox Code Playgroud)

但是,complete不是DOM事件,基本上只有PrimeFaces知道它何时被调用.是否还有一种方法可以将基于属性的脚本替换为"普通"JavaScript事件处理?

javascript jquery jsf primefaces

5
推荐指数
1
解决办法
9456
查看次数

如何在已编译的包中包含 NPM 依赖项的源映射?

假设我有一个使用 Babel 和 Webpack 编译成捆绑包的前端应用程序,其中包含我拥有的代码的源映射。但是,如果我正在寻找与第三方依赖项相关的问题,我只会在浏览器调试器中看到它们的缩小代码,因为这是从 NPM 下载并在磁盘上可用的代码。我只能自动重新格式化这段代码,但永远看不到原来编写的代码。

除了我的代码的源映射之外,是否有任何方法可以配置开发环境以提供依赖项代码的源映射?

source-maps webpack babeljs

5
推荐指数
1
解决办法
3454
查看次数

如何使用 Webpack 的“raw-loader”加载二进制文件?

Webpack 的加载器通常加载文本文件,因此在大多数情况下,使用某种文本编码(通常是 UTF-8)转换加载文件的内容会更方便。另一方面,二进制文件不应该被转换,因此加载器有一个raw属性,它控制(每个加载器)是否应该应用 UTF-8 转换。

raw-loader应该将原始数据从文件加载到字符串而不进行任何转换,因此应该将属性导出rawtrue. 然而,事实并非如此,而且还有一个单元测试应该确保raw不被导出。它似乎被设计为仅用于基于文本的格式。

有没有办法解决?将二进制文件加载到字符串的替代方法有哪些?

webpack

5
推荐指数
1
解决办法
3445
查看次数

如何在 vCard 中使用自定义字段?

我正在编写一个应用程序,该应用程序从内部客户数据库生成电子名片,并希望在卡中包含其他信息,例如内部客户编号。在阅读 RFC 时,我看到了“供应商特定”扩展,这些扩展将在 IANA 等处注册。这些扩展是正确的选择吗?使用时应该注意什么,有什么陷阱吗?是否有其他方法可以在 vCard 中定义自定义字段?

customization vcf-vcard

4
推荐指数
1
解决办法
6065
查看次数