小编cvo*_*igt的帖子

在AWS Lambda中存储单个值的最佳实践

我有一个正在生成并返回值的Lambda.此值可能会过期.因此我需要在返回之前检查值的有效性.由于生成非常昂贵(取自另一个服务),我想以某种方式存储该值.

存储这两个值(时间戳和相应值)的最佳实践是什么?

  • DynamoDB,但使用2个值的数据库服务似乎是很多开销.永远不会有更多的物品; 相同的条目只会更新.
  • 我想过S3,但是这也意味着创建一个S3-Bucket并存储一个包含信息的对象,仅用于这两个值(但可能是最"瘦"的方式?)
  • 很想更新Lambdas配置以更新环境变量(但即使这是可能的,它可能没有最佳实践?!也不确定与Lambda运行时的不一致...)

什么是最佳做法?什么是性能方面?

amazon-s3 amazon-web-services amazon-dynamodb aws-lambda serverless

8
推荐指数
2
解决办法
2650
查看次数

的getElementsByTagName(标签).长度

我试图在<li>-Listing中计算-Elements <ul>.我希望它能像这样工作:

(JavaScript):

var ul = document.getElementById('listing');
function countLi(){
    alert("There are "+ul.getElementsByTagName('li').length+" Li-Elements in this Documnet!");
}
Run Code Online (Sandbox Code Playgroud)

(HTML):

<input type="button" onclick="countLi()" value="Count the Li's!"/>
<ul id="listing">
    <li>one</li>
    <li>two</li>
    <li>three</li>
</ul>?
Run Code Online (Sandbox Code Playgroud)

它告诉我,"ul为null".那我的错在哪里?

亲切的问候,vogti

编辑:啊,是的.我为你做了一个小提琴.

javascript html5 dom

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

AWS S3使用强制内容-md5预签名URL

我正在尝试将S3的预签名URL与强制使用的Content-MD5一起使用.因此,我基本上试图效仿他们的文档.显然我做错了什么.

这是我尝试上传的文件的校验和:

? md5 testfile.txt
MD5 (testfile.txt) = ce0a4a83c88c2e7562968f03076ae62f
Run Code Online (Sandbox Code Playgroud)

这是代码:

func main() {

    sess, err := session.NewSession(&aws.Config{
        Region: aws.String("eu-central-1")},
    )

    svc := s3.New(sess)

    resp, _ := svc.PutObjectRequest(&s3.PutObjectInput{
        Bucket: aws.String("bucket"),
        Key:    aws.String("testfile.txt"),
    })

    md5 := "ce0a4a83c88c2e7562968f03076ae62f" // hard coded & pasted from "$ md5 testfile.txt"
    md5s := base64.StdEncoding.EncodeToString([]byte(md5))

    resp.HTTPRequest.Header.Set("Content-MD5", md5s)

    url, err := resp.Presign(15 * time.Minute)
    if err != nil {
        fmt.Println("error presigning request", err)
        return
    }

    fmt.Printf("curl -XPUT -H \"Content-MD5: %s\" %s --upload-file %s\n\n", md5s, url, "testfile.txt")
} …
Run Code Online (Sandbox Code Playgroud)

amazon-s3 go aws-sdk aws-sdk-go

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

等到数据库查询完成

我很确定我的问题与 Koa 或 SQLite3 的使用没有直接关系,而是与 JavaScript 的一般使用有关。

我有以下几点server.js

var http = require('http');
var koa = require('koa');
var route = require('koa-route');
var app = koa();
var sqlite3 = require('sqlite3').verbose();
var dbFile = 'coc.db';
var db = new sqlite3.Database(dbFile);

var members = [];

var printMembers = function(name){

        db.each(query, [name], function(err, row){
            members.push(row);
        });

    return members;

}


app.use(route.get('/', index));


function *index() {

    this.body = printMembers("name");

}


app.listen(8008);
console.log('Koa listening on port 8008');
Run Code Online (Sandbox Code Playgroud)

当我启动服务器并localhost:8008第一次访问时,我只得到一个空数组 ( []) 作为响应。这是变量的内容members。当我重新加载时,正如预期的那样,我得到了我的 …

javascript sqlite koa

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