Могу ли я регистрировать задания в системе с распределенной архитектурой AWS на основе .NET с точностью до миллисекунды? - PullRequest
1 голос
/ 02 февраля 2012

Я строю сложную систему сервер / работник на Amazon Web Services. Постоянные данные хранятся в Amazon SimpleDB. Задания передаются между компьютерами через Amazon SQS. Двоичные данные упоминаются в сообщениях SQS и сохраняются через S3.

Я хотел бы найти или создать архитектуру ведения журналов, которая может отслеживать одно задание в нескольких экземплярах EC2, чтобы я мог искать проблемы и неэффективность при прохождении заданий через эту систему. Я строю для скорости, и мне нужна точность в миллисекундах.

Например, я бы хотел увидеть что-то вроде:

Job 243439:
Server Initialize API process: 0ms
Server Read job data from SimpleDb: 60ms
Server Create job on simpleDB:    86ms
Server write data to S3:    92ms
Server Write SQS message:    98ms
Worker picks up SQS message: 400ms
Worker reads data from S3:  590ms
Worker finished job:   650ms
Worker writes data to S3: 700ms
Worker writes message to SQS: 750ms

Таким образом, я мог бы посмотреть на отдельную работу, посмотреть пройденный журнал событий и определить, где его можно улучшить по пути.

В настоящее время я использую .NET для всех процессов, но хотел бы построить это более независимым способом, чтобы рабочие роли могли быть в Linux и при этом регистрироваться одинаково.

Есть идеи, как лучше всего с этим справиться?

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