Производительность в отношении Facebook C # SDK и Javascript SDK - PullRequest
1 голос
/ 04 января 2011

Я запускаю новое приложение на холсте Facebook, чтобы выбрать технологию, которую собираюсь использовать.Я всегда был поклонником платформы .NET, поэтому я настоятельно рассматриваю это для этого приложения.Я думаю, что работа, выполненная в: facebooksdk.codeplex.com

, выглядит очень многообещающей.Но мой вопрос заключается в следующем:

Насколько я понимаю, при использовании такой платформы приложений (или PHP в этом отношении) с Facebook, всякий раз, когда мы обращаемся к API, чтобы выполнить какое-либо действие (скажем, опубликовать впоток), поток будет следующим:

- пользователь инициирует запрос, который направлен на сервер ASP.NET

- сервер ASP.NET делает вызов API Facebook

таким образом, задействовано всего три машины.

Почему бы вместо этого не использовать Javascript SDK?

http://developers.facebook.com/docs/reference/javascript/FB.api

"Вызовы на стороне сервера доступны черезJavaScript SDK, позволяющий создавать многофункциональные приложения, которые могут выполнять вызовы API на серверах Facebook непосредственно из браузера пользователя. Это может повысить производительность во многих сценариях по сравнению со всеми вызовами с сервера. Это также может помочь уменьшить или устранитьнеобходимость прокси-запросов на ваши собственные серверы, освобождая их для других целей. "

Так что, как я вижу, я бы взял мои ASP.NETиз-за неравенства число машин уменьшается с трех до двух.Мой сервер менее загружен, и пользователь (вероятно) получает более высокую производительность.

Правильно ли я понимаю, что с помощью SDK Facebook C # у нас есть сценарий с тремя машинами вместо сценария с двумя машинами API JS?

Теперь я понимаю, что платформа веб-сервера, такая как ASP.NET, предлагает большие преимущества, такие как отличные инструменты разработки, инфраструктура для обратных передач и т. Д., Но у меня есть неполная картина здесь?Имеет ли смысл использовать платформу C #, но все же полагаться на javascript sdk для большинства вызовов API FB?Когда каждый должен использовать каждый?

Best,

-Ben

1 Ответ

4 голосов
/ 04 января 2011

Вы должны обязательно использовать Javascript SDK, когда можете.Вы получите гораздо лучшую производительность, и ваше приложение будет более масштабируемым.Тем не менее, производительность не всегда является единственным фактором.Некоторые вещи просто проще на сервере.Кроме того, многие приложения выполняют офлайн (или отложенную обработку) пользовательских данных, которые не связаны с прямым взаимодействием.

Я не думаю, что есть правильное или неправильное место для использования каждого SDK, но ониопределенно оба имеют свое место в хорошо построенном приложении Facebook.Мой совет - использовать то, что проще для каждой задачи.По мере роста вашего приложения вы узнаете, где находятся узкие места и где вам нужно действительно выжать, что требуется дополнительный бит производительности, либо перемещая материал на клиент (Javascript SDK), либо перемещая материал для обработки в фоновом режиме (Facebook C #)SDK).

Как правило, мы используем Javascript SDK для некоторых вещей аутентификации и для большинства вещей с пользовательским интерфейсом.Единственное исключение из UI - когда мы действительно обеспокоены обработкой ошибок.Обрабатывать ошибки на сервере намного проще, чем с помощью Javascript SDK.Ошибки, о которых я говорю, это такие вещи, как ошибки в facebook или просто общее время простоя Facebook.

Как я уже говорил, в начале просто используйте оба варианта и делайте все, что проще для каждой задачи.

...