Действительно ли Google App Engine является правильным для меня?

Думайте о нем этот путь, если необходимо было сделать такой бросок, и затем добавлять объект типа Foo к списку, список строк больше не последователен. Если бы необходимо было выполнить итерации первой ссылки, Вы получили бы исключение броска класса, потому что, как только Вы поражаете экземпляр Foo, Foo не мог быть преобразован в строку!

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

List<object> ol = new List<object>();
List<string> sl;
sl = (List<string>)ol;

я не использовал C# в некоторое время, таким образом, я не знаю, законно ли это, но такой бросок на самом деле (потенциально) полезен. В этом случае Вы идете от более общего класса (объект) к более определенному классу (строка), которая расширяется от общего. Таким образом, если Вы добавляете к списку строк, Вы не нарушаете список объектов.

кто-либо знает или может протестировать, если такой бросок законен в C#?

9
задан Wooble 30 December 2009 в 14:38
поделиться

7 ответов

Если вы планируете создать «огромный» веб-сайт, не используйте App Engine. Просто как тот. App Engine не предназначен для доставки следующего 1000-го веб-сайта.

Позвольте мне также спросить, что вы подразумеваете под словом «огромный», сколько одновременных пользователей? Запросы в секунду? Загрузка БД?

-11
ответ дан 4 December 2019 в 22:28
поделиться

Having developed a smallish site with GAE, I have some thoughts

  • If you mean "huge" like "the next YouTube", then GAE might be a great fit, because of the previously mentioned scaling.

  • If you mean "huge" like "massively complex, with a whole slew of screens, models, and features", then GAE might not be a good fit. Things like unit testing are hard on GAE, and there's not a built-in structure for your app that you'd get with something like (famously) (Ruby on) Rails, or (Python powered) Turbogears.

ie: there is no staging environment: just your development copy of the system and production. This may or may not be a bad thing, depending on your situation.

Additionally, it depends on the other Python modules you intend to pull in: some Python modules just don't run on GAE (because you can't talk to hardware, or because there are just too many files in the package).

Hope this helps

8
ответ дан 4 December 2019 в 22:28
поделиться

Я бы ни о чем не беспокоился. Поиграв некоторое время с Google App Engine, я обнаружил, что он достаточно хорошо масштабируется для больших наборов данных. Если ваши элементы данных большие (например, фотографии), вам потребуется интегрироваться с другой службой для их обработки, но это, вероятно, будет правдой, независимо от того, что с данными такого размера. Кроме того, я обнаружил, что с BigTable относительно легко работать, так как он работал исключительно с реляционными базами данных. Наконец, Django - это несколько скрытая, но замечательная «функция» Google App Engine. Если вы никогда не использовали его, это действительно красивый, элегантный веб-фреймворк, который упрощает множество стандартных задач (здесь приходят на ум формы).

2
ответ дан 4 December 2019 в 22:28
поделиться

использование web2py в Google App Engine - отличная стратегия. Это позволяет вам быстро приступить к работе, и если вы перерастете ограничения GAE, вы можете переместить свое приложение web2py в другое место.

Однако сохранение этой переносимости означает, что вам следует держаться подальше от продвинутых частей GAE (очереди задач, транзакции, ListProperty и т. Д.).

5
ответ дан 4 December 2019 в 22:28
поделиться

AppEngine использует BigTable как серверную часть хранилища данных. Не пытайтесь написать традиционное приложение на основе реляционной базы данных. BigTable гораздо лучше подходит для использования в качестве высокомасштабируемого хранилища ключей и значений. По возможности избегайте присоединений.

3
ответ дан 4 December 2019 в 22:28
поделиться

Google только что выпустил версию 1.3.0 SDK с поддержкой нового API Blobstore для хранения файлов размером до 50 МБ. См. Сообщение « Выпущен App Engine SDK 1.3.0, включающий поддержку больших пользовательских загрузок ».

1
ответ дан 4 December 2019 в 22:28
поделиться

А как же Google Wave? Она построена на аппаратном обеспечении, и однажды живой, в режиме реального времени переводной чат достигает корпоративного сектора ... Я видел, как она попала на 1000 место... Но опять же, это внутренний проект, который делает специальные вещи, которые другие приложения appengine не могут..... Как висячие нити, я думаю... И все остальное, что есть у Вэйв под капотом...

0
ответ дан 4 December 2019 в 22:28
поделиться
Другие вопросы по тегам:

Похожие вопросы: