Каковы мои технические требования? - PullRequest
0 голосов
/ 01 мая 2018

Моя цель - создать приложение, которое может динамически отслеживать мой портфель акций (на самом деле опционы на акции). Итак, я строю свою бизнес-логику в подходе TDD с использованием C # на ядре .NET. Я не особо задумывался об интерфейсе, потому что верно следующее:

1) Мой брокер - ETrade, поэтому мне придется проверять подлинность и использовать их api для получения информации о моей позиции

2) Мне нужно, чтобы это приложение запускалось с 9:30 до 16:00 по восточному поясному времени с понедельника по пятницу

Поскольку я близок к завершению своей бизнес-логики 1-го MVP, я сейчас начинаю думать о том, где я могу найти окончательное решение, и поэтому я ищу сообщество для обратной связи.

Я слышал, но не очень хорошо работал с Microservices (AWS, Azure и т. Д.), Поэтому я не уверен, что это направление, в котором я хочу искать. (Кроме того, у меня жесткие временные рамки и я не хочу многому учиться, чтобы развернуть эту штуку - но я открыт для любого решения). За исключением микросервисов и облака я учел следующее:

a) «Я мог запустить программу из консольного приложения»?

(ответ) Мне бы пришлось:

(а) получить выделенный сервер или

(б) постарайся, чтобы я мог оставить ноутбук дома работающим или что-то еще, бла, бла

(заключение) Оба являются вероятными решениями.

b) «Я мог запустить программу как службу Windows»

(ответ) Мне бы пришлось либо

(а) (как указано выше)

(б) (как указано выше)

(заключение) Оба являются вероятными решениями.

c) «Я могу запустить программу как веб-сайт»

(ответ) Мне бы пришлось либо

(а) (как указано выше)

(b) (как указано выше)

(заключение) Оба являются вероятными решениями.

c) «Я мог бы исследовать Облако (Микросервисы)»

(ответ) ??? (заключение)

Итак, в заключение, в основном, учитывая требования времени работы между этими часами, и я хотел бы иметь возможность доступа к приложению из любого интернет-браузера. У меня есть логика, которая должна пинговать различные конечные точки практически каждую минуту в часы работы рынка. Поэтому я не уверен, как бы я справился с этим с помощью веб-приложения, потому что если (случайно) браузер будет закрыт, веб-приложение перестанет работать и, таким образом, победит мои потребности! Облако помогает здесь? Может быть, я должен просто использовать службу Windows и сделать свои журналы доступными в Интернете. Или я развертываю TraderBot в службе Windows, а также создаю веб-приложение для получения информации в реальном времени от службы Windows TraderBot / журналы / и / или БД? Не уверен, но я ценю любые откровенные ответы, которые вы все получили!

1 Ответ

0 голосов
/ 09 мая 2018

Мне действительно нравится соединять технические элементы для решения сложных проблем. Хотя это не так сложно.

  1. Решение 1: на основе облака, в частности на AWS
    Используйте AWS Lambdas (вычисления без сервера), чтобы получить доступ к API, чтобы получить цены или любую информацию, которую вы ищете, и затем сохранить ее в DynamoDb (БД NoSQL). Используйте Правила CloudWatch (задание CRON без сервера), чтобы периодически вызывать лямбду.
    Затем SPA одностраничное приложение для просмотра значений, хранящихся в DynamoDb. Это может быть статический веб-сайт, также размещенный на S3 .
    Или
    Мобильное приложение также может служить для просмотра данных из DynamoDb.

  2. Решение 2. Только для мобильных устройств
    Почему бы не создать приложение исключительно для мобильных устройств, таких как iOS или Android. Отметьте здесь Я запрограммировал одно приложение, чтобы отслеживать стоимость различных alt-монет разных бирж.
    С приложением только для мобильных устройств ваше приложение будет периодически получать цены (с помощью API сигналов тревоги в случае Android) и будет хранить его в своей локальной базе данных (SQLite в случае Android), а затем вы сможете в любое время открыть приложение, чтобы увидеть последние значения.

Можно подумать и о других решениях, но я думаю, что выше, это хороший подход для решения этой проблемы, вместо того, чтобы покупать VPS или работать на ноутбуке все 24X7 # ThinkCloud

PS: только первоначальные мысли, попросите больше, чтобы улучшить решение ...:)

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