小编Emp*_*nal的帖子

Node.js变量声明和范围

当我在node.js中键入它时,我得到了undefined.

var testContext = 15;
function testFunction() {
  console.log(this.testContext);
}
testFunction();
=>undefined
Run Code Online (Sandbox Code Playgroud)

没有var关键字,它传递(=> 15).它在Chrome控制台中运行(有和没有var关键字).

javascript scope node.js

37
推荐指数
3
解决办法
7万
查看次数

如何在Mongoose中将_id设置为db文件?

我正在尝试通过计算db中的文档来动态创建我的Mongoose模型的_id,并使用该数字创建_id(假设第一个_id为0).但是,我无法从我的值中设置_id.这是我的代码:

//Schemas
var Post = new mongoose.Schema({
    //_id: Number,
    title: String,
    content: String,
    tags: [ String ]
});

var count = 16;

//Models
var PostModel = mongoose.model( 'Post', Post );

app.post( '/', function( request, response ) {

    var post = new PostModel({
        _id: count,
        title: request.body.title,
        content: request.body.content,
        tags: request.body.tags
    });

    post.save( function( err ) {
        if( !err ) {
            return console.log( 'Post saved');
        } else {
            console.log( err );
        }
    });

    count++;

    return response.send(post);
});
Run Code Online (Sandbox Code Playgroud)

我试图将_id设置为多种不同的方式,但它对我不起作用.这是最新的错误:

