看起来Sequel的默认选择是"select*",当你添加一些连接时会引起各种问题.至少你最终会在对象中出现错误的ID(因为那时会返回多个"id"列).做点什么
.select("people.*")
Run Code Online (Sandbox Code Playgroud)
似乎工作,但它将传入的字符串视为一个列并引用它.到目前为止,我不得不回到裸SQL来解决这个问题,但我知道必须有更好的方法.
在我的具体情况下,至少.不试图在这里做一般性陈述.
我在Node.js中编写了这个Web爬虫.我喜欢使用Ruby,所以我在EventMachine中重写了它.由于原版是在CoffeeScript中,它实际上非常容易,并且代码非常相似,除了在EventMachine中我实际上可以捕获并从异常中恢复(因为我使用的是光纤).
问题是在Node.js代码上运行不到20秒的测试在EventMachine上占用的时间超过5分钟.当我观察连接计数时,它几乎看起来甚至没有并行运行(它们排队成数百个,然后非常缓慢地向下运行),尽管日志记录显示代码点是并行命中的.
我意识到没有代码就无法确切地知道到底发生了什么,但我只是想知道是否存在某种潜在的差异,我应该放弃,或者他们是否应该能够以更快的速度运行(a小的减速是好的)我应该继续试图找出问题所在.
我做了以下,但它似乎没有任何影响:
puts "Running with ulimit: " + EM.set_descriptor_table_size(60000).to_s
EM.set_effective_user('nobody')
EM.kqueue
Run Code Online (Sandbox Code Playgroud)
哦,我非常确定我在EventMachine中没有任何阻塞调用.我已经梳理了大约10次每一行,寻找任何可能阻塞的东西.我的所有网络调用都是EM :: HttpRequest.
我正在构建一个基本上是一个Web应用程序.每个数据都必须从Web API中获取.因此,我展示的每个UITableView都需要花费一些时间来填充数据,而我正在努力寻找向用户显示加载屏幕的好方法.
现在我正在弹出一个动作表,但这看起来有点不对劲.理想情况下,我会在桌面上弹出一个空白视图,上面有"正在加载...",然后在数据进入时将其淡出,但我想不出在我的8个地方做到这一点的方法没有大量代码重复的应用程序.
我有一点时间摆脱这些愚蠢的事情.我有几个Chrome应用程序处理大量媒体文件; 其中一个,我能够使用一堆"删除"和一个window.URL.revokeObjectURL最终阻止他们积累chrome://blob-internals/,但另一个,似乎没有任何帮助.我错过了什么吗?我完全知道我什么时候该死的,但我似乎无能为力.
具体来说,我在块中使用File对象,如下所示:
ref.file(function(f) {
// Do some stuff...
// and now I'm done!
delete f
});
Run Code Online (Sandbox Code Playgroud)
这是我的应用程序的实际来源:
https://github.com/pkulak/photo-importer
这是我认为我实际上解决了问题的那个,但是谁真的知道:
我有一个可排序的UITableView,但就是这样.现在,我将所有单元格设置为UITableViewCellEditingStyleNone,但这仍然将单元格的TextLabel向右移动了40个像素.反正是否有编辑模式和右侧的排序图标,而没有移动TextLabel?
我正在挖掘内置的配置支持,并想使用它(而不是仅仅在 Ktor 的旁边滚动我自己的),但我很难弄清楚如何以一种干净的方式做到这一点。我有这个,它正在工作,但它真的很难看,我觉得必须有更好的方法:
val myBatisConfig = MyBatisConfig(
environment.config.property("mybatis.url").getString(),
environment.config.property("mybatis.driver").getString(),
environment.config.property("mybatis.poolSize").getString().toInt())
installKoin(listOf(mybatisModule(myBatisConfig), appModule), logger = SLF4JLogger())
Run Code Online (Sandbox Code Playgroud)
谢谢你的帮助!
cocoa-touch ×2
iphone ×2
javascript ×2
ruby ×2
eventmachine ×1
koin ×1
ktor ×1
node.js ×1
sequel ×1