我的 rails 应用程序运行得很好,但是部署过程可能会最大化内存并存在一些问题。
根据服务器人员的说法,有 3 个长时间运行的进程正在耗尽内存,应该处理
Ruby processes:
user@app-hippogo-production-6628:~$ ps -p 15892 -o etime= 1-20:00:43
user@app-hippogo-production-6628:~$ ps -p 15903 -o etime= 1-20:00:52
user@app-hippogo-production-6628:~$ ps -p 15925 -o etime= 1-20:01:07
Postgres process:
user@app-hippogo-production-6628:~$ ps -p 14495 -o etime= 10-19:58:59
Run Code Online (Sandbox Code Playgroud)
我应该以某种方式配置我的应用程序以关闭 ruby 和 postgres 进程吗?我怎样才能做到这一点?一些关于究竟发生了什么和应该发生的背景信息将不胜感激。
更新进程总共使用了 690mb 的内存
我在轨道上 4.1.8 Ruby 2.2.5
我使用瘦作为服务器
我正在部署到九重服务器,他们有自己的系统,可以在您提交到存储库时进行部署,有点像 heroku。我相信它是基于厨师的。
我想将图像从ios应用程序保存到图库,以便用户可以共享它.
我的应用程序使用离子框架和ngCordova.我想这样保存图像:
image = cordova.file.applicationDirectory + "www/img/deck/" + card.image;
file_path = cordova.file.documentsDirectory + "wisdom.png";
$cordovaFile.createFile(file_path, true).then(function(result) {
alert(JSON.stringify(result));
}, function(err) {
alert('create error: ' + JSON.stringify(err));
});
$cordovaFile.writeFile(file_path, image).then(function(result) {
alert(JSON.stringify(result));
}, function(error) {
alert(JSON.stringify(err));
});
Run Code Online (Sandbox Code Playgroud)
在创建文件时,这会给出错误代码5,ENCODING_ERR.写文件不会给出成功或失败错误.画廊中没有图像.保存文件的路径应该是什么?我应该如何将图像发送到写入方法?为什么我会收到编码错误?
我的 Rails 应用程序中安装了一个 gem,它有一些迁移
/db/migrate
Run Code Online (Sandbox Code Playgroud)
我该如何运行它们?
我尝试过跑步
bundle exec rails g gem-name:install
Run Code Online (Sandbox Code Playgroud)
但我收到一条错误消息,说找不到生成器 gem-name:install。
今天早上我在使用 3 个不同的 Gem 时遇到了这个问题。我缺少什么?
我正在尝试在我的反应课上监听一条消息。它不起作用。
export default class App extends React.Component {
constructor(props) {
super(props);
this.handleMessage = this.handleMessage.bind(this);
}
componentDidMount(){
window.addEventListener("onmessage", this.handleMessage);
}
componentWillUnmount() {
window.removeEventListener('onmessage', this.handleMessage);
}
handleMessage(e){
console.log('me?')
}
}
Run Code Online (Sandbox Code Playgroud)
我这样发送消息:
window.opener.postMessage('a message', '*');
Run Code Online (Sandbox Code Playgroud)
我知道消息正在到达窗口,因为我可以在加载 React 应用程序的纯 JS 文件中成功收听它。然而,像上面那样在 React 中监听它是行不通的。
为什么我的监听器没有被触发,我该如何调试它?
我把我的回购弄得一团糟.
我做了一些改变并将它们推到了回购中,现在我想撤消它.(我合并了一切都错了)
在我的本地机器上,我使用以下命令完成了该操作:
git reset --hard 72a535b
Run Code Online (Sandbox Code Playgroud)
这似乎已经成功了.然后我正确地实现了更改,提交了它们并尝试推送.
当然那是失败的错误
否认非fast0forward refs/heads/master(你应该先拉)
我不认为我想做什么,因为然后生病失去我的变化,并回到第一组破碎的mods.
我怎么能把这个可怕的烂摊子排除在外呢?
如果我有一个Model DebatePage,它有以下许多关系:
private static $many_many = array(
'Panelists' => 'Panelist'
);
Run Code Online (Sandbox Code Playgroud)
小组成员有一个名为"姓名"的文本字段
我怎样才能查询所有有专门小组成员名为bob的辩论?
DebatePage::get()->filter('Panelist.Name:partialmatch', $keyword);
Run Code Online (Sandbox Code Playgroud)
但我得到一个未知的列错误
当使用fb.UI时,https托管的iframe页面会给出一个正确的模态对话框,但是同一个页面通过http给出一个弹出窗口
这是我的代码,主要来自facebook对话框帮助页面:
<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:fb="https://www.facebook.com/2008/fbml">
<head>
<title>My Feed Dialog Page</title>
</head>
<body>
<p>oh, hello.</p>
<div id='fb-root'></div>
<script src='//connect.facebook.net/en_US/all.js'></script>
<p><a onclick='postToFeed(); return false;'>Post to Feed</a></p>
<p id='msg'></p>
<script>
FB.init({appId: "myappid", status: true, cookie: true});
function postToFeed() {
// calling the API ...
var obj = {
method: 'feed',
link: 'http://www.facebook.com/testapp/app_myappid/',
picture: 'http://fbrell.com/f8.jpg',
name: 'Facebook Dialogs',
caption: 'Reference Documentation',
description: 'Using Dialogs to interact with users.',
};
function callback(response) {
document.getElementById('msg').innerHTML = "Post ID: " + response['post_id'];
}
FB.ui(obj, callback);
}
</script> …Run Code Online (Sandbox Code Playgroud) 我正在将一个应用程序从 CakePHP 2 迁移到 CakePHP 3。Cake3 有一个新的哈希算法。我希望现有用户能够使用旧密码登录应用程序,然后将这些密码更新为新算法。
不幸的是,我无法获得与数据库中的内容相匹配的正确哈希值。
$person = $this->Auth->identify();
if(!$person){ # maybe they have old sha1 password?
$oldhash = Security::hash($this->request->data['password'],
'sha1', "oldsalt");
$person = $this->People->find()->where(['password' => $oldhash])->where(['email' =>$this->request->data['email'] ])->first();
if($person){
$person->password = Security::hash($this->request->data['password']);
$this->People->save($person);
}
}
Run Code Online (Sandbox Code Playgroud)
找不到用户,如果我调试 $oldhash ,我会得到一个与该用户的密码字段中存储的字符串不同的字符串。
我究竟做错了什么?
我有一个很多DebatePage票:
static $has_many = array(
'Votes' => 'Vote'
);
Run Code Online (Sandbox Code Playgroud)
和相应的 Vote DataObject
static $belongs_to = array(
'DebatePage' => 'DebatePage'
);
Run Code Online (Sandbox Code Playgroud)
当用户点击"是"时,我想保存该页面的投票.
那是什么语法?
我想做这样的事情:
$this->dataRecord->Votes()->add($array('motion' => true));
Run Code Online (Sandbox Code Playgroud)
我该怎么做呢?
我正在为我的模型使用自定义路线
resources :operatives, :controller => 'users' do
end
Run Code Online (Sandbox Code Playgroud)
我的用户/索引文件中有一个搜索表单,在我更改为自定义“操作员”路线之前该表单可以正常工作。
<% search_form_for @q do |f| %>
Run Code Online (Sandbox Code Playgroud)
这给出了错误
undefined method `users_path'
Run Code Online (Sandbox Code Playgroud)
如果我尝试通过向表单添加 url 来解决此问题:
<% search_form_for @q, url: operatives_path do |f| %>
Run Code Online (Sandbox Code Playgroud)
页面已加载,但表单现在未显示。
我应该如何配置我的搜索表单?
更新 - 您可以在以下位置看到 rake 路由输出:
https://gist.github.com/asecondwill/34831004b191fa3ac52353ead47c5a64
javascript ×2
ruby ×2
silverstripe ×2
cakephp ×1
cakephp-3.0 ×1
cordova ×1
facebook ×1
file ×1
git ×1
git-push ×1
https ×1
migration ×1
performance ×1
postgresql ×1
ransack ×1
reactjs ×1
routes ×1
rubygems ×1
security ×1