{ message: 'Cast …
Run Code Online (Sandbox Code Playgroud)

javascript mongoose mongodb node.js

32
推荐指数
3
解决办法
5万
查看次数

按任意键继续在nodejs中

我需要一个函数来暂停脚本的执行,直到按下一个键.我试过了:

var stdin = process.openStdin(); 
require('tty').setRawMode(true);    

stdin.on('keypress', function (chunk, key) {
  process.stdout.write('Get Chunk: ' + chunk + '\n');
  if (key && key.ctrl && key.name == 'c') process.exit();
});
Run Code Online (Sandbox Code Playgroud)

但它只是在听按键而没有任何反应.该程序不会继续执行.

我该如何暂停执行?

javascript keypress node.js

19
推荐指数
5
解决办法
2万
查看次数

我可以使用AWS代码部署在自动缩放时提取应用程序代码吗?

我想在负载变高时自动调整基础架构.我正在运行我的基础设施AWS.我有一个要求,我需要从Github何时发出应用程序代码autoscaling.由于代码经常更改,我们无法从中获取AMI并启动实例AMI.所以我想从中提取最新的代码repositories.AWS刚刚推出了一项名为的服务AWS CodeDeploy.如何在实例启动时使用此服务自动执行代码拉取过程?

PS我已经编写了一个init script自动附加EIP白名单的白名单,将IP放在不同的安全组上,并load-balancer在实例启动时将实例放在a 下,并在实例在autoscaling中终止时撤销所有内容.

github amazon-web-services autoscaling aws-code-deploy

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

强制终止陷入 Pending:Wait 状态的 AutoScaling 实例

我有一个 AutoScaling 组,我在实例启动时摆弄 LifecycleHooks,其中一些由我控制,一些由其他 AWS 服务控制。我一直在添加/删除 LifecycleHooks 并更改 ASG 的大小,但实例陷入了Pending:Wait. 我认为这是因为它正在等待来自 LifecycleHook 的信号,但我无法让它移动。

我尝试了很多事情:

在 EC2 控制台中终止实例

我终止了实例,但 ASG 会等待 LifecycleHook 心跳超时,然后才真正从 ASG 终止实例,这可能需要一个小时。

手动完成 LifecycleHooks

我尝试手动完成 LifecycleHooks,如以下伪代码所示:

describeAutoScalingGroups -> asg {
    instances = getPending(asg.instances)
    describeLifecycleHooks -> lifecycleHooks {
        lifecycleHooks.each {
            instances.each {
                completeLifecycleAction(instance, hook)
            }
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

这并不能解决问题。我猜测它正在等待的 LifecycleHook 已从 ASG 中删除,因此无法手动完成 LifecycleHook。

接下来是什么?

显然,我应该更加小心地以正确的顺序删除这些资源,所有这些和减少心跳也会有所帮助,但我如何强制终止 ASG 的实例,无论它在等待什么?

amazon-web-services autoscaling

11
推荐指数
2
解决办法
6590
查看次数

在JSON属性名称中搜索具有特殊字符的AWS CloudWatch Logs

我们使用AWS CloudWatch Logs调试在AWS上运行的服务,我们日志中的许多属性名称使用冒号作为分隔符,但我们无法弄清楚如何使用这些属性名称进行搜索.

这是一个日志的例子:

{
  "Counts": {
    "RouteHandler:GetCookies": {
      "value": 1
    }
  }
}
Run Code Online (Sandbox Code Playgroud)

使用控制台,我尝试过这样的查询:

{ $.Counts.RouteHandler:GetCookies.value = 1 }
Run Code Online (Sandbox Code Playgroud)

当然,特殊字符通常在查询语言中具有特定用途,因此我试图以某种方式逃避它.

{ $.Counts.RouteHandler\:GetCookies.value = 1 }
// JavaScript inspired
{ $.Counts["RouteHandler:GetCookies"].value = 1 }
// Special character removed
{ $.Counts.RouteHandlerGetCookies.value = 1 }
Run Code Online (Sandbox Code Playgroud)

没有什么我能想出来的工作,也许这是不可能的.这些文档似乎没有解决这种情况.

任何人都知道如何搜索属性包含特殊字符的JSON日志,或者知道这是否支持?

在新的工作中,我们将使用不同的分隔符,但我们不会回去并在任何地方进行更改.

amazon-web-services amazon-cloudwatch amazon-cloudwatchlogs

10
推荐指数
2
解决办法
1602
查看次数

如何在Angular中测试渲染速度

我们正在构建一个Angular应用程序,我们正试图弄清楚如何获得渲染各种页面需要多长时间的基准.我在performance.timing 这里读过,但这似乎只适用于非单页面应用程序,因为当我在应用程序中导航到新视图时,时序数字不会改变.

理想情况下,我们可以插入一些代码来获取各种视图的渲染时间,并将它们发布到我们的Big Query服务中.

关于如何在Angular应用程序中获取视图的时序信息的任何想法?

编辑:

更具体地说,您将转到加载大型重复列表的路径(这对于性能而言不是最佳的),并且窗口在实际呈现列表中的项之前有很长的延迟.我们想看看从大空白视图到渲染列表中的项目需要多长时间.

javascript performance performance-testing angularjs

9
推荐指数
2
解决办法
8131
查看次数

Ember模型和SQL - 在服务器上或通过Ember关系连接表?

使用Ember,您可以找到许多关于构建博客和列表的教程,但似乎没有太多需要更复杂模型的东西.我正在寻找更多指导,以确定是否有最佳实践来处理Ember中的复杂规范化数据.

例如,我正在研究一个酒窖应用程序,我正在使用8个不同的表来模拟瓶装葡萄酒(尽管细节并不重要):

wines
categories
bottle_varietals
wine_varietals
producers
appellations
regions
countries
Run Code Online (Sandbox Code Playgroud)

为了展示葡萄酒瓶,我需要加入所有这些数据.我看到两种方法:

  1. 在服务器端进行连接,并将一包葡萄酒瓶发送到您只有wine_bottle模型的客户端.
  2. 创建对应于每个表8个灰烬模型,并建立与Ember的关系hasMany,belongsTo等等.

这两种方式似乎都是可行的,并且它们有其优点和缺点.鉴于Ember是一个"自以为是"的框架,在这个框架上是否存在'Ember Way',或者这仅仅归结为开发人员的口味?

javascript mysql models node.js ember.js

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

Web组件与小部件:有区别吗?

我最近开始使用Ember.js,我已经了解了Web组件.我之前使用过jQuery UI小部件,它们看起来是一样的.Web组件和窗口小部件之间是否存在差异,或者它们或多或少相同?

html javascript widget web-component ember.js

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

计算每个文档的子文档

我试图只计算每个文档在Mongo中的子文档。

使用可以很容易地获得集合中的文档db.users.find().length()。我想做类似的事情db.users.projects.find().length()。我怎样才能做到这一点?

编辑:

我想要的结果是知道每个用户有多少个项目……类似:

{_id: 123, projects: 4}

用户文档示例:

{
   _id:{$oid: 123},
   username: johnsmith,
   projects: [{$oid: 456}, {$oid: 789}]
}
Run Code Online (Sandbox Code Playgroud)

mongodb mongodb-query

4
推荐指数
2
解决办法
4588
查看次数