2009-05-07 2 views
2

Я застрял при принятии решения программирования,Программирование решения Java или .Net, БД или нет дб

Я разработчик .Net, я в настоящее время создания приложения для моего клиента, который получает данные от третьего лица приложения, он должен затем выполнить операции над значениями и отправить их в webservice/servlet, который затем отображает данные на веб-страницу. Улов здесь состоит в том, что данные, отправляемые пользователю (параметры голосования, счет и т. д.) на веб-странице, должны обновляются каждые 2 секунд на последней,

у меня есть много путаницы делает какое-то решение,

1) d ata provider (стороннее приложение) рекомендует Java, но не применяет его, хотя я хорошо разбираюсь в .Net (C#), вы бы рекомендовали создать приложение на C# или Java. с точки зрения оптимизации и скорости, что было бы лучше? что вы, ребята, рекомендуете?

2) aftr, получающий данные от третьей стороны, у меня и у моего коллеги есть смешанные мысли, я бы предпочел, чтобы как только данные были получены, мы должны записать его в db (так как это всего лишь несколько фиксированных полей, являющихся отправляется каждый раз), а затем получить webservice/servlet для извлечения данных, а затем выполнить вычисления на нем, мое оправдание заключается в том, что мы также будем иметь дорожку и исторические данные и шаблон мышления пользователя, если мы его сохраним, а m, y коллега говорит, что сохранение его в db значительно задержит приложение и что мы должны напрямую опросить данные из приложения, он также считает, что db станет массовым в мгновение ока и медленным, мы попытались сделать это, но это вызывает 8-секундную задержку (по какой-то причине tomcat извлекает данные только после каждых 7 попыток, если его webapp и сохраняет его каждую секунду, если это приложение консоли java.) Мои мысли заключаются в том, что если мы сохраним db d оттуда, мы можем получить консольное приложение для записи в приложение каждую секунду, а затем извлекать данные с помощью webservice каждую секунду или около того в зависимости от того, что мы хотим.

В этом scenerio, что вы, ребята, считаете хорошим подходом, мы должны сохранить db или не сохранить db?

3) Скажите, даже если бы мы сохранили db, считаете ли вы, что использовать berkeley или sqlserver имеют значение? я бы предпочел использовать sqlserver для .net berkeley для java

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

Спасибо за ваше время!

С уважением.

+0

Я понимаю, что SqlServer является РСУБД и беркелем -db нет? –

+0

Да, абсолютно, Berkeley DB не является реляционной системой db. СУРБД богаты и предлагают доступ к высокоуровневым базам данных. Сравнивая Berkeley db с РСУБД, это высокопроизводительная транзакционная библиотека для хранения записей Однако, возможно построить реляционную систему поверх Berkley db. Вот как это делает Mysql. – Mponnada

ответ

5
  1. Вы знаете C#, а затем используйте его. Если нет других ограничений технологий, используйте то, что вы знаете лучше всего.

  2. Не думайте о производительности, пока не попробуете оба сценария. Сделайте доказательство концепции, свой путь и способ своего коллеги, посмотрите различия в производительности и оцените ли отличительные характеристики исторических данных.

  3. Используйте SQL Server для C#. Возможно, вам придется рассмотреть вопрос о лицензировании (вы все равно знаете контекст проекта).

3

Если вам удобно с .NET, зачем вам проводить время с Java? Мои проблемы с Java не имеют отношения к делу, но в любом случае вы будете тратить время на изучение Java, вероятно, попадая в те же подводные камни, с которыми любой начинающий разработчик сталкивается с любым инструментом или технологией.

Я говорю, если вам удобно с .NET, сделайте это в .NET. Конечный результат не будет сильно отличаться, но вы получите его быстрее.

Затем, делая вычисления и используя базу данных как форму «кеша», отличается от сохранения записи трека. Вы можете вернуть результаты из стороннего приложения и сохранить историю в базе данных. Если он слишком медленный, поставьте его в очередь.

1
  1. Используйте язык, на котором вы лучше знаете, если это подходит для вашего клиента.

  2. Попросите вашего клиента, чтобы данные сохранялись, если они не сохраняются. Если вам нужно упорствовать, вы можете сделать это асинхронно, не оказывая влияния на онлайн-обработку.

  3. Я не знаю различий, но ответ зависит от того, что вы хотите делать с постоянными данными (как долго вы хотите его сохранить, вам нужны резервные копии, готовы ли вы заплатить за решение?) ... Итак, если вы знаете, чего вы хотите достичь, вы можете выбрать правильный инструмент, и, возможно, это не будет база данных ...

Смежные вопросы