小编Oca*_*res的帖子

选择一种方法而不是另一种方法从Mysql中获取数据的复杂性

我正在开发一个基于PHP,Mysql,Apache的项目.

我有一个名为notification的模块,就像FACEBOOK中的Notification一样,为此我有3种方法

或者我将每个更新插入一个表,在需要通知这些更新的用户数中,即如果假设类别B有一些更新,并且此类别B包含100个用户,那么我将为相应的用户插入100行一个说法,通知表.

第二种方式

我可以做的只是在表中插入一个特定的类别条目,然后在每个这些Caregory ID上提交一个重的JOIN查询来获取多个表中的所有记录以获取记录.

第三种方式

我在每次更新时使用触发器,以便它可以用于通知用户.

我相信这三种方式在某些方面都存在问题.

现在任何人都可以建议任何更好的想法或哪一个是更好的选择?

我担心网站的性能,因为它将有批量条目

谢谢

mysql triggers join database-performance

7
推荐指数
1
解决办法
234
查看次数

JSON是否有+ json后缀约定?

XML有一个惯例,即基于XML的非标准mime类型采用'+ xml'后缀(对语法高亮等有用).这由RFC3023概述.

我已经看了RFC4626,但我找不到任何类似JSON的东西.JSON有类似的约定吗?是否记录在任何地方?

xml json rfc mime-types

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

sizeof和pass-by-reference

我希望有人可以解释以下行为.

假设我正在尝试实现一个确定任何数组长度的函数,但希望避免使用宏.例如

#define array_length(x) ( sizeof(x) / sizeof(x[0]) )
Run Code Online (Sandbox Code Playgroud)

鉴于该函数必须适用于任何参数类型,我必须使用模板.

我的第一次尝试看起来像这样.

template <typename T>
inline size_t
array_length(const T argument) {
    return sizeof(argument) / sizeof(argument[0]);
}
Run Code Online (Sandbox Code Playgroud)

这不起作用,因为参数被视为指针.一旦T变为T,一切都工作得很好.

我想知道是否有人可以说一下语言实现水平发生了什么.例如,当引用用作函数参数时,将哪些额外信息传递给函数?

c++ templates sizeof

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

救援超时:: Redis Gem(Ruby)出错

我需要Timeout::Error从Redis库中拯救一个凸起但是我遇到了一个问题,抢救那个特定的类似乎不起作用.

begin
  Redis.new( { :host => "127.0.0.X" } )
rescue Timeout::Error => ex
end

=> Timeout::Error: Timeout::Error from /Users/me/.rvm/gems/ree-1.8.7-2011.03@gowalla/gems/redis-2.2.0/lib/redis/connection/hiredis.rb:23:in `connect'
Run Code Online (Sandbox Code Playgroud)

当我试图拯救Exception它仍然无法正常工作

begin
  Redis.new( { :host => "127.0.0.X" } )
rescue Exception => ex
end

=> Timeout::Error: Timeout::Error from /Users/me/.rvm/gems/ree-1.8.7-2011.03@gowalla/gems/redis-2.2.0/lib/redis/connection/hiredis.rb:23:in `connect'
Run Code Online (Sandbox Code Playgroud)

如果我尝试手动提升异常,我可以拯救它,但不知道为什么我从Redis Gem(2.2.0)中调用它时无法解救它.

begin
  raise Timeout::Error
rescue Timeout::Error => ex
  puts ex 
end

Timeout::Error
=> nil 
Run Code Online (Sandbox Code Playgroud)

有任何线索如何解救这个例外?

ruby exception-handling exception rescue redis

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