Могут ли лямбда-вызовы AWS быть синхронными? - PullRequest
0 голосов
/ 28 августа 2018

Возникли проблемы с использованием лямбда-функций в AWS. Я хотел бы знать, могу ли я вызывать функции AWS Lambda синхронно а не асинхронно. Сейчас функции AWS Lambda работают непрерывно, и я хотел бы, чтобы их можно было остановить. как они используют мои кредиты. Любая помощь будет оценена.

Спасибо

вот эти коды:

Client.GetObjectAsync(BucketName, FileName, (responseObj) =>
        {
        //print("about to get json");

            if (responseObj.Exception == null) print("exception not null"); else print(responseObj.Exception.Message);
            string data = null;
            var resp = responseObj.Response;
            if (resp == null)
            {
            //print("null");
            }
            else
            {
            //print("not null");
            }
        //print(resp.ContentLength);

            if (resp.ResponseStream != null)
            {
                print("before StreamReader");


                using (StreamReader reader = new StreamReader(resp.ResponseStream))
                {
                //print("In StreamReader");
                data = reader.ReadToEnd();
                //print("got json");
                }



            /**
            string fp = Application.dataPath + "\\unitydata.txt";
            using (var fs = System.IO.File.Create(@fp))
            {
                byte[] buffer = new byte[81920];
                int count;
                while ((count = resp.ResponseStream.Read(buffer, 0, buffer.Length)) != 0)
                    fs.Write(buffer, 0, count);
                fs.Flush();
            }
            **/

           // }
           // else
           // {
           //     print("response is null");
           // }
           // print("JSON CONTENT: " + data);
           // float[] fres = parseVectors(data);
           // for (int i = 0; i < fres.Length; i++) print(fres[i] + " ");
           // responseObj.ToString();
       // });

Ответы [ 2 ]

0 голосов
/ 29 августа 2018

Я хотел бы знать, могу ли я вызывать функции AWS Lambda синхронно, а не асинхронно.

Выполнение вызова в AWS Lambda всегда происходит синхронно. Внутри лямбда ты делать асинхронные вызовы, но вызов лямбда является синхронным и при вызов его вернет результат или потерпит неудачу в максимально настроенном время.

Сейчас функции AWS Lambda работают непрерывно, и я хотел бы найти способ их остановить, поскольку они используют мои кредиты.

Вам будет выставлен счет только за время его использования. Если вы не используете его, вы не будете платить.

0 голосов
/ 29 августа 2018

Функция AWS Lambda имеет время, превышающее 5 мин. Поскольку вы заявили, что ваша лямбда-функция работает постоянно, возможно ли, чтобы ваш клиентский код выполнял эти вызовы за кулисами?

Во-вторых, пожалуйста, опубликуйте детали вашего стека технологий приложений. Я вижу, что вы используете C # и AWS SDK для .NET. Вы пишете консольное приложение и пытаетесь выполнить несколько операций на S3?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...